Part 3: MolProbity Tools in Coot and PHENIX
The popular crystallographic rebuilding program Coot also has the capability of using probe dots as an aid in model changes. In this part, you will use Coot to rebuild Thr 32 in 1SBP, a sulfate-binding protein at 1.7Å resolution.
After rebuilding Thr 32, you will use PHENIX to demonstrate
the importance of error correction prior to refinement.
Prepare the set-up for using Coot with all-atom contacts
Check that two programs from our lab are installed and on your PATH -- Reduce - to add hydrogens to proteins, nucleic acids, and ligands, and Probe - to generate the contact dots. From the command line of a terminal type:
shell> which reduce and then,
shell> which probe,
to get a report that these programs are in your PATH.
The .coot contents should contain:
NEEDED FOR THIS EXERCISE
(define *probe-command* "probe")
(define *reduce-command* "reduce")
Make a Coot set-up file in your home directory (if you don't already have one), ~/.coot.
This sets up to do Probe dots when you rebuild or refine, and to use a wider range of sidechain rotamers.
Fire-up Coot and read in the model and map
Type the command to start-up Coot:
Adjust the Coot windows to your preferred work habits.
Read in the coordinate file and maps from the Uppsala Electron Density server (EDS), using the menu item:
File > Get PDB & Map using EDS ...
Activating this menu item will bring up a box requesting the "PDB Accession Code". Click in the field, type "1sbp", and press return. This will lead to numerous informational messages in the Coot terminal and eventually, hopefully the model and a map section will be drawn in the Coot graphics window.
Check-out the model vs all-atom contact dots and electron-density map
In the previous session on MolProbity, one potential area of interest for 1sbp was the threonine residue 32. Having two sets of bad-overlap contact dots, a high Cβ deviation, and a bad rotamer score, this area is "yelling for help". In this section, we will use all-atom contact analysis to help us rebuild that area/residue.
Use the Coot Multi-Chart generated by MolProbity (1sbpFH-multi-coot.scm or 1sbpFH-multi-coot.py) that you downloaded. It can be read into Coot via the menu item: Calculate > Run Script...
On the MolProbity Multi-Chart window, find the 1st group (called "problems near A 32 THR") and click on one of the buttons for Thr 32.
Use the built-in functionality of Coot to display all-atom contacts.
Use the menu item: Validate > Probe clashes > 0 pdb1sbp.ent to calculate and show all the contact dots.
After you select the Probe clashes menu item, Reduce will add hydrogens to the model #0 (or whichever you selected in the submenu), Probe will add contact dots to the reduced model and eventually the dots will show in the Coot graphics window. Extra windows come up to let you turn the classes of dots on or off, etc.
Note the red clash spikes between the Thr methyl and a backbone NH, and the relative density and difference density of the O vs C sidechain branches. Look down the Cb-Ca bond to see that chi1 is eclipsed and the Og-Cb-Cg bond angle is much wider than tetrahedral.
Turn off display of molecule 0, the original 1sbp model.
Coot creates a new molecule (#3) for the protonated-1sbp. Turn off the display of the original using the Display Manager. This will simplify display and picking in future steps.
See if another rotamer helps
In the diagnosis/MolProbity session on 1sbp, we saw that Thr 32 is a rotamer outlier. So, a good place to start is to see if there is a standard rotamer that can be substituted that is consistent with the map and also relieves the contact dots overlap error signal. Coot has an internal rotamer library that can be used for this test.
Invoke the rotamer library via the Model/Fit/Refine floating menu. This floating menu is displayed by first doing the menu sequence: Calculate > Model/Fit/Refine...
Then, click the Rotamers... item in this floating menu.
After clicking the Rotamers... item, Coot will prompt you (in the terminal window) to "Click on an atom in a residue for which you wish to see rotamers". Doing so in the graphics window will lead to display of an alternate rotamer (colored white for our instance) and a "Select Rotamer" dialog box. The box contains information about each rotamer for that residue in the library.
Alternate rotamers can be cycled through by either pressing the "." (period) or "," (comma) keys while in graphics window focus; or by clicking on the rotamer list presented in the "Select Rotamer" dialog box. The contact dots will update in real-time.
Evaluate the available threonine rotamers versus the map and contact dots. Select one if you think you are better off than with the current non-rotameric conformer. One of the three rotamers fits the density shape better than the present model (consider the positive difference-density), is a rotamer, and with some torsion-angle adjustments done below can eliminate the bad contacts (bad overlap) and increase the good contacts (hydrogen-bonding).
Improve the fit to map using real space refinement
After selecting a rotamer, we're left with a slightly poorer fit to the map. But contrariwise, the map is biased to the original model; relocation of the OG1 helps explain the positive difference density; the original CB placement yields a high Cβ difference; the map density for the OG1-CB-CG2 sidechain is linear, rather than lobed (cf. Thr 96) and there is a hint that this straight portion may be bent as with the proposed rotamer. With this accumulated evidence, its reasonable to think that refinement and a new map will lead to a better explanation of the data. Let's use the current map to improve the model's fit locally.
Select the Select Map... item from the Model/Fit/Refine floating menu. From the dialog-box choose the 2FoFc map to use for refinement.
Next choose the Real Space Refine Zone item. You will be prompted to set the refine zone by choosing two atoms. Select the same atom twice to refine only the threonine 32 residue. After "a miracle occurs" the proposed solution will be displayed (again in white for our instance). Decide whether to accept or reject. If you're a miracle worker, you may want to fiddle with the weightings discussed in Coot's help manual.
For the example being worked on for this write-up, rotamer selection and real space refinement has eliminated the pink spikes of the contact dots.
But we're not done yet ...
Twiddle with the fit using torsion angles
Rotating the threonine's side chain oxygen round not only uses the rotamer of highest frequency, it also creates a new hydrogen bond between the amide hydrogen of ASP 34 and the THR 32 OG. With rotation of the OG1-HG1 hydroxyl bond yet another H-bond can be created between this hydroxyl hydrogen and the carbonyl oxygen of TRP 28.
Activate the ability to change Chi Angles via selecting Edit Chi Angles from the (still) floating Model/Fit/Refine menu. You'll be asked to "Click on an atom in the residue that you want to edit" (e.g., the Cα).
You'll get a new dialog box popped up - drag it out of the way and forget about it until the end. Make all your adjustments while focussed in the Coot graphics window. The mouse mappings are confusing: CTRL-left-drag moves the view while left-drag moves the torsion angle. Choose the torsion angle by typing a number (1, 2 or 3 in this case) that corresponds to the list placement of the torsion in that pop-up we had you hide.
We want to change the CA-CB-OG1-HG1 torsion which is #2 in the list. So make sure you have graphics window focus, then type 2, then left drag to move the HG1. If you need to change the view, do a CTRL-LEFT-drag. Curse silently when you forget the CTRL toggle. Contact dots interactively update.
Commit to the change by selecting "Accept" in that hidden dialog box.
Congratulations, you've rebuilt a problem area.
At this point, write out the coordinates for use with PHENIX. File > Save Coordinates does that. Now close Coot.
Effects of Rotamer Correction in Refinement
This part of the exercise requires PHENIX to be installed on your system. Don't have PHENIX? You can find download instructions HERE.
Misfit sidechains like Thr 32 in 1SBP that you corrected above are often caught in local minima too steep to be corrected by standard refinement methods. To illustrate this point, you will refine both the original 1SBP starting model and the model from your hand-correction in Coot and compare the results.
You will first need the structure factor data for 1SBP 1sbp-sf.mtz, which you can download HERE.
You will also need the starting PDB coordinate file that you saved in Part 1 1sbpFH.pdb (or download a version HERE) and the corrected version that you saved out of Coot.
(NOTE: 1SBP was deposited in 1993 and was not refined against an R-free set. For this exercise, an R-free set has been selected for you. You will notice some odd behavior in R-free values, but do not be alarmed. These come back down after many cycles of refinement.)
Launch the PHENIX GUI, either by typing "phenix" at the command line or by launching from your Applications window on Mac OS X.
Start a new project with a name such as "1SBP_refinements".
First you will refine the starting model of 1SBP (1sbpFH.pdb) that you saved from MolProbity in Part 1.
Under the Refinement heading in the right panel select phenix.refine.
In the main phenix.refine window, load the PDB coordinate file (1sbpFH.pdb) and the data file (1sbp-sf.mtz) using the "+" button in the "Input data" tab.
Select the "Refinement settings" tab and have a look at the different available options. For this exercise, using the default settings will be fine. Click "Run" from the button bar at the top of the phenix.refine window and select "Run locally".
Three macrocycles of refinement will now proceed, which will take a few minutes. Coot should automatically load allowing you to follow along as refinement proceeds.
When finished, a new set of tabs will appear in your refinement window, and will default to "Results".
Select the "MolProbity" tab, which will bring up a set of sub-tabs. The "Summary" tab shows summary statistics analogous to those shown in MolProbity. Note the worrysome percentage of Rotamer outliers (3.1%) and number of C-beta deviations (3).
Now select the "Protein" sub-tab which lists outliers for each MolProbity validation criteria. Scroll down to "Rotamer analysis" and see the familiar Thr 32 residue is still an outlier even after refinement.
Clicking on "Thr 32" in the rotamer list which will center on this residue in the Coot window. Note the difference density is still present. If the clashes do not appear, select "Reload data" in the "Clashes tab" in the refinement window.
Note the difference density where the methyl group is and significant steric clash that you observed in the beginning of this exercise still remain even after refinement.
Next we will refine the coordinates for the corrected 1SBP that you saved out of Coot.
Return to the main "PHENIX Home" window and open another "phenix.refine" window.
Load the corrected coordinate file and the data file as above and run refinement.
When refinement has completed, once again center on Thr 32 in the Coot window. Note that there is
no longer difference density where the -OH group is, and the steric clash has improved.
Now compare the MolProbity validation in both refinement windows. You should see that both rotamer
outliers and clashscore have decreased for the corrected model. Also note that the R values improve slightly.
In a similar fashion, you can correct other errors flagged by the MolProbity evaluation directly in Coot before proceeding to the next step of refinement.
As you have just demonstrated, refinement alone is in many cases not enough to correct errors in your model,
but using validation methods to identify and hand-correct mistakes before refinement can quickly improve
the quality of your model.
This technique is now available to you whenever fitting or validating. It is most valuable, and easiest to apply, when done during the refinement and rebuilding process rather than waiting until the end. Use it whenever you are trying to make a difficult decision between alternatives, run the overall validation (as in the first part of this exercise) occasionally to find problems you might have overlooked, and be sure to check one last time before depositing coordinates.