Cryo_fit2 FAQ


After cryo_fit2, secondary structures of my input molecule tend to be broken.

  • For example, phenix.cryo_fit2 <user.pdb> <> resolution=<reso> secondary_structure.protein.distance_cut_n_o=4.5
  • For example, phenix.cryo_fit2 <user.pdb> <> resolution=<x> map_weight_multiply=0.2.

How can I provide gaussian filtered maps?

  • For example, flexibly fit with a 4 angstrom filtered map.
  • Then with the resultant atomic model and a 2 angstrom filtered map, do flexible fitting.
  • Then with the resultant atomic model and a non-filtered map, do final flexible fitting.
  • Tools -> Volume Data -> Volume Viewer -> Tools -> Volume Filter -> (Set Width, e.g. 4,2) -> Filter
  • File -> Save map as -> (name a filtered map) -> Save

How to extract a relevant map region?

How to improve initial cc?

  • Note that these options do rigid-body fitting only. Therefore, it is useful for global fitting before cryo_fit2. When overall orientation is already well fitted, these often are not that useful for cryo_fit2.

How to maximize cc?

  • Note that these options (phenix.dock_in_map or UCSF Chimera's 'fit in map') do rigid-body fitting only. Therefore, these are useful as global fitting before cryo_fit2. However, when overall orientation is already well fitted, often these are not that needed before cryo_fit2.
  • enforcing stronger map_weight (higher map_weight_multiply) tends to fit better (obviously).
  • For example, phenix.cryo_fit2 <user.pdb> <> resolution=<x> map_weight_multiply=15
  • At this high map_weight_multiply, the secondary structures may be broken (slightly or seriously) right after cryo_fit2 running.
  • However, phenix.model_idealization which is followed by phenix.real_space_refine perfectly restored ideal secondary structures and fitted very well like

(cc_box: 0.96).

  • However, too high map_weight_multiply tends to misfit totally.
  • For example, phenix.cryo_fit2 <user.pdb> <> resolution=<x> map_weight_multiply=1000 misfitted like

(yellow: after cryo_fit2, green: after cryo_fit2 which is followed by model_idealization).

  • Lowering many sigma values was expected to prevent this situation. However, lowering many sigma values prolongs cryo_fit2 running time too much.
  • Alternatively, remodel loop with phenix.fit_loops helps cc boost.


    (yellow: user input, cc_mask: 0.43, cc_box: 0.58; pink: after fit_loops, cc_mask: 0.47, cc_box: 0.58)


    (green: after fit_loops & cryo_fit2, cc_mask: 0.83, cc_box: 0.90)


    (green: after fit_loops, cryo_fit2, model_idealization & real_space_refine, cc_mask: 0.92, cc_box: 0.97)

  • Alternatively, HE_top_out=True sometimes (not always) boosts cc well even with moderately high map weight (confirmed with 6 benchmark cases).

I have a SAXS based cryo-EM map.

I have a very small molecule to fit.

Is there a command line option for cryo_fit2 processing on multiple cores?

  • For example, phenix.cryo_fit2 nproc=40 model.pdb resolution=3

My input (before cryo_fit2) and output (after cryo_fit2) pdb files have different molecule sizes

Although pdb text files show similar SCALES, input (before cryo_fit2) and output (after cryo_fit2) pdb files may show different molecule sizes in Pymol when Doo Nam used map that was made from phenix.map_box

Troubleshooting is ongoing.

In the meantime, please use UCSF Chimera to visualize bio-molecules instead.

My model is shifted after phenix.model_idealization.

  • For example, phenix.model_idealization <user.pdb> < that was used for cryo_fit2> (resolution information is not required)

"Number of atoms with unknown nonbonded energy type symbols"

"RuntimeError: cctbx Error: Miller index not in structure factor map"

  • For example, Doo Nam uses either EMDB reported resolution (preferred) or phenix.mtriage derived resolution to properly run cryo_fit2.
  • For example, when Doo Nam saw an error with resolution=3, then using resolution=5 often solved the problem.

"Sorry: Crystal symmetry mismatch between different files."

  • "Sorry: Crystal symmetry mismatch between different files.

    (378, 378, 378, 90, 90, 90) P 1

    (103.95, 91.35, 89.25, 90, 90, 90) P 1"

  • The first line (378, ...) shows unit cell parameters from model.

  • The second line (103.95, ...) shows unit cell parameters from map.

  1. Just erase CRYST1 header information from an input pdb file. Then, provide that input file into cryo_fit2.
  • Cryo_fit2 will automatically extract CRYST1 header from map (both from original map and phenix.map_box derived map), and prepend (write at the first line) to the pdb file.
  1. (Alternatively) Just leave correct CRYST1 header only in an input pdb file.
  • For example, when a wrong CRYST1 header exists above a correct CRYST1 header, above error message appeared.

What is the theory behind cryo_fit2?

When cryo_fit1 and cryo_fit2 are useful?

  • For example, cryo_fit can model transition between map conformation 1 and 2.
../images/cryo_fit2_static_vs_dynamic.jpg ../images/cryo_fit2_recommended_programs.jpg

When cryo_fit2 is useful?

When cryo_fit2 is more useful than cryo_fit1?

  • For example,
  • Unlike cryo_fit1 that uses gromacs, cryo_fit2 runs within PHENIX suite. Therefore, it does not require gromacs installation and is faster to execute.

What to do after cryo_fit?