Tutorial: Cryo_fit2: Fit Biomolecules into Cryo-EM Maps using dynamics (commandline)

Contents

Note

cryo_fit2 is under active development.

Please consider to use cryo_fit1 instead.

Overview

This tutorial will show you how to fit biomolecule atomic structures into cryo-EM maps using dynamics simulation with PHENIX commandline

Theory for cryo_fit2

See the theory notes for cryo_fit2

Input

<initial_model>, <target_map> and <map resolution>

The <initial_model> is a guide or template structure (.cif/mmCIF/.pdb) that is close to a <target_map> (.ccp4/.map) structurally.

A user can use map_to_model to build the atomic model.

A user can use either dock_in_map or UCSF chimera (Tools->Volume Data->Fit in Map) to roughly place the model into a map.

How to run

At command line:

% phenix.cryo_fit2 <initial_model> <target_map> <map resolution in Angstrom>

Tutorial command:

% Go to <user phenix>/modules/cryo_fit2/tutorial

% source run_me.sh

% (run_me.sh is phenix.cryo_fit2 input/tutorial_cryo_fit2_model.pdb
  input/tutorial_cryo_fit2_map.ccp4 resolution=4)

Output as a static structure

A final cryo_fitted structure: output/cryo_fit2_fitted.pdb

Output as a movie

Structures of intermediate steps that can be animated with pymol play button: output/all_states.pdb

Open this pdb file with pymol, then click play button (triangle at right bottom) plays the movie.

(below difference is observed with MacPymol ver. 2.2.2)

If a user dragged all_states.pdb into pymol after opening it, the biomolecule structure looks simplified and movie playing is fast.

If a user dragged all_states.pdb into pymol icon, pymol opens along with all_states.pdb, the biomolecule structure is more detailed, and movie playing is slow.

How to show map contour as mesh

In pymol commandline:

% load ./user_map.ccp4, map1, 1 , ccp4

% isomesh mesh1, map1, 1.5, (all), 0, 1, 3.0

% cmd.color("blue","mesh1")

Otherwise, use pymol GUI:

% A (action) -> Mesh -> @ Level 3.0

How to save a movie file (confirmed with MacPymol 2.2.2)

As a user is playing a movie (by clicking a bottom right triangle movie playing button),

File -> Export Movie As -> MPEG

Options

All options will be used as default if unspecified. e.g. secondary_structure_enabled =True

List of most useful options

Option Default value Description of inputs and uses
resolution none A cryo-EM map resolution (angstrom) It needs to be specified by a user.
explore False If True, cryo_fit2 will use maximum number of multiple cores to explore the most optimal MD parameters. However, this exploration requires a lot of computing power (e.g. > 128 GB memory, > 20 cores). Exploring at a macbook pro (16 GB memory, 2 cores) crashed
start_temperature 300 Start temperature (Kelvin) for molecular dynamics simulation
final_temperature 0 Final temperature (Kelvin) for molecular dynamics simulation
MD_in_each_epoch 4 An epoch here is different from the one in deep learning. Here, the epoch is each iteration of MD from start_temperature to final_temperature.
number_of_steps 100 Number of MD simulation steps at each temperature
map_weight automatically optimized A weight toward cryo-EM map
weight_multiply 1 Cryo_fit2 will multiply cryo-EM map weight by this much Usually a small molecule (a helix) requires only 1. However, a large molecule needs a larger value (e.g. 10~50).
secondary_structure.en abled True Most MD simulations tend to break secondary structure. Therefore, turning on this option is recommended. If HELIX/SHEET records are present in supplied .pdb file, automatic search of the existing secondary structures in the given input pdb file will not be executed.
secondary_structure.pr otein.remove_outliers True False may be useful for very poor low-resolution structures by ignoring some hydrogen "bond" if it exceed certain distance threshold
output_dir output Output folder name prefix
keep_progress_on_screen True If True, temp=xx dist_moved=xx angles=xx bonds=xx is shown on screen rather than cryo_fit2.log
keep_origin True If True, write out model with origin in original location. If False, shift map origin to (0,0,0)