Docking a model into a cryo-EM map with dock_in_map

Author(s)

Purpose

The routine dock_in_map will automatically dock a model or models into a map.

Usage

How dock_in_map works:

Dock-in-map uses both SSM and convolution-based shape searches to find a part of a map that is similar to a model. The key elements of the search are:

An SSM search is carried out first (protein only).  This search is
identical to the ssm_match_to_map option in superpose_models. Helices
and strands are found in the map to create a target model, then a brute
force superposition of helices and strands in the search model to those in
the target model is carried out. Potential superpositions are evaluated
by map-model correlation.

If the SSM search fails to find a satisfactory superposition,
an initial search at lower resolution that focuses on overall shape of the
molecule is carried out.  This allows a quick search but is less
effective if the map contains more than one molecule. If this fails, the
next methods are tried.

Initial search without rotation.  This allows a fast search that can place
a molecule that is just shifted by a translation

Optional initial search based on matching moments of inertia of model and map.
This is also a fast search but requires an accurate map that looks a lot
like the model and does not have extra density.

Full search at the full resolution of the map.  This search can be run on
multiple processors to speed it up.

Uses

You can use dock_in_map to place any number of copies of any number of unique molecules. You specify the molecules one by one:

search_model=model1.pdb
search_model=model2.pdb
search_model=model3.pdb

and the number of copies all at once with:

search_model_copies="3 1 2"

to look for 3 copies of model1.pdb, one of model2.pdb and two of model3.pdb.

You can also use dock_in_map to superimpose density from one map on another map. You just specify the second map with the density:

search_map_file=map_file.ccp4

and dock_in_map will find the density in this map, convert it to a pseudo-model that corresponds to this density, and then search for the pseudo-model just as any other model. When dock_in_map is done finding the pseudo-model, it applies the transformation that it found to the original density in your search_map_file to create a new map that superimposes on the target map.

Examples

Standard run of dock_in_map:

Running dock_in_map is easy. From the command-line you can type:

phenix.dock_in_map 1ss8_A.pdb emd_8750.map resolution=4 nproc=4 \
   pdb_out=placed_model_from_emd_8750.pdb

where 1ss8_A.pdb is the model you would like to place, emd_8750.map is a CCP4, mrc or other related map format, and you specify the nominal resolution of the map and the number of processors to use.

For docking density into a map:

phenix.dock_in_map emd_8750.map density.ccp4 resolution=4
superposed_map_file=density_superposed.ccp4

Possible Problems

If your map is inverted (left-handed), docking and model-building will not work properly. You can often tell if your map is inverted because any helices will be left-handed. If you are unsure, you can run MapBox with invert_hand=True to invert the map and then see if docking works. Note that if your map is inverted, you will want to invert all your maps and start everything from the beginning.

If your map has pseudo-symmetry (like a proteasome) you might need to box one subunit or try ssm_search=False to use a more thorough search in docking.

Specific limitations and problems:

Literature

Additional information

List of all available keywords