How to do parameter scanning
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