Difference between revisions of "2010 DOCK tutorial with Streptavidin"

From Rizzo_Lab
Jump to: navigation, search
(About Streptavidin & Biotin)
 
(70 intermediate revisions by 10 users not shown)
Line 1: Line 1:
 +
For additional Rizzo Lab tutorials see [[DOCK Tutorials]]. This tutorial was developed collaboratively by the AMS 536 class of 2010.
 +
 
==About DOCK==
 
==About DOCK==
  
 
DOCK was developed by Irwin D. "Tack" Kuntz, Jr., PhD and colleagues at UCSF.  Please see the webpage at [http://dock.compbio.ucsf.edu/ UCSF DOCK].
 
DOCK was developed by Irwin D. "Tack" Kuntz, Jr., PhD and colleagues at UCSF.  Please see the webpage at [http://dock.compbio.ucsf.edu/ UCSF DOCK].
  
DOCK is a molecular docking program used in drug discovery. This program, given a protein active site and a small molecule, tries to predict the correct binding mode of the small molecule in the active 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 is a molecular docking program used in drug discovery. This program, given a protein active site and a small molecule, tries to predict the correct binding mode of the small molecule in the active 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 is works well as a screening procedure for generating leads, but not nearly as well for optimization of those leads. Original DOCK used only rigid body docking, DOCK 4.0, however, introduced flexible ligand docking by either a)incremental construction or b)random search.
 +
 
 +
Incremental construction (aka anchor and grow) could be roughly described by a three step process:
 +
1) rigid portion of ligand (anchor) is docked by geometrical methods
 +
2) non-rigid segments added; energy minimized
 +
3) the resulting configurations are 'pruned' and energy re-minimized, yielding the docked configurations
  
 +
Random search method involves docking random conformations of ligand as independent rigid objects. The number of conformations allowed per rotatable bond is arbitrary and user controlled. The receptor is always held rigid in DOCK 4.0.
  
 
==About Streptavidin & Biotin==
 
==About Streptavidin & Biotin==
Line 15: Line 23:
 
==Downloading the PDB complex (1DF8)==
 
==Downloading the PDB complex (1DF8)==
  
Download the neuraminidase file from [http://www.rcsb.org/pdb/explore/explore.do?structureId=1DF8 here] into your working directory. To get the monomer, download using the blue file arrow icon. Choose biological unit gz under download files folder at the left side. In that way you can downlad a '''biological gz''' file. If you download it by using "fetch by ID" in Chimera, you can only download a '''pdb gz''' file.
+
Download the file from [http://www.rcsb.org/pdb/explore/explore.do?structureId=1DF8 here] into your working directory. To get the monomer, download using the blue file arrow icon. Choose biological unit gz under download files folder at the left side. In that way you can downlad a '''biological gz''' file. If you download it by using "fetch by ID" in Chimera, you can only download a '''pdb gz''' file.
  
 
If the '''pdb gz''' file is downloaded the monomeric structure of neuraminidase with the bound ligand is seen.
 
If the '''pdb gz''' file is downloaded the monomeric structure of neuraminidase with the bound ligand is seen.
Line 23: Line 31:
 
When docking, we will only choose a monomer of the whole protein and its ligands instead of the whole tetramer. And it will be painful if you follow the procedure below, use vi to prepare the enzyme and ligand. Because you need to make sure the ligand you extract from the whole pdb files is right the one that match the monomer you've chosen.
 
When docking, we will only choose a monomer of the whole protein and its ligands instead of the whole tetramer. And it will be painful if you follow the procedure below, use vi to prepare the enzyme and ligand. Because you need to make sure the ligand you extract from the whole pdb files is right the one that match the monomer you've chosen.
  
 +
==Preparing the Enzyme and Ligand in Chimera==
 +
 +
''Opening your protein of interest and deleting unwanted molecules'':
 +
 +
- Click on '''Open''' under the '''File''' menu and find where you saved your pdb file.
 +
 +
- Access the command line by going to '''Tools''' and selecting '''Command Line''' under '''General Controls'''.
 +
 +
- You will only need one of the monomers to perform docking.  Remove chain B by doing the following:  (1)'''Select''' -> '''Chain''' -> '''B''' -> '''all''', then go to '''Actions''' -> '''Atoms''' -> '''Delete'''
 +
(2)'''Select''' -> '''Chain''' -> '''A''' -> '''#0.2''', then go to '''Actions''' -> '''Atoms''' -> '''Delete'''
  
==Preparing the Enzyme and Ligand in Chimera==
+
- To delete water molecules and other ligands: go to '''Tools''' -> '''Structure Edit''' -> '''Dock Prep'''. Check all boxes and click ok. This will walk you through preparing the complex for docking, and will also assign partial charges to the protein and the ligand. Choose am1-bcc charges for the ligand.
To delete the water molecules, etc. go to tools->struc. edit--> dock prep. Check all boxes and click ok. Save as 1DF8.dockprep.mol2
+
 
To separate the ligand: select--->residue-->BTN. Then go to actions-->atoms--->delete
+
- Save file as 1DF8.dockprep.mol2
Save file: 1DF8.receptor.mol2
+
 
Select--->chemistry-->element-->H and delete.  Save as PDB file 1DF8.receptor.noH.pdb
+
 
close and open dockprep file again. select protein and delete. Now have ligand only. Save as 1DF8.lig.mol2
+
''Create a Receptor file'':  
 +
 
 +
- go to '''Select''' -> '''Residue''' -> '''BTN'''. Then go to '''Actions''' -> '''Atoms''' -> '''Delete'''
 +
 
 +
- Save file as 1DF8.receptor.mol2
 +
 +
 
 +
''Create a Receptor file with No Hydrogens'':
 +
 +
- go to '''Select''' -> '''Chemistry''' -> '''Element''' -> '''H''' -> '''Delete'''
 +
 
 +
- Save file as PDB file 1DF8.receptor.noH.pdb
 +
 
 +
 
 +
''Create a Ligand file'':
 +
 
 +
- Open only the 1DF8.dockprep.mol2.
 +
 
 +
- Select the protein and delete it. This will allow you to only have the ligand.
 +
 
 +
- Save as 1DF8.ligand.mol2
 +
 
 +
These are the files that you will need to continue with rigid or flexible docking.
  
 
==Generation of Enzyme Surface, Spheres, and Grid for DOCK==
 
==Generation of Enzyme Surface, Spheres, and Grid for DOCK==
Line 35: Line 75:
  
 
===Enzyme Surface===
 
===Enzyme Surface===
To generate an enzyme surface, first open the receptor pdb file where hydrogens are removed (1DF8.rec.noH.pdb).  Chimera recently developed a new "Write DMS" tool that facilitates calculation of a molecular surface.  DMS (dot molecular surface) files can be used as an input for sphgen.
+
To generate an enzyme surface, first open the receptor pdb file with the hydrogen atoms removed ('''1DF8.receptor.noH.pdb''').  Next, go to '''Actions -> Surface -> Show'''. Previous years, we had used the dms program to do this, but now chimera can generate the molecular surface itself. Note that for dock it is necessary to use the protein without hydrogens.
 +
 
 +
[[Image:Surface.png|375px|alt=Example alt text|Streptavidin enzyme surface]]
 +
 
 +
Recent versions of Chimera include a Write DMS tool that facilitates calculation of the molecular surface.  Go to '''Tools -> Structure Editing -> Write DMS'''.  Save the surface as '''1DF8.receptor.dms'''.
 +
 
 +
The Write DMS algorithm will "roll" a small probe (default radius = 1.4 Angstroms) over the surface of the enzyme and calculate the surface normal at each point.  Note that this can also be accomplished with a separate dms program, as described in DOCK tutorials from previous years.  DMS (dot molecular surface) files are subsequently used as input for '''sphgen'''.
  
 
===Spheres===
 
===Spheres===
To generate spheres, we need to use sphgen. To run the sphgen, we need a input file INSPH.
+
To generate spheres file, we need to use command line program called '''sphgen'''. To run the sphgen, we need a input file named '''INSPH'''.
use vi to write the following information in the INSPH
+
The content of INSPH is like this
 +
1DF8.receptor.dms
 +
R
 +
X
 +
0.0
 +
4.0
 +
1.4
 +
1DF8.receptor.sph
 +
'''1DF8.receptor.dms''' is the surface file we got from the previous step. '''1DF8.receptor.sph''' is the spheres file we want to generate in this step.
 +
 
 +
Use this command to generate spheres file
 +
sphgen -i INSPH -o OUTSPH
 +
 
 +
You should get the OUTSPH similar to this
 +
density type = X
 +
reading  1DF8.receptor.dms                                                                  type  R
 +
# of atoms =    881  # of surf pts =  10771
 +
finding spheres for  1DF8.receptor.dms
 +
dotlim =    0.000
 +
radmax =    4.000
 +
Minimum radius of acceptable spheres?
 +
  1.4000000
 +
output to 1DF8.receptor.sph
 +
clustering is complete    27  clusters
 +
 
 +
You can open the spheres file (1DF8_receptor.sph).  There are over 700 atoms in this file.  However, we're only interested in docking the ligand into the active site.  To get better efficiency, we can select those sphere atoms in the active site by using '''sphere_selector''' command.
 +
sphere_selector 1DF8.receptor.sph 1DF8.ligand.mol2 10.0
 +
Where 1DF8_ligand is the ligand file.  10.0 is the distance cutoff.
 +
You should get a file called '''selected_spheres.sph'''.  You can open it.  The number of atoms is drop down to 47.
  
 
===Grid===
 
===Grid===
 +
Create a showbox.in file as following:
 +
 +
Y
 +
5.0                           
 +
1DF8.receptor.sph 
 +
1                     
 +
1DF8.box.pdb
 +
 +
Type 'showbox < showbox.in'
 +
 +
Now create a grid.in file with a 0.3 grid spacing.  The van der Waals components are a 6-9 instead of 6-12. It should look like this:
 +
 +
compute_grids                  yes
 +
grid_spacing                  0.3
 +
output_molecule                no
 +
contact_score                  no
 +
energy_score                  yes
 +
energy_cutoff_distance        9999
 +
atom_model                    a
 +
attractive_exponent            6
 +
repulsive_exponent            9
 +
distance_dielectric            yes
 +
dielectric_factor              4
 +
bump_filter                    yes
 +
bump_overlap                  0.75
 +
receptor_file                  1DF8.receptor.mol2
 +
box_file                      1DF8.box.pdb
 +
vdw_definition_file            vdw.defn
 +
score_grid_prefix              grid
 +
 +
To run this on the queue on seawulf use a script such as
 +
#PBS -l nodes=1:ppn=1
 +
#PBS -l walltime=24:00:00
 +
#PBS -N 1DF8.grid
 +
#PBS -j oe
 +
#PBS -o pbs.out
 +
 +
cd /nfs/user03/sudipto/1DF8_setup
 +
grid -i grid.in -o grid.out
 +
 +
This creates the output files grid.bmp grid.nrg
  
 
==Running DOCK==
 
==Running DOCK==
 +
You can run dock with either a rigid or flexible ligand. For either one, you need to create an input file.
 +
 +
Lets start with a rigid ligand. We need to first make the input file by typing in:
 +
vi rigid.in
  
 +
The rigid.in file is:
 +
 +
ligand_atom_file                                            1DF8.ligand.mol2
 +
limit_max_ligands                                            no
 +
skip_molecule                                                no
 +
read_mol_solvation                                          no
 +
calculate_rmsd                                              yes
 +
use_rmsd_reference_mol                                      no
 +
use_database_filter                                          no
 +
orient_ligand                                                yes
 +
automated_matching                                          yes
 +
receptor_site_file                                          selected_spheres.sph
 +
max_orientations                                            1000
 +
critical_points                                              no
 +
chemical_matching                                            no
 +
use_ligand_spheres                                          no
 +
use_internal_energy                                          yes
 +
internal_energy_rep_exp                                      12
 +
flexible_ligand                                              no
 +
bump_filter                                                  no
 +
score_molecules                                              yes
 +
contact_score_primary                                        no
 +
contact_score_secondary                                      no
 +
grid_score_primary                                          yes
 +
grid_score_secondary                                        no
 +
grid_score_rep_rad_scale                                    1
 +
grid_score_vdw_scale                                        1
 +
grid_score_es_scale                                          1
 +
grid_score_grid_prefix                                      grid
 +
dock3.5_score_secondary                                      no
 +
continuous_score_secondary                                  no
 +
gbsa_zou_score_secondary                                    no
 +
gbsa_hawkins_score_secondary                                no
 +
amber_score_secondary                                        no
 +
minimize_ligand                                              yes
 +
simplex_max_iterations                                      1000
 +
simplex_tors_premin_iterations                              0
 +
simplex_max_cycles                                          1
 +
simplex_score_converge                                      0.1
 +
simplex_cycle_converge                                      1.0
 +
simplex_trans_step                                          1.0
 +
simplex_rot_step                                            0.1
 +
simplex_tors_step                                            10.0
 +
simplex_random_seed                                          0
 +
simplex_restraint_min                                        no
 +
atom_model                                                  all
 +
vdw_defn_file                                                vdw_AMBER_parm99.defn
 +
flex_defn_file                                              flex.defn
 +
flex_drive_file                                              flex_drive.tbl
 +
ligand_outfile_prefix                                        rigid
 +
write_orientations                                          no
 +
num_scored_conformers                                        5000
 +
write_conformations                                          no
 +
cluster_conformations                                        yes
 +
cluster_rmsd_threshold                                      2.0
 +
rank_ligands                                                no
 +
 +
This assumes that vdw_defn_file, flex_defn_file and flex_drive_file is in the current directory. You can copy these files from /nfs/user03/sudipto/dock6/parameters/
 +
 +
Now you can run this file through a c shell script. We made ours like this:
 +
vi dock6.rigid.csh
 +
 +
#!/bin/csh
 +
#PBS -l nodes=1:ppn=2      # use one nodes with 2 processors
 +
#PBS -l walltime=01:00:00  # run for a maximum of 1 hour
 +
#PBS -N dock6              # call this job dock6
 +
#PBS -M user@ic.sunysb.edu  # your email address (optional)
 +
#PBS -j oe                  # join the output and error files
 +
#PBS -o pbs.out            # call the output of the script pbs.out
 +
 +
cd /nfs/user03/username/1DF8_setup
 +
/nfs/user03/sudipto/dock6/bin/dock6 -i rigid.in -o rigid.out
 +
 +
Now we do something similar with flexible binding:
 +
vi flex.in
 +
 +
ligand_atom_file                                            1DF8.ligand.mol2
 +
limit_max_ligands                                            no
 +
skip_molecule                                                no
 +
read_mol_solvation                                          no
 +
calculate_rmsd                                              yes
 +
use_rmsd_reference_mol                                      no
 +
use_database_filter                                          no
 +
orient_ligand                                                yes
 +
automated_matching                                          yes
 +
receptor_site_file                                          selected_spheres.sph
 +
max_orientations                                            1000
 +
critical_points                                              no
 +
chemical_matching                                            no
 +
use_ligand_spheres                                          no
 +
use_internal_energy                                          yes
 +
internal_energy_rep_exp                                      12
 +
flexible_ligand                                              yes
 +
min_anchor_size                                              40
 +
pruning_use_clustering                                      yes
 +
pruning_max_orients                                          100
 +
pruning_clustering_cutoff                                    100
 +
pruning_conformer_score_cutoff                              25.0
 +
use_clash_overlap                                            no
 +
write_growth_tree                                            no
 +
bump_filter                                                  no
 +
score_molecules                                              yes
 +
contact_score_primary                                        no
 +
contact_score_secondary                                      no
 +
grid_score_primary                                          yes
 +
grid_score_secondary                                        no
 +
grid_score_rep_rad_scale                                    1
 +
grid_score_vdw_scale                                        1
 +
grid_score_es_scale                                          1
 +
grid_score_grid_prefix                                      grid
 +
dock3.5_score_secondary                                      no
 +
continuous_score_secondary                                  no
 +
gbsa_zou_score_secondary                                    no
 +
gbsa_hawkins_score_secondary                                no
 +
amber_score_secondary                                        no
 +
minimize_ligand                                              yes
 +
minimize_anchor                                              yes
 +
minimize_flexible_growth                                    yes
 +
use_advanced_simplex_parameters                              no
 +
simplex_max_cycles                                          1
 +
simplex_score_converge                                      0.1
 +
simplex_cycle_converge                                      1.0
 +
simplex_trans_step                                          1.0
 +
simplex_rot_step                                            0.1
 +
simplex_tors_step                                            10.0
 +
simplex_anchor_max_iterations                                500
 +
simplex_grow_max_iterations                                  20
 +
simplex_grow_tors_premin_iterations                          20
 +
simplex_random_seed                                          0
 +
simplex_restraint_min                                        no
 +
atom_model                                                  all
 +
vdw_defn_file                                                vdw_AMBER_parm99.defn
 +
flex_defn_file                                              flex.defn
 +
flex_drive_file                                              flex_drive.tbl
 +
ligand_outfile_prefix                                        flex
 +
write_orientations                                          no
 +
num_scored_conformers                                        5000
 +
write_conformations                                          no
 +
cluster_conformations                                        yes
 +
cluster_rmsd_threshold                                      2.0
 +
rank_ligands                                                no
 +
 +
The main difference between the rigid docking and flex docking input file is that flexible_ligand is set to yes.
 +
 +
Now you can run this file through a .csh. We made ours like this:
 +
vi dock6.flex.csh
 +
 +
#!/bin/csh
 +
#PBS -l nodes=1:ppn=2
 +
#PBS -l walltime=01:00:00
 +
#PBS -N dock6
 +
#PBS -M user@ic.sunysb.edu
 +
#PBS -j oe
 +
#PBS -o pbs2.out
 +
cd /nfs/user03/username/1DF8_setup
 +
/nfs/user03/sudipto/dock6/bin/dock6 -i flex.in -o flex.out
  
 
==Docking Results==
 
==Docking Results==
 +
 +
===Rigid Dock===
 +
 +
[[Image:Best_rigiddock.png|thumb|center|654px|Best Rigid Docking Result (grid score = -63.980; RMSD = 0.159). For comparison, the crystallographic ligand is in light blue.]]
 +
 +
==Virtual Screening==
 +
 +
Sample flex docking input file
 +
 +
ligand_atom_file                      3_t60.mol2
 +
limit_max_ligands                      no
 +
skip_molecule                          no
 +
read_mol_solvation                    no
 +
calculate_rmsd                        no
 +
use_database_filter                    yes
 +
dbfilter_max_heavy_atoms              999
 +
dbfilter_min_heavy_atoms              0
 +
dbfilter_max_rot_bonds                999
 +
dbfilter_min_rot_bonds                0
 +
dbfilter_max_molwt                    9999.0
 +
dbfilter_min_molwt                    0.0
 +
dbfilter_max_formal_charge            10.0
 +
dbfilter_min_formal_charge            -10.0
 +
orient_ligand                          yes
 +
automated_matching                    yes
 +
receptor_site_file                    selected_spheres.sph
 +
max_orientations                      1000
 +
critical_points                        no
 +
chemical_matching                      no
 +
use_ligand_spheres                    no
 +
use_internal_energy                    yes
 +
internal_energy_rep_exp                12
 +
flexible_ligand                        yes
 +
min_anchor_size                        5
 +
pruning_use_clustering                yes
 +
pruning_max_orients                    100
 +
pruning_clustering_cutoff              100
 +
pruning_conformer_score_cutoff        25.0
 +
use_clash_overlap                      no
 +
write_growth_tree                      no
 +
bump_filter                            no
 +
score_molecules                        yes
 +
contact_score_primary                  no
 +
contact_score_secondary                no
 +
grid_score_primary                    yes
 +
grid_score_secondary                  no
 +
grid_score_rep_rad_scale              1
 +
grid_score_vdw_scale                  1
 +
grid_score_es_scale                    1
 +
grid_score_grid_prefix                grid
 +
dock3.5_score_secondary                no
 +
continuous_score_secondary            no
 +
gbsa_zou_score_secondary              no
 +
gbsa_hawkins_score_secondary          no
 +
amber_score_secondary                  no
 +
minimize_ligand                        yes
 +
minimize_anchor                        yes
 +
minimize_flexible_growth              yes
 +
use_advanced_simplex_parameters        no
 +
simplex_max_cycles                    1
 +
simplex_score_converge                0.1
 +
simplex_cycle_converge                1.0
 +
simplex_trans_step                    1.0
 +
simplex_rot_step                      0.1
 +
simplex_tors_step                      10.0
 +
simplex_anchor_max_iterations          1000
 +
simplex_grow_max_iterations            20
 +
simplex_grow_tors_premin_iterations    0
 +
simplex_random_seed                    0
 +
simplex_restraint_min                  no
 +
atom_model                            all
 +
vdw_defn_file                          vdw.defn
 +
flex_defn_file                        flex.defn
 +
flex_drive_file                        flex_drive.tbl
 +
ligand_outfile_prefix                  vs
 +
write_orientations                    no
 +
num_scored_conformers                  1
 +
rank_ligands                          yes
 +
max_ranked_ligands                    20000
 +
 +
 +
Sample script with openmpi using 8 processors on seawulf
 +
 +
#! /bin/tcsh
 +
#PBS -l nodes=4:ppn=2
 +
#PBS -l walltime=200:00:00
 +
#PBS -o zzz.qsub.out
 +
#PBS -j oe
 +
#PBS -V
 +
 +
set nprocs = `wc -l $PBS_NODEFILE | awk '{print $1}'`
 +
 +
echo "Running on ${nprocs} processors"
 +
 +
cd /nfs/user03/sudipto/1DF8_vs
 +
 +
mpirun -np $nprocs dock6.mpi -i vs.in -o vs.out

Latest revision as of 17:54, 7 May 2012

For additional Rizzo Lab tutorials see DOCK Tutorials. This tutorial was developed collaboratively by the AMS 536 class of 2010.

About DOCK

DOCK was developed by Irwin D. "Tack" Kuntz, Jr., PhD and colleagues at UCSF. Please see the webpage at UCSF DOCK.

DOCK is a molecular docking program used in drug discovery. This program, given a protein active site and a small molecule, tries to predict the correct binding mode of the small molecule in the active 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 is works well as a screening procedure for generating leads, but not nearly as well for optimization of those leads. Original DOCK used only rigid body docking, DOCK 4.0, however, introduced flexible ligand docking by either a)incremental construction or b)random search.

Incremental construction (aka anchor and grow) could be roughly described by a three step process: 1) rigid portion of ligand (anchor) is docked by geometrical methods 2) non-rigid segments added; energy minimized 3) the resulting configurations are 'pruned' and energy re-minimized, yielding the docked configurations

Random search method involves docking random conformations of ligand as independent rigid objects. The number of conformations allowed per rotatable bond is arbitrary and user controlled. The receptor is always held rigid in DOCK 4.0.

About Streptavidin & Biotin

Streptavidin is a tetrameric prokaryoke protein that binds the co-enzyme biotin with an extremely high affinity. The streptavidin monomer is composed of eight antiparallel beta-strands which folds to give a beta barrel tertiary structure. A biotin binding-site is located at one end of each β-barrel, which has a high affinity as well as a high avidity for biotin. Four identical streptavidin monomers associate to give streptavidin’s tetrameric quaternary structure. The biotin binding-site in each barrel consists of residues from the interior of the barrel, together with a conserved Trp120 from neighbouring subunit. In this way, each subunit contributes to the binding site on the neighboring subunit, and so the tetramer can also be considered a dimer of functional dimers.

Biotin is a water soluble B-vitamin complex which is composed of an ureido (tetrahydroimidizalone) ring fused with a tetrahydrothiophene ring. It is a co-enzyme that is required in the metabolism of fatty acids and leucine. It is also involved in gluconeogenisis.

Downloading the PDB complex (1DF8)

Download the file from here into your working directory. To get the monomer, download using the blue file arrow icon. Choose biological unit gz under download files folder at the left side. In that way you can downlad a biological gz file. If you download it by using "fetch by ID" in Chimera, you can only download a pdb gz file.

If the pdb gz file is downloaded the monomeric structure of neuraminidase with the bound ligand is seen.

However if the biological gz file is downloaded a tetramer complex of neuraminidase is seen.

When docking, we will only choose a monomer of the whole protein and its ligands instead of the whole tetramer. And it will be painful if you follow the procedure below, use vi to prepare the enzyme and ligand. Because you need to make sure the ligand you extract from the whole pdb files is right the one that match the monomer you've chosen.

Preparing the Enzyme and Ligand in Chimera

Opening your protein of interest and deleting unwanted molecules:

- Click on Open under the File menu and find where you saved your pdb file.

- Access the command line by going to Tools and selecting Command Line under General Controls.

- You will only need one of the monomers to perform docking. Remove chain B by doing the following: (1)Select -> Chain -> B -> all, then go to Actions -> Atoms -> Delete (2)Select -> Chain -> A -> #0.2, then go to Actions -> Atoms -> Delete

- To delete water molecules and other ligands: go to Tools -> Structure Edit -> Dock Prep. Check all boxes and click ok. This will walk you through preparing the complex for docking, and will also assign partial charges to the protein and the ligand. Choose am1-bcc charges for the ligand.

- Save file as 1DF8.dockprep.mol2


Create a Receptor file:

- go to Select -> Residue -> BTN. Then go to Actions -> Atoms -> Delete

- Save file as 1DF8.receptor.mol2


Create a Receptor file with No Hydrogens:

- go to Select -> Chemistry -> Element -> H -> Delete

- Save file as PDB file 1DF8.receptor.noH.pdb


Create a Ligand file:

- Open only the 1DF8.dockprep.mol2.

- Select the protein and delete it. This will allow you to only have the ligand.

- Save as 1DF8.ligand.mol2

These are the files that you will need to continue with rigid or flexible docking.

Generation of Enzyme Surface, Spheres, and Grid for DOCK

Enzyme Surface

To generate an enzyme surface, first open the receptor pdb file with the hydrogen atoms removed (1DF8.receptor.noH.pdb). Next, go to Actions -> Surface -> Show. Previous years, we had used the dms program to do this, but now chimera can generate the molecular surface itself. Note that for dock it is necessary to use the protein without hydrogens.

Example alt text

Recent versions of Chimera include a Write DMS tool that facilitates calculation of the molecular surface. Go to Tools -> Structure Editing -> Write DMS. Save the surface as 1DF8.receptor.dms.

The Write DMS algorithm will "roll" a small probe (default radius = 1.4 Angstroms) over the surface of the enzyme and calculate the surface normal at each point. Note that this can also be accomplished with a separate dms program, as described in DOCK tutorials from previous years. DMS (dot molecular surface) files are subsequently used as input for sphgen.

Spheres

To generate spheres file, we need to use command line program called sphgen. To run the sphgen, we need a input file named INSPH. The content of INSPH is like this

1DF8.receptor.dms
R
X
0.0
4.0
1.4
1DF8.receptor.sph

1DF8.receptor.dms is the surface file we got from the previous step. 1DF8.receptor.sph is the spheres file we want to generate in this step.

Use this command to generate spheres file

sphgen -i INSPH -o OUTSPH

You should get the OUTSPH similar to this

density type = X
reading  1DF8.receptor.dms                                                                  type   R
# of atoms =    881   # of surf pts =  10771
finding spheres for   1DF8.receptor.dms
dotlim =     0.000
radmax =    4.000
Minimum radius of acceptable spheres?
  1.4000000
output to  1DF8.receptor.sph
clustering is complete     27  clusters

You can open the spheres file (1DF8_receptor.sph). There are over 700 atoms in this file. However, we're only interested in docking the ligand into the active site. To get better efficiency, we can select those sphere atoms in the active site by using sphere_selector command.

sphere_selector 1DF8.receptor.sph 1DF8.ligand.mol2 10.0

Where 1DF8_ligand is the ligand file. 10.0 is the distance cutoff. You should get a file called selected_spheres.sph. You can open it. The number of atoms is drop down to 47.

Grid

Create a showbox.in file as following:

Y
5.0                            
1DF8.receptor.sph   
1                       
1DF8.box.pdb

Type 'showbox < showbox.in'

Now create a grid.in file with a 0.3 grid spacing. The van der Waals components are a 6-9 instead of 6-12. It should look like this:

compute_grids                  yes
grid_spacing                   0.3
output_molecule                no
contact_score                  no
energy_score                   yes
energy_cutoff_distance         9999
atom_model                     a
attractive_exponent            6
repulsive_exponent             9
distance_dielectric            yes
dielectric_factor              4
bump_filter                    yes
bump_overlap                   0.75
receptor_file                  1DF8.receptor.mol2
box_file                       1DF8.box.pdb
vdw_definition_file            vdw.defn
score_grid_prefix              grid

To run this on the queue on seawulf use a script such as

#PBS -l nodes=1:ppn=1
#PBS -l walltime=24:00:00
#PBS -N 1DF8.grid
#PBS -j oe
#PBS -o pbs.out

cd /nfs/user03/sudipto/1DF8_setup
grid -i grid.in -o grid.out

This creates the output files grid.bmp grid.nrg

Running DOCK

You can run dock with either a rigid or flexible ligand. For either one, you need to create an input file.

Lets start with a rigid ligand. We need to first make the input file by typing in:

vi rigid.in

The rigid.in file is:

ligand_atom_file                                             1DF8.ligand.mol2
limit_max_ligands                                            no
skip_molecule                                                no
read_mol_solvation                                           no
calculate_rmsd                                               yes
use_rmsd_reference_mol                                       no
use_database_filter                                          no
orient_ligand                                                yes
automated_matching                                           yes
receptor_site_file                                           selected_spheres.sph
max_orientations                                             1000
critical_points                                              no
chemical_matching                                            no
use_ligand_spheres                                           no
use_internal_energy                                          yes
internal_energy_rep_exp                                      12
flexible_ligand                                              no
bump_filter                                                  no
score_molecules                                              yes
contact_score_primary                                        no
contact_score_secondary                                      no
grid_score_primary                                           yes
grid_score_secondary                                         no
grid_score_rep_rad_scale                                     1
grid_score_vdw_scale                                         1
grid_score_es_scale                                          1
grid_score_grid_prefix                                       grid
dock3.5_score_secondary                                      no
continuous_score_secondary                                   no
gbsa_zou_score_secondary                                     no
gbsa_hawkins_score_secondary                                 no
amber_score_secondary                                        no
minimize_ligand                                              yes
simplex_max_iterations                                       1000
simplex_tors_premin_iterations                               0
simplex_max_cycles                                           1
simplex_score_converge                                       0.1
simplex_cycle_converge                                       1.0
simplex_trans_step                                           1.0
simplex_rot_step                                             0.1
simplex_tors_step                                            10.0
simplex_random_seed                                          0
simplex_restraint_min                                        no
atom_model                                                   all
vdw_defn_file                                                vdw_AMBER_parm99.defn
flex_defn_file                                               flex.defn
flex_drive_file                                              flex_drive.tbl
ligand_outfile_prefix                                        rigid
write_orientations                                           no
num_scored_conformers                                        5000
write_conformations                                          no
cluster_conformations                                        yes
cluster_rmsd_threshold                                       2.0
rank_ligands                                                 no 

This assumes that vdw_defn_file, flex_defn_file and flex_drive_file is in the current directory. You can copy these files from /nfs/user03/sudipto/dock6/parameters/

Now you can run this file through a c shell script. We made ours like this:

vi dock6.rigid.csh
#!/bin/csh
#PBS -l nodes=1:ppn=2       # use one nodes with 2 processors
#PBS -l walltime=01:00:00   # run for a maximum of 1 hour
#PBS -N dock6               # call this job dock6
#PBS -M user@ic.sunysb.edu  # your email address (optional) 
#PBS -j oe                  # join the output and error files
#PBS -o pbs.out             # call the output of the script pbs.out

cd /nfs/user03/username/1DF8_setup
/nfs/user03/sudipto/dock6/bin/dock6 -i rigid.in -o rigid.out

Now we do something similar with flexible binding:

vi flex.in
ligand_atom_file                                             1DF8.ligand.mol2
limit_max_ligands                                            no
skip_molecule                                                no
read_mol_solvation                                           no
calculate_rmsd                                               yes
use_rmsd_reference_mol                                       no
use_database_filter                                          no
orient_ligand                                                yes
automated_matching                                           yes
receptor_site_file                                           selected_spheres.sph
max_orientations                                             1000
critical_points                                              no
chemical_matching                                            no
use_ligand_spheres                                           no
use_internal_energy                                          yes
internal_energy_rep_exp                                      12
flexible_ligand                                              yes
min_anchor_size                                              40
pruning_use_clustering                                       yes
pruning_max_orients                                          100
pruning_clustering_cutoff                                    100
pruning_conformer_score_cutoff                               25.0
use_clash_overlap                                            no
write_growth_tree                                            no
bump_filter                                                  no
score_molecules                                              yes
contact_score_primary                                        no
contact_score_secondary                                      no
grid_score_primary                                           yes
grid_score_secondary                                         no
grid_score_rep_rad_scale                                     1
grid_score_vdw_scale                                         1
grid_score_es_scale                                          1
grid_score_grid_prefix                                       grid
dock3.5_score_secondary                                      no
continuous_score_secondary                                   no
gbsa_zou_score_secondary                                     no
gbsa_hawkins_score_secondary                                 no
amber_score_secondary                                        no
minimize_ligand                                              yes
minimize_anchor                                              yes
minimize_flexible_growth                                     yes
use_advanced_simplex_parameters                              no
simplex_max_cycles                                           1
simplex_score_converge                                       0.1
simplex_cycle_converge                                       1.0
simplex_trans_step                                           1.0
simplex_rot_step                                             0.1
simplex_tors_step                                            10.0
simplex_anchor_max_iterations                                500
simplex_grow_max_iterations                                  20
simplex_grow_tors_premin_iterations                          20
simplex_random_seed                                          0
simplex_restraint_min                                        no
atom_model                                                   all
vdw_defn_file                                                vdw_AMBER_parm99.defn
flex_defn_file                                               flex.defn
flex_drive_file                                              flex_drive.tbl
ligand_outfile_prefix                                        flex
write_orientations                                           no
num_scored_conformers                                        5000
write_conformations                                          no
cluster_conformations                                        yes
cluster_rmsd_threshold                                       2.0
rank_ligands                                                 no

The main difference between the rigid docking and flex docking input file is that flexible_ligand is set to yes.

Now you can run this file through a .csh. We made ours like this:

vi dock6.flex.csh
#!/bin/csh
#PBS -l nodes=1:ppn=2
#PBS -l walltime=01:00:00
#PBS -N dock6
#PBS -M user@ic.sunysb.edu
#PBS -j oe
#PBS -o pbs2.out
cd /nfs/user03/username/1DF8_setup
/nfs/user03/sudipto/dock6/bin/dock6 -i flex.in -o flex.out

Docking Results

Rigid Dock

Best Rigid Docking Result (grid score = -63.980; RMSD = 0.159). For comparison, the crystallographic ligand is in light blue.

Virtual Screening

Sample flex docking input file

ligand_atom_file                       3_t60.mol2
limit_max_ligands                      no
skip_molecule                          no
read_mol_solvation                     no
calculate_rmsd                         no
use_database_filter                    yes
dbfilter_max_heavy_atoms               999
dbfilter_min_heavy_atoms               0
dbfilter_max_rot_bonds                 999
dbfilter_min_rot_bonds                 0
dbfilter_max_molwt                     9999.0
dbfilter_min_molwt                     0.0
dbfilter_max_formal_charge             10.0
dbfilter_min_formal_charge             -10.0
orient_ligand                          yes
automated_matching                     yes
receptor_site_file                     selected_spheres.sph
max_orientations                       1000
critical_points                        no
chemical_matching                      no
use_ligand_spheres                     no
use_internal_energy                    yes
internal_energy_rep_exp                12
flexible_ligand                        yes
min_anchor_size                        5
pruning_use_clustering                 yes
pruning_max_orients                    100
pruning_clustering_cutoff              100
pruning_conformer_score_cutoff         25.0
use_clash_overlap                      no
write_growth_tree                      no
bump_filter                            no
score_molecules                        yes
contact_score_primary                  no
contact_score_secondary                no
grid_score_primary                     yes
grid_score_secondary                   no
grid_score_rep_rad_scale               1
grid_score_vdw_scale                   1
grid_score_es_scale                    1 
grid_score_grid_prefix                 grid
dock3.5_score_secondary                no
continuous_score_secondary             no
gbsa_zou_score_secondary               no
gbsa_hawkins_score_secondary           no
amber_score_secondary                  no
minimize_ligand                        yes
minimize_anchor                        yes
minimize_flexible_growth               yes
use_advanced_simplex_parameters        no
simplex_max_cycles                     1
simplex_score_converge                 0.1
simplex_cycle_converge                 1.0
simplex_trans_step                     1.0
simplex_rot_step                       0.1
simplex_tors_step                      10.0
simplex_anchor_max_iterations          1000
simplex_grow_max_iterations            20
simplex_grow_tors_premin_iterations    0
simplex_random_seed                    0
simplex_restraint_min                  no
atom_model                             all
vdw_defn_file                          vdw.defn
flex_defn_file                         flex.defn
flex_drive_file                        flex_drive.tbl
ligand_outfile_prefix                  vs
write_orientations                     no
num_scored_conformers                  1
rank_ligands                           yes
max_ranked_ligands                     20000


Sample script with openmpi using 8 processors on seawulf

#! /bin/tcsh
#PBS -l nodes=4:ppn=2
#PBS -l walltime=200:00:00
#PBS -o zzz.qsub.out
#PBS -j oe
#PBS -V

set nprocs = `wc -l $PBS_NODEFILE | awk '{print $1}'`

echo "Running on ${nprocs} processors"

cd /nfs/user03/sudipto/1DF8_vs

mpirun -np $nprocs dock6.mpi -i vs.in -o vs.out