Flexible Docking: tarting and thin spheres
written by Stefan Gahbauer 12/30/2020
Weighted flexible docking as described in Fischer et al., Nat. Chem., 2014 [1], is implemented in DOCK3.7, however, fine-tuning docking grids using tarting or thin spheres was not possible with the common scripts used for rigid docking.
Run flexible blastermaster on protonated rec.crg.pdb including tarted residues
DOCKBASE with adapted blastermaster_flex function:
/mnt/nfs/exc/work/stefan/Flexible_docking_Tarting_Thin_Spheres/DOCK-3.7.4-1228
This version cannot be used to protonate rec.pdb, rec.crg.pdb containing protonated flexible states must be prepared before.
You can find an example for AmpC with tarted, flexible GLN120 here:
/mnt/nfs/exc/work/stefan/exc/Flexible_docking_Tarting_Thin_Spheres/example_AmpC
Run blastermaster for flexible grid generation:
python /mnt/nfs/exc/work/stefan/Flexible_docking_Tarting_Thin_Spheres/DOCK-3.7.4-1228/proteins/blastermaster/blastermaster.py --addNOhydrogensflag -v -f --flexiblePenaltyM=2.0 --flexibleResidues=120 --chargeFile="/nfs/home/stefan/exc/Flexible_docking_Tarting_Thin_Spheres/example_AmpC/amb.crg.oxt" --vdwprottable="/nfs/home/stefan/exc/Flexible_docking_Tarting_Thin_Spheres/example_AmpC/prot.table.ambcrg.ambH"
This will generate INDOCK, dockfiles for flexible docking, flexible.explanation.txt and part.explanation.txt.
Thin sphere scan
After the initial grids are computed with blastermaster, thin spheres can be introduced by using the following script:
/mnt/nfs/exc/work/stefan/Flexible_docking_Tarting_Thin_Spheres/thin_sphere_scan/new_0001_generate_ES_LD_generation_flexible.py
This script is based on the rigid-docking thin sphere scan by Reed: [2] A few new options were added for flexible thin sphere scans:
usage: new_0001_generate_ES_LD_generation_flexible.py [-h] This is a sphere scan directory generator script. This script requires that you provide the full path to your original blastermaster directory that you want to run a sphere scan on. This looks like: python new_0001_generate_ES_LD_combine.py --path /mnt/nfs/blah/work/yourName/blah/DOCKprep/ Other options include specifying the: 1) DMS density (--dms) 2) electrostatic thin sphere radii (--es_rad) 3) ligand desolvation sphere radii (--ld_rad) 4) distance of spheres to your xtal-lig.pdb (--xdist) 5) Grid IDs (--flexgrids) 6) Ground state grid (--ground_state) optional arguments: -h, --help show this help message and exit -p ORI_PATH, --path ORI_PATH Full path of the original blastermaster directory, e.g. /mnt/nfs/work/asdf/asdf/asdf/ -d DMS, --dms DMS DMS Density. The higher the number, the more dense the molecular surface is. 10.0 is default to ensure that the smaller radii spheres sufficiently cover the protein surface. If your spheres have larger radii or if you are using small radii for ES spheres and QNIFFT fails, this value can be decreased to 1.0. -es ES_RAD [ES_RAD ...], --es_rad ES_RAD [ES_RAD ...] Radius of Electrostatic spheres. Default is 1.0, 1.3, 1.5, 1.7, 1.9 -ld LD_RAD [LD_RAD ...], --ld_rad LD_RAD [LD_RAD ...] Radius of ligand desolvation spheres. Default is 0.1, 0.2, 0.3, 0.4, 0.5 -xd XDIST, --xdist XDIST Distance thin spheres can be from xtal-lig.pdb. Default is 2 Angstroms -fg GNUM [GNUM ...], --flexgrids GNUM [GNUM ...] Alternative conformation names. E.g. A,B,C -gs GROUND_STATE, --ground_state GROUND_STATE Ground state conformation name. E.g. A
Example:
python /mnt/nfs/exc/work/stefan/Flexible_docking_Tarting_Thin_Spheres/thin_sphere_scan/new_0001_generate_ES_LD_generation_flexible.py -p /nfs/home/stefan/exc/Flexible_docking_Tarting_Thin_Spheres/example_AmpC -d 5 -es 1.0 1.5 1.9 -ld 0.4 0.6 0.8 -xd 4 -fg A B C -gs A
This will take a few minutes (code is still being optimized).
Once the girds are calculated, dockfiles for different thin sphere combination need to be generated using the following script:
/mnt/nfs/exc/work/stefan/Flexible_docking_Tarting_Thin_Spheres/thin_sphere_scan/new_0002_combine_es_ld_grids_into_combos_flexible.py
usage: new_0002_combine_es_ld_grids_into_combos_flexible.py [-h] -p ORI_PATH -fg GNUM [GNUM ...] -gs GROUND_STATE This is a sphere scan directory generator script. This script requires that you provide the full path to your original blastermaster directory that you want to run a sphere scan on. This looks like: python new_0002_combine_ES_LD.py --path /mnt/nfs/blah/work/yourName/blah/DOCKprep/ --flexgrids A B C --ground_state A optional arguments: -h, --help show this help message and exit -p ORI_PATH, --path ORI_PATH Full path of the original blastermaster directory, e.g. /mnt/nfs/work/asdf/asdf/asdf/ -fg GNUM [GNUM ...], --flexgrids GNUM [GNUM ...] Alternative conformation names. E.g. A,B,C -gs GROUND_STATE, --ground_state GROUND_STATE Ground state conformation name. E.g. A
Example:
python /mnt/nfs/exc/work/stefan/Flexible_docking_Tarting_Thin_Spheres/thin_sphere_scan/new_0002_combine_es_ld_grids_into_combos_flexible.py -p /nfs/home/stefan/exc/Flexible_docking_Tarting_Thin_Spheres/example_AmpC -fg A B C -gs A
This will generate combo_directories containing flexible docking grids.