How to do parameter scanning

From DISI
Jump to navigation Jump to search

Manually Generating ES/LD Combinations

written by Reed Stein, updated 12/2019 so users can specify different low dielectric and ligand desolvation sphere radii

To generate different sized low dielectric and ligand desolvation thin sphere combinations, you must first run blastermaster on your protein/ligand of interest. Once this is finished, make a new directory. Change into the new directory and run the following command:

    python ~rstein/zzz.scripts/DOCK_prep_scripts/new_0001_generate_ES_LD_generation.py -p ${FULL_ORIGINAL_BLASTERMASTER_PATH}

The full path to your original blastermaster path is the only required argument. However, you can modify other default values including:

   1) Radius of low dielectric spheres you want to run: use the -es flag. 
      Default radius for electrostatic spheres is [1.0, 1.3, 1.5, 1.7, 1.9]
   2) Radius of ligand desolvation spheres you want to run: use the -ld flag. 
      Default radius for ligand desolvation spheres is [0.1, 0.2, 0.3, 0.4, 0.5]
   3) DMS density: use the -d flag. Default is 10.0 to ensure that the surface is sufficiently coated with spheres when using 
      a smaller sphere radii (typically <0.5 Å). This can be reduced to 1.0 if only larger sphere radii are used.
   4) Distance from crystallographic ligand: use the -xd flag. Default is 2 Å.

If you wanted to change all, you could use:

   python ~rstein/zzz.scripts/DOCK_prep_scripts/new_0001_generate_ES_LD_generation.py -p ${FULL_ORIGINAL_BLASTERMASTER_PATH} 
          -es 1.1 1.2 1.3 -ld 0.1 0.3 -d 10 -xd 4

This script will submit ligand desolvation jobs to the queue. This should take 15-30 minutes. Once finished, check your spheres and grids by following the steps here:

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

Then run the following script to combine the ES/LD grids in all combinations:

   python ~rstein/zzz.scripts/DOCK_prep_scripts/new_0002_combine_es_ld_grids_into_combos.py -p ${FULL_ORIGINAL_BLASTERMASTER_PATH}

This will create a new directory called "combo_directories" with docking-ready directories inside. The directories will have the name format "es_{ES_sphere_radius}_ld_{LD_sphere_radius}". "def" refers to grids taken from your ${FULL_ORIGINAL_BLASTERMASTER_PATH} directory.

These directories are now ready for docking.

Blastermaster Parameter Scanning

Written by Jiankun Lyu, 2017/01/18

4/16/2019 - this needs to be updated and will result in discontinuous thin spheres at low radii! Use the tutorial above instead. Or use this link to run blastermaster manually:

   http://wiki.docking.org/index.php/Using_thin_spheres_in_DOCK3.7


The hierarchy of the directories:

thin_spheres_parameter_scanning----- std_dockprep 
                                                                |
                                                                |------ dockfiles
              |                                                 | 
              |                                                 |----- working
              |                                                 |
              |                                                 ------ rec.pdb, xtal-lig.pdb, INDOCK and other files generated balstermaster.py
              |
              ------- script ------ dockprep_thin_spheres_in_batches.csh
                              |
                              |------ submit_dockprep_thin_spheres.csh
                              |
                              |------ dockprep_thin_spheres.csh
                              |
                              |------ lig-decoy_enrichment.csh
                              |
                              |------ combineScoresAndPoses.csh
                              |
                              |------ AUCplot_of-lig-decoys.csh
                              |
                              |------ mk_matrix_logAUC.py
                              |
                              |------ sph_lib.py
                              |
                              |------ pdb_lib.py
                              |
                              ------- close_sph.py

1) Make those directories above.

mkdir thin_spheres_parameter_scanning
cd thin_spheres_parameter_scanning
mkdir std_dockprep
mkdir script

2) Run blastermaster.py in std_dockprep. This will generate two directories: working and dockfiles

3) Download sph_lib.py, pdb_lib.py and close_sph.py files into the script directory

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

4) Copy scripts from my path, and modify as necessary.

cd script

cp /mnt/nfs/ex5/work/jklyu/large_scale_docking/DRD2/struct_20180322/A122I_add_polarH_mini_HID/thin_spheres_parameter_scanning/scripts/*dockprep* .

cp /mnt/nfs/reshwork/jklyu/D2R/scripts/lig-decoy_enrichment_submit.csh .
cp /mnt/nfs/reshwork/jklyu/D2R/scripts/combineScoresAndPoses.csh .
cp /mnt/nfs/reshwork/jklyu/D2R/scripts/mk_matrix_logAUC.py .

5) Run parameter scanning.

cd ../ # go back to thin_spheres_parameter_scanning folder
csh /path/to/script/dockprep_thin_spheres_in_batches.csh /path/to/script/ /path/to/std_dockprep


Note:- you can edit dockprep_thin_spheres_in_batches.csh to include more CPUs in Job Bound

6) make the following subfolders

  mkdir ligands-decoys
  cd ligands-decoys
  mkdir ligands
  mkdir decoys

now copy your decoys.db2.gz to decoys now copy your ligands.db2.gz to ligands now copy decoys.smi to the folder now copy ligands.smi to the folder

7) Submit DOCK and enrichment calculation.

csh /path/to/script/lig-decoy_enrichment.csh

8) Combine and analyze the docking results.

csh /path/to/script/combineScoresAndPoses.csh #1st change the path inside the script to your own dir
csh /path/to/script/AUCplot_of-lig-decoys.csh #1st change the path inside the script to your own dir

9) Visualize the logAUC by heatmap.

python /path/to/script/mk_matrix_logAUC.py