Difference between revisions of "Using thin spheres in DOCK3.7"

From DISI
Jump to: navigation, search
m
 
(24 intermediate revisions by 3 users not shown)
Line 1: Line 1:
==Tutorial for using Thin Spheres in DOCK 3.7==
 
  
written by Trent E. Balius, 2016/11/03.
+
For newer versions of DOCK there are new flags in the blastermaster program for control thinsphere generation.  
  
1) Run blastermaster.py.  this will generate two directories: working and dockfiles
+
For thin spheres use Reed's version of blastermaster (This has also been pushed to the main version):
  
2) make a new directory called mk_thin_spheres:
+
  /mnt/nfs/home/rstein/zzz.github/DOCK/proteins/blastermaster/blastermaster.py
 +
 
 +
 
 +
here are the important thinsphere parameters:
 +
 
 +
  --mstsDensity=MSTSDENSITY
 +
                        molecular surface denisty for thinspheres (default:
 +
                        1.0)
 +
  --useThinSphEleflag  if flag is given, use thinspheres in qnifft
 +
                        calculation  (default: False)  Not tested with
 +
                        multigrid code.
 +
  --useThinSphLdsflag  if flag is given, use thinspheres in ligand
 +
                        desolvation calculation  (default: False)  Not tested
 +
                        with multigrid code.
 +
  --ts_dist_ele=TS_DIST_ELE
 +
                        for low dielectric thin spheres, distance to protein
 +
                        surface (default: 1.0)
 +
  --ts_radius_ele=TS_RADIUS_ELE
 +
                        for low dielectric thin spheres, radius of spheres
 +
                        (default: 1.0)
 +
  --ts_dist_lds=TS_DIST_LDS
 +
                        for ligand desolvation thin spheres, distance to
 +
                        protein surface (default: 1.0)
 +
  --ts_radius_lds=TS_RADIUS_LDS
 +
                        for ligand desolvation thin spheres, radius of spheres
 +
                        (default: 1.0)
 +
  --ts_dist_to_lig=TS_DIST_TO_LIG
 +
                        for both low dielectric thin spheres and ligand
 +
                        desolvation, distance from ligand to keep spheres
 +
                        (default: 2.0)
 +
 
 +
here is an example command:
 +
 
 +
  python /mnt/nfs/home/rstein/zzz.github/DOCK/proteins/blastermaster/blastermaster.py --addhOptions=" -HIS -FLIPs " --useThinSphEleflag --ts_dist_ele 1.0 --ts_radius_ele 1.0 --ts_dist_to_lig 4.0 --mstsDensity 1.2 -v > logfile
 +
 
 +
Another example command:
 +
 
 +
  $DOCKBASE/proteins/blastermaster/blastermaster.py --addhOptions=" -HIS -FLIPs " --useThinSphEleflag --useThinSphLdsflag --ts_dist_ele 1.0 --ts_radius_ele 1.0 --ts_dist_lds 0.3 --ts_radius_lds 0.3  --ts_dist_to_lig 4.0 --mstsDensity 1.2 -v
 +
 
 +
 
 +
If you check your spheres and they are discontinuous, run blastermaster again with a higher "mstsDensity", ranging from 1-10, depending on how small your radius is. You can check your protein preparation using this tutorial:
 +
 
 +
  http://wiki.docking.org/index.php/Protein_Target_Preparation_Updated
 +
 
 +
 
 +
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.1rc1==
 +
 
 +
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
 
   mkdir  mk_thin_spheres
 
   cd 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 coping the rec.pdb and running the following command:
+
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:
   $DOCKBASE/proteins/blastermaster/proteins/dms/bin/dms rec.pdb -a -d 0.2 -i rec.site.dms -g dms.log -p -n -o rec.ms
+
   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 scaler to modify the density of the surface points.   
+
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 1.0 the density is  5.42 pts/sq.A
+
For example, with a -d set to 1.0 the density will be 5.42 pts/sq.A, while with a -d 0.2, we will get a density of 1.18 pts/sq.A.
while -d 0.2 we get a density of 1.18 pts/sq.A
+
  
Instead, you could copy the molecular surface the original surface (this is OK for small sites):
+
Instead, you could copy the molecular surface of the original surface (this is OK for small sites):
 
   cp ../working/rec.ms .
 
   cp ../working/rec.ms .
  
4) run thin sphere code:
+
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
 
  /mnt/nfs/home/tbalius/zzz.svn/dockenv/trunk/etc/thin_spheres.py -i rec.ms -o delphi.sph >& thin_spheres.log
  
get the following python code:
+
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/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/pdb_lib.py > pdb_lib.py
 
  curl http://docking.org/~tbalius/code/for_dock_3.7/close_sph.py > close_sph.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 2.0
+
     python close_sph.py delphi.sph ../xtal-lig.pdb delphi_close.sph 4.0
 
     head delphi_close.sph
 
     head delphi_close.sph
  
if there are too mean sphere (> 1,000), decrease the distance to, say, 1.2.  
+
if there are too many spheres (> 1,000), decrease the distance to, say, 1.2.  
  
Note that this is avalible through the DOCK3.6 release.
 
  
cd ../
+
    cd ../
move back to the top dir.
+
    move back to the top directory.
  
5) now lets setup dir and files to run blastermaster with Existing Low Dielectric Spheres
+
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/
 
make a new directory call dockprep_w_thin_sph/
 
     mkdir  dockprep_w_thin_sph
 
     mkdir  dockprep_w_thin_sph
Line 43: Line 105:
 
     cp ../rec.pdb ../xtal-lig.pdb .
 
     cp ../rec.pdb ../xtal-lig.pdb .
 
     mkdir working
 
     mkdir working
     cp ../../working/rec.crg.pdb working/.
+
     cp ../working/rec.crg.pdb working/
 
     cp ../mk_thin_spheres/delphi_close.sph working/lowdielectric.sph     
 
     cp ../mk_thin_spheres/delphi_close.sph working/lowdielectric.sph     
     # blaster master expect this to be cluster 1.  
+
 
 +
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
 
     sed -i 's/cluster    0/cluster    1/g' working/lowdielectric.sph
  
 
6) Now lets run blastermaster with Existing Low Dielectric Spheres
 
6) Now lets run blastermaster with Existing Low Dielectric Spheres
 
     $DOCKBASE/proteins/blastermaster/blastermaster.py --useExistingLowDielectricSphflag --addNOhydrogensflag
 
     $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]]

Latest revision as of 05:41, 4 September 2019

For newer versions of DOCK there are new flags in the blastermaster program for control thinsphere generation.

For thin spheres use Reed's version of blastermaster (This has also been pushed to the main version):

 /mnt/nfs/home/rstein/zzz.github/DOCK/proteins/blastermaster/blastermaster.py
 

here are the important thinsphere parameters:

 --mstsDensity=MSTSDENSITY
                       molecular surface denisty for thinspheres (default:
                       1.0)
 --useThinSphEleflag   if flag is given, use thinspheres in qnifft
                       calculation   (default: False)  Not tested with
                       multigrid code.
 --useThinSphLdsflag   if flag is given, use thinspheres in ligand
                       desolvation calculation   (default: False)  Not tested
                       with multigrid code.
 --ts_dist_ele=TS_DIST_ELE
                       for low dielectric thin spheres, distance to protein
                       surface (default: 1.0)
 --ts_radius_ele=TS_RADIUS_ELE
                       for low dielectric thin spheres, radius of spheres
                       (default: 1.0)
 --ts_dist_lds=TS_DIST_LDS
                       for ligand desolvation thin spheres, distance to
                       protein surface (default: 1.0)
 --ts_radius_lds=TS_RADIUS_LDS
                       for ligand desolvation thin spheres, radius of spheres
                       (default: 1.0)
 --ts_dist_to_lig=TS_DIST_TO_LIG
                       for both low dielectric thin spheres and ligand
                       desolvation, distance from ligand to keep spheres
                       (default: 2.0)

here is an example command:

 python /mnt/nfs/home/rstein/zzz.github/DOCK/proteins/blastermaster/blastermaster.py --addhOptions=" -HIS -FLIPs " --useThinSphEleflag --ts_dist_ele 1.0 --ts_radius_ele 1.0 --ts_dist_to_lig 4.0 --mstsDensity 1.2 -v > logfile

Another example command:

 $DOCKBASE/proteins/blastermaster/blastermaster.py --addhOptions=" -HIS -FLIPs " --useThinSphEleflag --useThinSphLdsflag --ts_dist_ele 1.0 --ts_radius_ele 1.0 --ts_dist_lds 0.3 --ts_radius_lds 0.3  --ts_dist_to_lig 4.0 --mstsDensity 1.2 -v


If you check your spheres and they are discontinuous, run blastermaster again with a higher "mstsDensity", ranging from 1-10, depending on how small your radius is. You can check your protein preparation using this tutorial:

  http://wiki.docking.org/index.php/Protein_Target_Preparation_Updated


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.1rc1

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 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