Model superposition and morphing using secondary structure matching (SSM)
Author(s)
- superpose_and_morph: Tom Terwilliger
Purpose
Superpose moving model on fixed model, then optionally morph the moving
model to be similar to the fixed model and trim it back to the parts that
match.
Usage
How superpose_and_morph works:
superpose_and_morph uses a combination of sequence-based and SSM-based
(secondary structure matching) to superimpose two models. The sequence-based
matching is the same as in phenix.superpose_pdbs. The SSM matching is the
same as in phenix.search_and_morph. The SSM matching consists
of identifying secondary structure in the two models, indexing all pairs of
secondary structure elements, and finding sets of matching pairs in the
two structures. Normally the basic unit of a match is a set of three pairs
of secondary structure elements (they can be overlapping) with the same
spatial arrangement in the two structures. Such a match is called a triple
in superpose_and_morph.
A matching triples yields a unique orientation of the moving model. Matching
triples are grouped into sets in which all the triples yield nearly the same
orientation. Then the transformations suggested by the largest groups are
each tested by using them to superimpose the moving model on the fixed model
and noting the number of residues that superimpose.
The best-fitting superimposed moving models are then (optionally) morphed by
calculation of a real-space distortion field that changes over a typical
distance of about 10 A (set by the parameter distortion_field_length).
Finally (optionally) the moving models are trimmed to remove
segments that are very different from the fixed model.
Options
SSM match to map. You can supply a map and specify ssm_match_to_map=True.
The tool will search for helices and strands in the map and generate a
target helices_strands model. Then a brute force SSM matching of your
moving model to the helices_strands model is carried out and matches are
scored with map-model correlation. This option can also be carried out
with the dock_in_map tool.
Note this option does not support trimming or morphing.
Brute force SSM. You can supply a target model that has helices and strands.
Helices and strands in your moving model will be matched to those in the
target model to superpose it. You can also supply a map_file and specify
score_superpose_brute_force_with_cc if you wish.
Note this option does not support trimming or morphing.
Examples
Standard run of superpose_and_morph:
Running superpose_and_morph is easy. From the command-line you can type:
phenix.superpose_and_morph fixed_model=fixed_model.pdb \
moving_model=moving_model.pdb
This will superimpose moving_model.pdb on fixed_model.pdb, morph it (gradual
adjustment of atomic positions with location along the chain and in space),
and trim moving_model back to the region where they are similar.
To superpose a model on a map you can say:
phenix.superpose_and_morph map_file=map.ccp4 moving_model=moving_model.pdb
This will find helices and strands in map.ccp4 and superpose moving_model.pdb
on those secondary structure elements.
Possible Problems
Specific limitations and problems:
Literature
Additional information
List of all available keywords
- job_title = None Job title in PHENIX GUI, not used on command line
- input_files
- fixed_model = None Input fixed PDB file
- fixed_selection = None If specified, only include selected part of fixed model
- moving_model = None Input moving PDB file. Model to superpose on fixed_model
- moving_selection = None If specified, only include selected part of moving model
- map_file = None File with CCP4-style map for brute_force superposition only
- only_include_first_chain = False Only use first chain in each input model
- output_files
- helices_strands_model = 'helices_strands.pdb' Helices-strands model
- superposed_model = None Output file with superposed moving model
- crystal_info
- resolution = None Resolution. Will be truncated to minimum_working_resolution if finer than that
- minimum_working_resolution = 3 Working High-resolution limit. Resolution will be truncated to this value
- wrapping = False Map_file is a crystal
- superpose_and_morph
- superpose = True Superpose moving model on fixed model
- morph = True Morph moving model after superposition
- trim = True Trim moving model after morphing
- ssm_match_to_map = False SSM match to helices/strands from map
- superpose_brute_force = False Use brute force method to superpose
- score_superpose_brute_force_with_cc = None Use cc scoring in brute force method (requires map file)
- ok_brute_force_cc = 0.25 OK value for brute force cc (stop looking if achieved)
- shift_field_distance = None Shift field distance. Distance over which morphing leaves model mostly the same. Over longer distances morphing changes model. Default is 10 A.
- good_enough_fraction = 0.9 Good enough fraction. If this much of model is found with sequence-based search skip ssm
- starting_distance_cutoff = 2.5 Starting distance cutoff. Try to keep atoms within this distance, but increase if too few are found.
- include_ssm = True Include ssm matching
- include_lsq = True Include lsq matching
- try_lsq_first = True Try lsq matching first if lsq and ssm are both included
- try_with_fragments_if_poor_fit = True Try lsq matching with fragments if no fit obtained
- include_swapped_match = None Try matching fixed to moving if initial match fails
- allow_reverse_connectivity = None Allow match to reversed model
- direct_morph = False Directly morph moving model onto fixed model. Requires chain ID and residue numbering to be identical, but fixed_model can have missing residues. Does not allow trimming.
- direct_morph_method = along_chain Choice of method for direct morph: along_chain or in_space
- direct_morph_smoothing_window = 11 Smoothing window for direct morph
- identify_register_shifts = False Identify positions in chains where the register between fixed and moving models changes
- control
- nproc = 1 Number of processors to use. If None, uses all available
- guiGUI-specific parameter required for output directory