You can run phenix.refine from the command line:
% phenix.refine <pdb-file(s)> <reflection-file(s)> <monomer-library-file(s)>
When you do this a number of things happen:
The program automatically generates a defaults file which contains all of the parameters for the job (for example if you provided lysozyme.pdb the file lysozyme_refine_001.eff will be generated). This is the set of input parameters for this run.
The program automatically interprets the reflection file(s). If there is an unambiguous choice of data arrays these will be used for the refinement. If there is a choice, you're given a message telling you how to select the arrays.
Once the data arrays are determined, the program writes all of the data it will be using in the refinement to a new MTZ file, for example, lysozyme_refine_data.mtz. This makes it very easy to keep track of what you actually used in the refinement (instead of having the arrays spread across multiple files).
At the end of refinement the program generates a new PDB file, with the refined model, called for example lysozyme_refine_001.pdb
At the end of refinement the program generates two maps: likelihood weighted mFo-DFc and 2mFo-DFc. These are in ASCII X-PLOR format. A reflection file with map coefficients is also generated for use in Coot or XtalView (e.g. lysozyme_refine_001_map_coeffs.mtz)
At the end of refinement the program generates a new defaults file to run the next cycle of refinement, e.g. lysozyme_refine_002.def. This means you can run the next cycle of refinement by typing:
% phenix.refine lysozyme_refine_002.def
To get information about command line options type:
% phenix.refine --help
To have the program generate the input defaults file without running the refinement job (i.e. so you can modify the inputs prior to running the job):
% phenix.refine --dry_run <pdb-file> <reflection-file(s)>
If you now the parameter that you want to change you can override it from the command line:
% phenix.refine scale.cv lysozyme.pdb number_of_macro_cycles=1 max_number_of_iterations=3 main.target=ml
Note that you don't have to specify the full parameter name. What you specify on the command line is matched against all known parameters names and the best substring match is used if it is unique.
To rerun a job that was previously run:
% phenix.refine --overwrite lysozyme_refine_001.def
The --overwrite option allows the program to overwrite existing files. By default the program will not overwrite existing files - just in case this would remove the results of a refinement job that took a long time to finish.
Common default changes
To perform simulated annealing:
% phenix.refine scale.cv lysozyme.pdb do_simulated_annealing=true
To turn off B-factor refinement (i.e. at lower resolution)
% phenix.refine scale.cv lysozyme.pdb refine_uiso=false
Current limitations