This page describes how to use the explicit solvent placement algorithm starting from a PDB structure using AmberTools 1.5+ (check this version). All software required to run this calculation is FREE. 1) Choose your PDB file Here we will use a simple, small PDB file that can be parameterized automatically using the TLEaP program. We will use the designed mini-protein, "Trp Cage". PDBID. 1L2Y. (copy it to your PDB directory) > mkdir 1-PDB 2) Clean up PDB file manually. Looking at the PDB file this, as with many NMR structures, has numerous models. We should choose which specific model we want to use. Here we will simply choose the first model. I made a new pdb, 'onesolute.pdb' which contains ONLY the structure of the first model. If you are using a crystal structure, you should remove the solvent atoms (unless you have a good reason to leave them in there). This tutorial will not cover parameterizing ligands or non-standard residues. As always, you need to pay attention to protonation states, this tutorial will not cover how to do so, we will simply use the default. > cp 1L2Y.pdb onesolute.pdb > vi onesolute.pdb (Clean up) > ls 1L2Y.pdb onesolute.pdb 3) Parameterize PDB file. Run Tleap to assign nonbonded parameters. Output prmtop, inpcrd and pdb. (myscript) > cd .. > mkdir 2-Leap > cd 2-Leap > vi runleap.in (write leap script) > tleap -f runleap.in > ls 1L2Y_1.inpcrd 1L2Y_1.pdb 1L2Y_1.prmtop leap.log runleap.in 4) Prepare solvent. Since will we be using 3D-RISM to calculate the solvent distribution, we need to first calculate the 1D susceptibility function using the solvent mixture of our choosing. Lets use a solution containing SPC water with Na+ and Cl- with concentrations 55.5M, 0.005M, and 0.005M respectively. We will use the parameters included in AMBER. To do this we'll prepare a RISM1D script including the pertinent parameters. The result will be an .xvv file containing susceptibility information for the solvent mixture. (This calculation should only take a few seconds) > cd .. > mkdir 3-Solvent > cd 3-Solvent > vi runrism1d.sh (write 1D RISM script) > bash run1drism1d.sh > ls SPC_NaCl.inp SPC_NaCl.out SPC_NaCl.sav SPC_NaCl.xvv runrism1d.sh 5) Run 3D-RISM We will use the 3drism.snglpnt package. We can simply call this package pointing it to the correct geometry, parameter, and solvent files. We will use the default 3D-RISM parameters otherwise. This may take a few minutes. > cd .. > mkdir 4-3D-RISM > cd 4-3D-RISM > vi run3drism.sh (write 3D RISM script) > bash run3drism.sh > ls 1L2Y.Cl-.1.dx 1L2Y.H1.1.dx 1L2Y.Na+.1.dx 1L2Y.O.1.dx run3drism.sh 6) Placement *Warning* This is a package written in Python requiring the NumPy package. NumPy is free but sometimes a pain to install (though well worth it). If you don't already have NumPy, I highly recommend installing it via the Enthought Scientific Python distribution which is free for academics. It's a breeze to install. Copy the package (and untar it) to your placement directory or put it in your path. To find the explicit solvent distribution of water oxygen atoms we must run the placement script on the water oxygen distribution function resulting from rism: placesolv.py ../4-3D-RISM/1L2Y.O.1.dx 55.5 > O.pdb (This should take a few seconds). > cd .. > mkdir 5-Placement > cd 5-Placement > placesolv.py ../4-3D-RISM/1L2Y.O.1.dx 55.5 > O.pdb > ls O.pdb 7) Analysis Analysis of the results require your own critical thinking about your system of interest. Readers are referred to the originating article. In addition to the coordinates of the placed waters, there is other important information in the resulting PDB. For example, the index of the waters reflects the amplitude of the correlation of each location. Pictured below is the stripped PDB structure (from step 1), the 3D-RISM distribution function of water oxygen at g>7 (from step 5) (shown as an isosurface in green), and the explicit distribution (from step 6). The explicit distribution is colored by index from low to high, red to blue. The first placed water is in a well known water location for Trp Cage. (Rendered in VMD 1.8.7) 8) Prepare for simulation After and only after you are satisfied with the placement of the water molecules, you may wish to use these positions in your starting structure for a simulation. You will simply need to combine the previous stripped PDB from step 3 with the placed water oxygen atoms from step 6 then add bulk water molecules using LEaP. An example of this is seen in this bash script using this LEaP script: > cd .. > mkdir 7-solvent-box > cd 7-solvent-box > bash solvate_full.sh This script will create a new PDB as well as a prmtop and inpcrd files for running your simulation. You will notice that all the water molecules placed by my algorithm will be oriented in the same direction. While I am currently working on improving this, you will inevitably need to relax the system perhaps using a restrained minimization followed by a relaxation in the NPT ensemble to find the appropriate box size. But that is beyond the scope of this tutorial. Good luck! Please contact me with any questions and don't forget to cite the paper according to the citation information on this page. |

link onesolute.pdb
runleap.in
runrism1d.sh