Description
The program refines a model into a map. The map can be derived from X-ray or neutron crystallography, or Electron Microscopy, and its quality can vary from good to poor. The program aims at obtaining a model that fits the map as good as possible while posessing a meaningful geometry (no validation outliers, such as Ramachandran plot or rotamer outliers).
Contact author
For questions, bug reports, feature requests: Pavel Afonine (PAfonine@lbl.gov)
Features
Fast gradient-driven minimization of combined map and restraints target:
T = Tmap + weight * Trestraints
Local grid search based fit to fix rotamer outliers or poor map-to-model fit
Morphing (map guided rigid body shifts of small continuous model fragments)
Simulated Annealing refinement
Fast and fully automated restraints/map weight optimization
Support for maps having non-zero origin
Custom restraints for selected atoms
Non-standard ligand support (ligand CIF needs to be provided)
GUI
No GUI available yet. Command line only.
Usage examples
Running with default settings:
phenix.real_space_refine model.pdb map.ccp4 resolution=4.2 phenix.real_space_refine model.pdb map_coefficients.mtzThis will do 5 macro-cycles of global real-space refinement with rotamer, Ramachandran plot and C-beta deviations restraints enabled. If NCS is present it will be used as constraints with NCS groups found by the program automatically. Note: if map is used then resolution needs to be provided.
Rotamer, c-beta and Ramachandran plot restraints as well as using NCS constraints are enabled by default. To disable these restraints:
phenix.real_space_refine model.pdb map.mtz ncs_constraints=False \ rotamer_restraints=False ramachandran_restraints=False \ c_beta_restraints=FalseRequest output model to have bond and angle rmsd from ideal not greater than certain values:
phenix.real_space_refine model.pdb map.mtz target_bonds_rmsd=0.01 \ target_angles_rmsd=1.0Specify Fourier map coefficients to use:
phenix.real_space_refine model.pdb map.mtz label='2FOFCWT,PH2FOFCWT'Run refinement using global minimization (default), local rotamer fitting, morphing and simulated annealing:
phenix.real_space_refine model.pdb map.mtz \ run=minimization_global+local_grid_search+morphing+simulated_annealingIf PDB file contains unknown to Phenix ligand a ligand CIF file needs to be provided. Ligand CIF file can be obtained using one of corresponding tools in Phenix (see documentation for more details). Once CIF file is available it can be used as following:
phenix.real_space_refine model.pdb map.mtz ligands.cifGroup ADP (B-factor) refinement. Currently only one option availbale: restrained group ADP refinement with two B-factors per residue (one for main and one for side chains):
phenix.real_space_refine model.pdb map.mtz run=adpRunning rigid-body refinement. Rigid body refinement can be run alone or in combination with other refinement strategies:
phenix.real_space_refine model.pdb map.mtz run=rigid_body rigid.effwhere rigid.eff contains definitions of rigid body groups:
rigid_body { group = chain A group = chain B or chain C group = chain Z }In case NCS is present the program will attempt to determine NCS groups. Automatically found definitions for NCS groups will be printed to the log. It is possible to provide NCS group definitions manually:
phenix.real_space_refine model.pdb map.mtz ncs.effwhere ncs.eff contains definitions of NCS groups:
pdb_interpretation { ncs_group { reference = chain A selection = chain B } ncs_group { reference = chain C or chain D selection = chain X selection = chain Y selection = chain Z } }Use if secondary structure restraints is controlled by secondary_structure.enabled keyword:
phenix.real_space_refine model.pdb map.mtz \ secondary_structure.enabled=TrueIf HELIX/SHEET records are present in PDB file they will be used to construct restraints. Otherwise one of Phenix tools will be run internally to derive secondary structure information from the input model. DNA/RNA specific restraints will be generated internally. For more details on secondary structure restraints see separate documentation referenced below.
Notes
- Generally, refinement with all defaults (example #1 above) is sufficient.
- Secondary structure (SS) restraints strongly rely on correct SS annotation. If SHEET and HELIX records are available in PDB file header then they will be used to enforce SS as defined. Incorrect SHEET and HELIX records are very likely to result in incorrectly refined structure. If SHEET and HELIX records are not present in PDB file header and SS restraints are enabled then KSDSSP tool will be used internally to annotate SS and use it as restraints. The outcome of KSDSSP strongly depends on input model quality: for a model with gross errors SS annotation may be inaccurate resulting in poorly refine model. Please refer to SS documentation for more details.
- Including local fitting, morphing, or simulated annealing ( local_grid_search+morphing+simulated_annealing) into refinement may significantly increase runtime.
- It is possible to extract a box with map and model in it and do refinement inside of that box. To extract box with map and model use phenix.map_box command (see Phenix documentation for more details).
- It is important that information provided in CRYST1 record in PDB file (if provided) matches box information of CCP4 formatted map or crystal symmetry information in MTZ file (whatever used).
- ADP (B-factor) values do not affect the refinement of coordinates.
- It is best to do ADP refinement once the model fits the map well. Normally this would be next to final step.
References
- P.V. Afonine, J.J. Headd, T.C. Terwilliger & P.D. Adams. Computational Crystallography Newsletter (2013). Volume 4, Part 2, 43-44. http://phenix-online.org/newsletter/CCN_2013_07.pdf