DOCK is a molecular docking program used in drug discovery. It was developed by Irwin D. Kuntz, Jr. and colleagues at UCSF (see UCSF DOCK). This program, given a protein binding site and a small molecule, tries to predict the correct binding mode of the small molecule in the binding site, and the associated binding energy. Small molecules with highly favorable binding energies could be new drug leads. This makes DOCK a valuable drug discovery tool. DOCK is typically used to screen massive libraries of millions of compounds against a protein to isolate potential drug leads. These leads are then further studied, and could eventually result in a new, marketable drug. DOCK works well as a screening procedure for generating leads, but is not currently as useful for optimization of those leads.
DOCK 6 uses an incremental construction algorithm called anchor and grow. It is described by a three-step process:
- Rigid portion of ligand (anchor) is docked by geometric methods.
- Non-rigid segments added in layers; energy minimized.
- The resulting configurations are 'pruned' and energy re-minimized, yielding the docked configurations.
In this tutorial we will use PDB code 4QMZ, the deposited crystal structure of human small C-terminal domain Phosphatasee 1 bound to rabeprazole.
While performing docking, it is convenient to adopt a standard directory structure / naming scheme, so that files are easy to find / identify.For this tutorial, we will use something similar to the following:
~username/AMS536-Spring2016/dock-tutorial/00.files/ /01.dockprep/ /02.surface-spheres/ /03.box-grid/ /04.dock/ /05.large-virtual-screen/ /06.virtual-screen/ /07.footprint/ /08.print_fps
In addition, most of the important files that are derived from the original crystal structure will be given a prefix that is the same as the PDB code, '3PGL'. The following sections in this tutorial will adhere to this directory structure/naming scheme.
II. Preparing the Receptor and Ligand
Download the PDB file (3PGL) from the protein databank: RCSB.org
3pgl.pdb was moved into 00.files
3pgl.pdb was copied to raw_3pgl.pdb. The header and all lines that don't start with ATOM or HETATM were deleted; all instances of HETATM were changed to ATOM. The second domain (chain B), all the water molecules, and the Mg ion were removed from the PDB file. "RZX A" was changed to "LIG B".
raw_3pgl.pdb was loaded into Chimera; Tools > Structure Editing > AddH used to add hydrogens to the system. Then add charge using Tools > Structure Editing > Add Charge, be sure to change AMBER ff14SB to AMBER ff99SB. Net charge was kept at 0. Save this file as 3pgl.dockprep.mol2.
Preparing the Receptor File
Open 3pgl.dockprep.mol2 in Chimera, select and delete the ligand. Save this file as 3pgl.rec.mol2 in 01.dockprep.
Creating the Ligand File
Open 3pgl.dockprep.mol2 in Chimera, select and delete the receptor (protein), and save this file as 3pgl.lig.mol2 in 01.dockprep.
Creating the noH Receptor File
Open 3pgl.dockprep.mol2 in Chimera, select H atoms through select > element > H, and delete. Save as 3pgl.rec.noH.pdb
III. Generating Receptor Surface and Spheres
Be sure you have a directory titled 02.surface-sphere; cd to this and open Chimera. Open 3pgl.rec.noH.pdb, and show the surface by clicking Action > Surface > Show after selecting the protein.
Save as a DMS file by going Tools > Structure Editing > Write DMS.
Creating the Spheres
Create an input file named INSPH, write into it:
1BJU.rec.dms #specifies the input file R #spheres generated will be outside of teh receptor surface X #specifies that all points won the receptor will be used 0.0 #distance in angstroms (avoids steric clashes) 4.0 #max surface radius of the spheres in angstroms 1.4 #min surface radius of the spheres in angstroms 3pgl.rec.sph #the specified outfile containing all generated spheres
Then run the sphere generating module by entering in terminal:
sphgen -i INSPH -o OUTSPH
Visualize the generated spheres in Chimera by opening the receptor surface file, and load on top of it 3pgl.rec.sph.
Selecting the Spheres
Now we want to select the spheres that correspond to our active site. Run the program sphere_selector:
sphere_selector 3pgl.rec.sph ../01.dockprep/3pgl.lig.mol2 8.0
An output file named selected_spheres.sph. Visualize in Chimera as before, loading the receptor surface file and selected_spheres.sph over it. You should be left with a structure that contains