Using thin spheres in DOCK3.7: Difference between revisions

From DISI
Jump to navigation Jump to search
No edit summary
m (asdf)
 
(18 intermediate revisions by 3 users not shown)
Line 1: Line 1:
==Tutorial for using Thin Spheres in DOCK 3.7==
 
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.
Written by Trent E. Balius, 2016/11/03.
Line 15: Line 68:


Here, the -d flag allows us to pass the program a scalar 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 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.
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):
Instead, you could copy the molecular surface of the original surface (this is OK for small sites):
Line 22: Line 75:
4) Run the thin spheres 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
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:
Get the following python code:
Line 28: Line 90:
  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 many spheres (> 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 available through the DOCK3.6 release.


     cd ../
     cd ../
Line 54: Line 115:
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]]
[[Category:Spheres]]
[[Category:DOCK]]

Latest revision as of 00:21, 25 May 2024

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