[phenixbb] refinement at 3.7A
PAfonine at lbl.gov
Fri Apr 9 12:01:24 PDT 2010
> What is low res?
you may consider having a look at discussion about resolution limits
Acta Cryst. (2009). D65, 1283-1291.
These are good (in my opinion) publications about low resolution
refinement challenges. Example of some of them:
Acta Cryst. (2006). D62, 923-932
Considerations for the refinement of low-resolution crystal structures
B. DeLaBarre and A. T. Brunger
Low-Resolution Crystallography Is Coming of Age
Structure, Volume 13, Issue 2, Pages 171-172
Acta Cryst. (2009). D65, 121-127
Model-building strategies for low-resolution X-ray crystallographic data
A. M. Karmali, T. L. Blundell and N. Furnham
G.F.Schroeder, M.Levitt, A.T.Brunger,
Super-resolution biomolecular crystallography with low-resolution data.
Nature, doi:10.1038/nature08892 (2010).
> at what resolution should we use
> only rigid body refinement or can we use minimization as well?
Let's try avoid mixing unmixable first : model parameterization (rigid
body, individual coordinates, etc.) and optimization algorithms
(minimization, simulated annealing, etc.).
> In my case, i have a 2.7A and a 3.7A structures,
At this resolution you definitely refine individual coordinates.
Depending on how far your model is from the final one, you can use SA
(if the model is still poor) or gradient-driven minimization (if the
model quality is decent) as optimization choices.
Use NCS if available, but exercise care when selecting NCS related
groups. Phenix.refine can select NCS groups automatically, but it is
always a good idea to review the automatic choice manually. You can also
try refinement without using NCS but with tighter restraints - I've seen
cases when it works much better.
If you observe overfitting - optimize X-ray/restraints target weights
(use optimize_wxc=true to do it automatically, or do it manually by
playing with wxc_scale parameter). Also, it is a good idea to run a
final refinement run (before PDB deposition) with weights optimization
Use local real-space refinement (fix_rotamers=true option; more details:
- ADPs (B-factors):
Refine individual ADPs. Use TLS (phenix.refine does combined individual
ADP + TLS refinement, which is the best option most of the time).
Carefully select TLS groups. Here is how I typically use TLSMD (copy
from one of my previous posts):
1. Reset all B-factors to a average value:
phenix.pdbtools model.pdb set_b_iso=25
If model.pdb has anisotropic atoms (ANISOU records), then you need to
convert them to isotropic: "convert_to_iso=true"
2. Refine group ADP only:
phenix.refine model_all_B_25.pdb data.mtz strategy=group_adp
3. Submit the refined model to TLSMD
4. Discard the refined model (the one obtained at step #2).
5. Use selections for TLS groups in subsequent refinement.
If you turn on NCS restraints, they will be applied to ADP as well (to
residual B-factors, not total).
Sometimes, very rarely, if the data is horribly incomplete and
data-to-parameters ratio is bad, and tightening ADB restraints doesn't
help, the group B-factor refinement (with one or two refinable isotropic
ADP per residue) is an option to try. In my experience I had to do this
in a refinement against neutron data.
Try above guidelines for 2.7A first (except probably "fix_rotamers"),
and if it doesn't work, then:
Try torsion angle parameterization (constrained rigid body), and SA is
the only working optimization protocol available in phenix.refine for
this type of parameterization. Try secondary structure restraints if you
see that secondary structure gets distorted during refinement.
- ADP refinement:
try group ADP refinement (in combination with TLS) instead of highly
If 3.7A structure is an analog of 2.7A structure, then you may use a
higher resolution structure as a source of restrains for low resolution
one (I think this option will be available soon in phenix.refine - check
with Jeff Headd who is working on it).
If you have high-order NCS, use "thin-shells" algorithm to assign free-R
flags (available in PHENIX). This is not done by default - you need to
turn this flag on yourself.
Did you check for twinning?
Optimize mask calculation (main.optimize_mask=True option). This may
give you 1-3% better R-factor at low resolution. The next version of
PHENIX will do it automatically.
> If i do a simple rigid body refinement, I have R=32.1, Rfree=35.8. If i
> use individual site refinement, i have R=30.7, Rfree=35.8. (both with
> group ADP, TLS and NCS).
Here is how your numbers compare to the numbers for structures in PDB at
phenix.r_factor_statistics 3.7 left_offset=0.2 right_offset=0.2 n_bins=5
Histogram of Rwork for models in PDB at resolution 3.50-3.90 A:
0.168 - 0.209 : 8
0.209 - 0.250 : 37
0.250 - 0.291 : 65
0.291 - 0.332 : 36 <<< your model
0.332 - 0.373 : 13
Histogram of Rfree for models in PDB at resolution 3.50-3.90 A:
0.184 - 0.231 : 2
0.231 - 0.278 : 23
0.278 - 0.324 : 72
0.324 - 0.371 : 51 <<< your model
0.371 - 0.418 : 11
Histogram of Rfree-Rwork for all model in PDB at resolution 3.50-3.90 A:
0.002 - 0.020 : 24
0.020 - 0.038 : 42
0.038 - 0.056 : 47 <<< your model
0.056 - 0.075 : 35
0.075 - 0.093 : 11
Number of structures considered: 159
Doesn't look too bad I would say.
> Basically, could you update me on what's today's dogma on what type of
> refinement we should use at what resolution?
No dogma. Try a few possible refinement strategies given the resolution
and model quality and see which one works best. This is more robust and
time-efficient than shaking the air with speculations about what could
be used and why. Once you have found the best refinement protocol for
your particular case then you can spend some time reviewing what you
have tried and why one strategy worked better than the other. Typically,
you need to try 3-5 refinement protocols which is not a big deal given
the speed of today's computers.
More information about the phenixbb