-- move to back
The linear gap penalty function for inserting a gap in block 1 of structures is: where and are the usual gap opening and extension penalties, is gap length, and is a function that is at least 1, but can be larger to make gap opening more difficult in the following circumstances: between two consecutive (i.e., ) helical positions, two consecutive -strand positions, two consecutive buried positions, or two consecutive positions where the mainchain is locally straight. This function is , is the fraction of helical residues at position in block 1, is the fraction of -strand residues at position in block 1, is the average relative sidechain buriedness of residues at position in block 1, and is the average straightness of residues at position in block 1. See Section 2.3.17 for the definition of these features. The original straightness is modified here by assigning maximal straightness of 1 to all residues in a helix or a -strand.
The linear gap penalty function for opening a gap in block 2 of sequences is: where is a function that is at least 1, but can be larger to make the gap opening in block 2 more difficult in the following circumstances: when the first gap position is aligned with a helical residue, a -strand residue, a buried residue, extended mainchain, or when the whole gap in block 2 is spanned by two residues in block 1 that are far apart in space. This function is . is the distance between the two atoms spanning the gap, averaged over all structures in block 1 and is the distance that is small enough to correspond to no increase in the opening gap penalty (e.g., 8.6).
When FIT is off, no alignment is done and the routine returns only the average structural information, which can be written out by the WRITE_ALIGNMENT command.
# Demonstrating ALIGN2D, aligning with variable gap penalty SET OUTPUT_CONTROL = 1 1 1 1 1 READ_TOPOLOGY FILE = '$(LIB)/top_heav.lib' # Read aligned structure(s): READ_ALIGNMENT FILE = 'toxin.ali', ALIGN_CODES = '2ctx' # READ_ALIGNMENT FILE = 'toxin.ali', ALIGN_CODES = '2ctx' '2abx' SET ADD_SEQUENCE = on, ALIGN_BLOCK = NUMB_OF_SEQUENCES # Read aligned sequence(s): READ_ALIGNMENT FILE = 'toxin.ali', ALIGN_CODES = ALIGN_CODES '1nbt' # Structure sensitive variable gap penalty sequence-sequence alignment: SET OVERHANG = 0 # SET RR_FILE = '$(LIB)/id.sim.mat' SET GAP_PENALTIES_1D = -450 0 SET GAP_PENALTIES_2D = 0.35 1.2 0.9 1.2 0.6 8.6 1.2 0.0 ALIGN2D WRITE_ALIGNMENT FILE = 'align2d.ali', ALIGNMENT_FORMAT = 'PIR', WRITE_ALIGNMENT FILE = 'align2d.pap', ALIGNMENT_FORMAT = 'PAP', ; ALIGNMENT_FEATURES='INDICES HELIX BETA STRAIGHTNESS ACCESSIBILITY CONSERVATION' CHECK_ALIGNMENT # Color the first template structure according to gaps in alignment: READ_ALIGNMENT FILE = 'align2d.ali', ALIGN_CODES = '2ctx' '1nbt', ; ALIGNMENT_FORMAT = 'PIR', ADD_SEQUENCE = off, REMOVE_GAPS = on READ_MODEL MODEL_SEGMENT = '2ctx', FILE = '2ctx' COLOR_ALN_MODEL WRITE_MODEL FILE = '2ctx.aln.pdb' # Color the first template structure according to secondary structure: WRITE_DATA OUTPUT = 'SSM BISO_SSM', FILE = '2ctx' WRITE_MODEL FILE = '2ctx.ssm.pdb' # Superpose the target structure onto the first template: READ_MODEL2 FILE = '1nbt.pdb', MODEL2_SEGMENT = '1nbt' '1nbt' PICK_ATOMS ATOM_TYPES = 'CA' SUPERPOSE WRITE_MODEL2 FILE = '1nbt.fit.pdb'