Hi Stephen, thanks for your questions! I will try to answer all of them. Please keep asking if something is not clear!
Firstly, is it possible to do 'grouped' adp refinement with 2 groups per residue (like the good old bgroup.inp of CNS)?
Since phenix.refine is constantly growing and getting more and more sophisticated day by day, below I will suppose that you're using the latest version of phenix.refine (http://phenix-online.org/download/cci_apps/). With the latest phenix.refine you can refine your B-factors in many various ways: - individual (isotropic/anisotropic); - grouped (one B per residue or one B per selected part of your model); - using TLS; - any combination of strategies above applied to any selected part of your structure. For the data at around 3.0A I would suggest to: - first try to refine individual Bs (it's not always the case that you need to refine grouped Bs at this resolution); - if you notice the over-fitting, switch to refine 1 B per residue and keep increasing the group untill you're happy with Rfree and Rfree-Rwork; - try to refine group B first and then later on switch to individual; - the BEST and usually most efficient thing to try out is to refine the TLS along with individual or group B-factors. Here are a few examples: 1) Refine only group B (1 per residue, this is default option): % phenix.refine data.hkl model.pdb strategy=group_adp 2) This will refine one isotropic B for chain A and one B for chain B: % phenix.refine data.hkl model.pdb strategy=group_adp one_adp_group_per_residue=false adp.group="chain A" adp.group="chain B" 3) Refine TLS in combination with individual B: % phenix.refine data.hkl model.pdb tls_group_selections strategy=tls+individual_adp here tls_group_selections is the file containing the selections fro TLS groups: refinement.refine.adp { tls = chain A tls = chain B } 4) Same as 3) but refine group B instead of individual: % phenix.refine data.hkl model.pdb tls_group_selections strategy=tls+group_adp 5) Of course, you can combine all the above with refinement of individual coordinates: % phenix.refine data.hkl model.pdb tls_group_selections strategy=tls+individual_sites+individual_adp or rigid bodies: % phenix.refine data.hkl model.pdb tls_group_selections strategy=tls+rigid_body+individual_adp
Secondly, is it possible to specify multiple starting trajectories for simulated annealing? I often find it handy to do 10 runs of simulated annealing and overlay the output co-ordinates to see where the 'wobbly' bits are.
Are you asking for multi-start SA refinement? Indeed, sometimes this is very useful thing to do. If yes, then you can do it as follows: - write a trivial script that does the following (very schematically): for random_seed_i in random_seeds: % phenix.refine data.hkl model.pdb simulated annealing=true main.random_seed=random_seed_i output.prefix=random_seed_i This script loops over list of random seeds, like [152454, 4445715, 1544515, ...], and runs phenix.refine with each of them. This means that SA will start with different velocities. The output model names will have the random seed number (since I specified output.prefix=random_seed_i). Like this you will obtain an ensemble of somehow different models. I would try to do it with 5000K and 10000K temperature (simulated_annealing.start_temperature=10000 ; 5000K is the default)
Lastly, can the latest version of phenix.refine do SA omit maps?
No, but I think you can do kind of similar maps with Tom's (Terwilliger) tools. Please ask him for more details. To get more information and examples, please look here: http://phenix-online.org/download/cci_apps/ (read "QuickFacts" and "Documentation") Let me know if something is still not clear or you have problems with this. Thanks! Pavel.