2018 DOCK tutorial 1 with PDBID 2NNQ
This tutorial contains, a step by step by approach to dock a known ligand to a known receptor.
- 1 I. Introduction
- 2 II. Preparation of the ligand and receptor
- 3 III. Generating receptor surface and spheres
- 4 IV. Generating box and grid
- 5 V. Docking a single molecule for pose reproduction
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.
The tutorial will be based on the PDB file 2NNQ downloaded from the PDB Database. 2NNQ is the crystal structure for a human adipocyte fatty acid binding protein in complex with ((2'-(5-ethyl-3,4-diphenyl-1H-pyrazol-1-yl)-3-biphenylyl)oxy)acetic acid.
Organization of Directories
Maintaining a clearly organized set of folders will be helpful in finding specific files, calling different files in input files and most importantly keeping track of everything you do. We would like to recommend to maintain the following set of files throughout the tutorial.
0.files 1.dockprep 2.surface_spheres 3.gridbox 4. 5. 6. 7.
II. Preparation of the ligand and receptor
Download the pdb file 2NNQ from PDB database save it in 0.files folder.
Checking the structure
- Read the article related to the PDB file to understand protonation states, charges, environmental conditions and other important information regarding the receptor and the ligand. - Open the pdb file through chimera and look at the structure. Identify the main components of the model (receptor, ligand, solvent, surfactants, metal ions) - Carefully look to identify if there are any missing residues or missing loops. (This particular PDB file didn't contain any missing loops or missing residues)
Preparation of receptor
- Open the PDB file (2NNQ.pdb) via Chimera - Isolate the receptor using select tool and delete tool in Chimera. - Save the isolated receptor as a mol2 file. (2nnq_rec_noH.mol2)
- Open 2nnq_rec_noH.mol2 file again using Chimera and use the following instructions to prepare the receptor file to be used in DOCK. Tools -> Structure Editing -> Add H (To add Hydrogen atoms) Tools -> Structure Editing -> Add Charge (To add the charge use the latest AMBER force filed available for standard residues. Here we used AMBER ff14SB) Save as a mol2 file. (22nq_rec_withH.mol2)
- If you follow the step below all the above stated steps will automatically appear one after the other to prepare the receptor. Tools -> Structure/Binding Analysis -> DockPrep
Preparation of ligand
- Open the PDB file via Chimera. - Using Chimera, isolate the ligand, add H atoms, add charge and save it as a mol2 file by following the same steps followed for the receptor.
Once all the files are prepared make sure to save the files in 1.dockprep folder.
III. Generating receptor surface and spheres
Preparation of DMS file
- Open 2nnq_rec_noH.mol2 using chimera. - Action -> Surface -> Show - Tools -> Structure Editing -> Write DMS - Save the 2nnq_rec_withH.dms into 3.surface_spheres folder
Transfer all the folders created so far to seawulf cluster to be used in DOCK.
- Go to 2.surface_spheres folder - Create a new input file to create spheres by typing vim INSPH and type the following lines inside the file.
2nnq_rec_noH.dms R X 0.0 4.0 1.4 2nnq_rec.sph
The first line 2nnq_rec_noH.dms specifies the input file. R indicates that spheres generated will be outside of the receptor surface. X specifies all the points will be used. 0.0 is the distance in angstroms and it will avoid steric clashes. 4.0 is the maximum surface radius of the spheres and 1.4 is the minimum radius in angstroms.The last line 2nnq_spheres.sph creates the sph file that contains clustered spheres.
Once the INSPH file is ready, type the following command to generate the spheres.
sphgen -i INSPH -o OUTSPH
Once sphgen command is successful, 2nnq_spheres.sph file will be created. Open it up using Chimera along with 2nnq_rec_noH.mol2 file. You should get a similar output like the image below.
Here we will be selecting the spheres which defines the binding pocket of the ligand because we are trying to direct the ligand towards that binding site rather than all over the receptor. To select the spheres type the following command.
sphere_selector 2nnq_rec.sph ../1.dockprep/2nnq_lig_withH.mol2 10.0
This command will select all of the spheres within 10.0 angstroms of the ligand and output them to selected_spheres.sph. Visualize the selected spheres using Chimera to make sure the correct spheres are selected.
IV. Generating box and grid
Move to 3.boxgrid directory Create a new file showbox.in and write the following lines in the file.
Y 8.0 ../2.surface_spheres/selected_spheres.sph 1 2nnq.box.pdb
Each of the above lines indicate that;
We intend to generate a box The box length should be 8 Angstroms Use the selected_spheres file in the designated location The name of the file that contains generated box.
Use the following command to generate the box.
showbox < showbox.in
If this step is successful, you should see a new file (2nnq.box.pdb) in 3.boxgrid folder.
Create a new file (grid.in)
Use the following command to generate the grid.
grid -i grid.in -o gridinfo.out
Answer the prompted questions with the answers given below. (or you can use the following lines and include them in the grid.in file. If you do that these questions won't be prompted again. They will be automatically answered by grid.in file created)
compute_grids yes grid_spacing 0.4 output_molecule no contact_score no energy_score yes energy_cutoff_distance 9999 atom_model a attractive_exponent 6 repulsive_exponent 12 distance_dielectric yes dielectric_factor 4 bump_filter yes bump_overlap 0.75 receptor_file ../1.dockprep/2nnq_rec_withH.mol2 box_file 2nnq.box.pdb vdw_definition_file /gpfs/projects/AMS536/zzz.programs/dock6/parameters/vdw_AMBER_parm99.defn score_grid_prefix grid
If the command is successful, three new files will be generated. (gridinfo.out, grid.nrg, grid.bmp). Go through gridinfo.out file to make sure all the information about the receptor in the file matches with the original information of the receptor. (Eg:- Total charge, residues and their charges) If the information doesn't match, that means you have made an error in one of the steps that you followed so far.