Using thin spheres in DOCK3.7

From DISI
Revision as of 17:53, 11 April 2018 by TBalius (talk | contribs)
Jump to navigation Jump to search

For newer versions of DOCK there are new flags to Blaster master to control thinsphere generation.

For DOCK3.7.1rc1 and older thinspheres have to be generated manually, e.g. by do the following:


Tutorial for using Thin Spheres in DOCK 3.7

Written by Trent E. Balius, 2016/11/03.

1) Run blastermaster.py. This will generate two directories: working and dockfiles

2) Make a new directory called mk_thin_spheres:

  mkdir  mk_thin_spheres
  cd mk_thin_spheres

3) First lets make a molecular surface. We recommend that you make a less dense molecular surface by copying the rec.pdb and running the following command:

  cp ../rec.pdb .
  cp ../working/rec.site.dms .
  $DOCKBASE/proteins/dms/bin/dms rec.pdb -a -d 0.2 -i rec.site.dms -g dms.log -p -n -o rec.ms

Here, the -d flag allows us to pass the program a scalar to modify the density of the surface points. For example, with a -d set to 1.0 the density is will be 5.42 pts/sq.A, while with a -d 0.2, we will get a density of 1.18 pts/sq.A.

Instead, you could copy the molecular surface of the original surface (this is OK for small sites):

  cp ../working/rec.ms .

4) Run the thin spheres code:

/mnt/nfs/home/tbalius/zzz.svn/dockenv/trunk/etc/thin_spheres.py -i rec.ms -o delphi.sph >& thin_spheres.log

Note that this is available through the DOCK3.6 release.

or an updated version is located here:

/mnt/nfs/home/tbalius/zzz.github/DOCK/proteins/thinspheres/thin_spheres.py -i rec.ms -o delphi.sph -d 2.0 -s 1.0 >& thin_spheres.log

the -s flag specifies the size (radius) of the sphere and the -d flag, the distance to the surface.

thin_spheres.py will soon be included with DOCK3.7.

Get the following python code:

curl http://docking.org/~tbalius/code/for_dock_3.7/sph_lib.py > sph_lib.py
curl http://docking.org/~tbalius/code/for_dock_3.7/pdb_lib.py > pdb_lib.py
curl http://docking.org/~tbalius/code/for_dock_3.7/close_sph.py > close_sph.py
   
   python close_sph.py delphi.sph ../xtal-lig.pdb delphi_close.sph 4.0
   head delphi_close.sph

if there are too many spheres (> 1,000), decrease the distance to, say, 1.2.


   cd ../
    move back to the top directory.

5) Now lets setup a directory and files to run blastermaster with the Existing Low Dielectric Spheres make a new directory call dockprep_w_thin_sph/

   mkdir  dockprep_w_thin_sph
   cd dockprep_w_thin_sph
   cp ../rec.pdb ../xtal-lig.pdb .
   mkdir working
   cp ../working/rec.crg.pdb working/
   cp ../mk_thin_spheres/delphi_close.sph working/lowdielectric.sph    

Make sure the header of the sphere file is cluster 1.

   head working/lowdielectric.sph

If it is not and says cluster 0 then run the following, because blaster master expects this to be cluster 1.

   sed -i 's/cluster     0/cluster     1/g' working/lowdielectric.sph

6) Now lets run blastermaster with Existing Low Dielectric Spheres

   $DOCKBASE/proteins/blastermaster/blastermaster.py --useExistingLowDielectricSphflag --addNOhydrogensflag

7) To apply a different radius to the spheres during QNIFFT calculation do the following:

  • Copy file to the present working directory.
   cp $DOCKBASE/proteins/defaults/vdw.siz .
  • edit the file to change the radius form 1.90 to 1.00:
   sed 's/c     sph   1.90/c     sph   1.00/g'
  • run blastermaster including the full path to radiusFile to use the alternative radii (the path may become truncated if too long, this is fix in later version).
   python $DOCKBASE/proteins/blastermaster/blastermaster.py --useExistingLowDielectricSphflag --addNOhydrogensflag --radiusFile=/present/working/directory/vdw.siz -v

8) optional.

  • parameter scanning.

how to do parameter scanning