Rhofit is a tool for fitting ligands into difference density. It differs from FitMAP in that it is able to change bond lengths and angles within the ligand, rather than only rotate torsion angles; this also allows it to search for correct ring conformations, including macrocycles. In addition, rhofit can also search for the correct chirality if this is not known for an input ligand.
Rhofit uses the gelly geometry function to assess ligand strain and protein-ligand contacts, so its results will be compatible with further BUSTER refinement. Rhofit runs a large number of independent trials and reports the best solutions that it finds; you can give it some idea of how long you want it to search for. We aim for rhofit with default parameters to take significantly less time that the refinement required to produce its input.
Take some structure in which there is a ligand to be found and do
refine -L -p structure.pdb -m data.mtz -d 00 | tee 00.listo tell autoBUSTER to try ligand-chasing.
There are a fair number of command-line arguments available, but the easiest use cases are
By default, rhofit will produce a list of the connected blobs of difference density in the input MTZ files which are large enough to contain the ligands, try briefly to fit the ligand into each of these blobs, and then try much more intensively to fit the ligand into the single blob into which it seemed to fit best. If you expect there to be more than one copy of the ligand in the structure, use the -xclusters option.
After the rhofit command has finished, it will create a directory 'rhofit'. The easiest way to explore this directory is with the tool visualise-rhofit-coot, which lets you look through the list of positions that rhofit has found for your ligand; they are in order of correlation coefficient so generally the correct conformation should be the first one that appears. If you don't want to use that tool, best.pdb is the best conformation, and best.dic is the associated dictionary.
There are tutorial examples on the consortium wiki here
-lp ligand.pdb | PDB file containing model of the ligand. Note that rhofit at present does not handle PDB files containing hydrogen atoms. |
-l ligand.dic | Dictionary for ligand. A dictionary is automatically generated if not given. |
-m refine.mtz | MTZ file to use for difference density |
-p refine.pdb | PDB file to use for determining protein/ligand clashes |
-c cluster.pdb | Filename of a single cluster in which to fit the ligand |
-C cluster.lis | Filename of a file containing a list of clusters in which to try to fit the ligand |
If you run 'rhofit -lp ligand.pdb' in the output directory from a 'refine' command, it will pick up refine.mtz and refine.pdb. If you don't give it any cluster files, it will find Fo-Fc clusters in the MTZ file on its own.
-allclusters | Try using every cluster |
-xclusters n | Use the n clusters in which the ligand seems to fit best |
The default is to attempt to fit the ligand in every cluster found, and then run further on the single cluster in which it fits best.
"How to fit the ligand" encompasses a number of options; you can tell rhofit to ignore the description of the ligand's chirality, and you can tell it how long it should spend looking for good conformations.
-nochirals | Ignore all CHIRAL cards in the dictionary |
-scanchirals | Try fitting with every possible permutation of chiralities. Note that this will try large numbers of permutations if the ligand has many chiral centres: 256 permutations for a ligand containing two ribose rings |
-clusterweight x | Set weight used for shape score to x (default 0.25) |
-clashweight x | Set weight used for protein-clash detection to x (default 0.5) |
-quick | Run fewer trials than usual; note that this may not find good conformations for complicated ligands |
-thorough | Run more trials than usual; this is an option to use in pipelines where you have large amounts of compute power available and are not waiting impatiently for the result |
-nocorrel | Use rhofit's own score for solutions rather than a correlation coefficient against Fo-Fc. This is significantly quicker. |
-td directory | Directory for temporary data during refinement (defaults to a system temporary directory) |
-d directory | Directory to put final results (defaults to ./rhofit) |
As we at Global Phasing get more experience with the use of rhofit by our customers, we will add to the wiki page here
If rhofit crashes, please email buster-develop@globalphasing.com and tell us as much as you can about what you were doing when it crashed; if you can rerun the job with -td temp and send us temp.tar.gz, that would be perfect. Whilst we have exercised rhofit thoroughly on OS X and two versions of Linux, it is possible that we've missed some issues on other Linux distributions.
Please let us know if you would like any feature to be added to rhofit by email to buster-develop@globalphasing.com.