2024.02.01.6GJ8_rec_desolv - tbalius/teb_docking_test_sets GitHub Wiki
DOCK 6 receptor desolvation tutorial using KRAS in complex with BI-2852 (PDB ID 6GJ8)
By Y. Stanley Tan, Mayukh Chakrabarti, and Trent E. Balius
This is a work in progress...
Here we describe docking with receptor desolvation.
This has been tested using GIST or 3D-RISM.
See the Shoichet Lab wiki for how to run DOCK3.7 with GIST:
Software requirements
- UCSF Chimera (for preparing the protein for docking)
- Amber22 and Ambertools23 (for running the MD simulation, and for GIST and 3D-RISM calculations)
- DOCK 6.12 (for docking, not released yet)
Organizing file directories
6GJ8_rec_desolv_tutorial/
|-- dockprep/
+-- docking/
GIST
Prepare files for running GIST
In the dockprep directory, download the example scripts for running GIST from GitHub:
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/000.process_prepare_pdb_file.csh
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/001.run_tleap_reduce.csh
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/002.pmemd_cuda_wrapper_mcwat_rec.csh
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/003.cpptraj_mk_ref.csh
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/004.align_with_chimera_gist_conf.csh
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/005.cpptraj_full_gist_rec_parallel.csh
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/006.copy_and_combine_gist.csh
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/007.gist_cap_blurr.csh
The scripts will need to be modified.
The scripts should be run in order.
Running the MD simulation
The protein is placed in a box of water. We restrain the heavy atoms of the protein and allow the waters to move and sample about the protein.
We perform a multi-step equilibration protocol of minimization and molecular dynamics simulation.
We then perform a NVT simulation. We use NVT in part because of the computational benefits.
To run the MD simulation, run the 002.pmemd_cuda_wrapper_mcwat_rec.csh script.
Align to the simulation frame
Because rotating the frame will break the periodicity, you should not rotate the frame during alignment.
To dock using the GIST grid, the original structure must be aligned to the starting frame of the simulation. This will also allow you to align the ligand.
If you do not have a ligand in the pocket of interest, we recommend running sphgen on the protein surface. Examine the sphere clusters produced by sphgen and pick the clusters that define the pocket of interest. You can then convert the spheres to a PDB file and use them as the xtal-lig file.
To align to the simulation frame, run the 003.cpptraj_mk_ref.csh and 004.align_with_chimera_gist_conf.csh scripts. The 003.cpptraj_mk_ref.csh script creates a reference PDB file in the simulation frame. The 004.align_with_chimera_gist_conf.csh script aligns the prepared receptor and ligand files to the reference.
Running the GIST calculation
Note that the box size matters, DOCK will not score poses outside of the GIST grid. To ensure that changes in enrichment are not due to the change in box size, the GIST box should be larger than the VDW box. Because the box size changes after blurring, you might want to pad the box more to ensure that the box is still large enough after blurring.
Blurr the GIST grids
Blurry GIST is a way of side-stepping the double counting issue.
Prepare the aligned receptor for docking
As mentioned above you need to use the original structure aligned to the starting frame of the simulation. This is because if you rotate the frame of the simulation it will disrupt the periodic conditions and the GIST calculation will be altered. Note that the frame matters, translating or rotating the frame will change the docking behavior (i.e. docking to the receptor aligned to the simulation frame will produce different, albeit similar, results as docking to the original receptor).
In the dockprep directory, download the scripts to prepare the system for docking from GitHub by running the following wget commands:
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/008.blastermaster_gist_aligned.csh
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/009.convert_dock3_to_dock6.csh
3D-RISM
3D-RISM is an alternative method for calculating ...
We can use 3D-RISM grids as a direct substitute for GIST.
The process for running 3D-RISM is adapted from 3D-RISM calculations on factor Xa described in work by Nguyen et. al. and corresponding data.
Prepare files for running 3D-RISM
For the purpose of this tutorial, we will run the 3D-RISM calculation on the receptor aligned to the simulation frame in order to directly compare the performance of the GIST grids and the 3D-RISM grids. However, the 3D-RISM calculation does not require running a MD simulation and does not alter the frame. If you only want to run 3D-RISM ...
In the dockprep directory, download the scripts and files to run 3D-RISM from GitHub by running the following wget commands:
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/cTIP3P_pse3.xvv
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/010.calc_3drism.csh
wget https://raw.githubusercontent.com/tbalius/teb_docking_test_sets/main/scripts_for_tutorial/scripts_for_2024.02.01.6GJ8_rec_desolv/011.blurr_3drism_small_box.csh
Running the 3D-RISM calculation
The 3D-RISM parameters provided are modified for the receptor preparation given in this tutorial. Using a different system, or even a different receptor preparation, may result in convergence issues. If you are using a different system, try the default MDIIS settings first. If the calculation fails due to convergence issues using the default settings, try adjusting settings according to the Amber 2022 Reference Manual, see page 118 for documentation on 3D-RISM solution convergence.
Docking
Docking with GIST
GIST receptor desolvation is incorporated into flexible docking using Descriptor Score to combine Dock 3.5 Score (VDW, electrostatics, and ligand desolvation terms) and GIST Score (receptor desolvation term). Note that Grid Score can be combined with GIST as well, replacing Dock 3.5 Score. Grid Score only has two components, VDW and electrostatics (Coulomb's law), and does not account for ligand desolvation.
The GIST grid files, gist-EswPlus2Eww_ref_cap_blurr_1pt8.dx and gist-EswPlus2Eww_ref_cap_blurr_1pt0.dx, are generated using the script dx-gist_precalculate_sphere_gausian.py using probes with radii of 1.8 and 1.0, respectively.
Example dock.in file incorporating receptor desolvation with the blurry trilinear displacement method:
conformer_search_type flex
write_fragment_libraries no
user_specified_anchor no
limit_max_anchors no
min_anchor_size 5
pruning_use_clustering yes
pruning_max_orients 1000
pruning_clustering_cutoff 100
pruning_conformer_score_cutoff 100.0
pruning_conformer_score_scaling_factor 1.0
use_clash_overlap no
write_growth_tree no
use_internal_energy yes
internal_energy_rep_exp 12
internal_energy_cutoff 100.0
ligand_atom_file lig.mol2
limit_max_ligands no
skip_molecule no
read_mol_solvation yes
calculate_rmsd no
use_database_filter no
orient_ligand yes
automated_matching yes
receptor_site_file ${dockfiles}/matching_spheres.sph
max_orientations 1000
critical_points no
chemical_matching no
use_ligand_spheres no
bump_filter no
score_molecules yes
contact_score_primary no
grid_score_primary no
gist_score_primary no
multigrid_score_primary no
dock3.5_score_primary no
continuous_score_primary no
footprint_similarity_score_primary no
pharmacophore_score_primary no
hbond_score_primary no
internal_energy_score_primary no
descriptor_score_primary yes
descriptor_use_grid_score no
descriptor_use_multigrid_score no
descriptor_use_continuous_score no
descriptor_use_footprint_similarity no
descriptor_use_pharmacophore_score no
descriptor_use_tanimoto no
descriptor_use_hungarian no
descriptor_use_volume_overlap no
descriptor_use_gist yes
descriptor_use_dock3.5 yes
descriptor_gist_score_att_exp 6
descriptor_gist_score_rep_exp 12
descriptor_gist_score_gist_scale -0.1
descriptor_gist_score_gist_type trilinear
descriptor_gist_score_grid_file ${gistfiles}/gist-EswPlus2Eww_ref_cap_blurr_1pt8.dx
descriptor_gist_score_Hydrogen_grid_file ${gistfiles}/gist-EswPlus2Eww_ref_cap_blurr_1pt0.dx
descriptor_dock3.5_vdw_score yes
descriptor_dock3.5_grd_prefix ${dockfiles}/chem52
descriptor_dock3.5_electrostatic_score yes
descriptor_dock3.5_ligand_desolvation_score volume
descriptor_dock3.5_solvent_occlusion_file ${dockfiles}/ligand.desolv.heavy
descriptor_dock3.5_redistribute_positive_desolvation no
descriptor_dock3.5_hydrogen_desolvation_grid yes
descriptor_dock3.5_hydrogen_solvent_occlusion_file ${dockfiles}/ligand.desolv.hydrogen
descriptor_dock3.5_receptor_desolvation_score no
descriptor_dock3.5_write_atomic_energy_contrib no
descriptor_dock3.5_score_vdw_scale 1
descriptor_dock3.5_score_es_scale 1
descriptor_weight_gist_score 1
descriptor_weight_dock3.5_score 1
minimize_ligand yes
minimize_anchor yes
minimize_flexible_growth yes
use_advanced_simplex_parameters no
minimize_flexible_growth_ramp no
simplex_max_cycles 1
simplex_score_converge 0.1
simplex_cycle_converge 1.0
simplex_trans_step 1.0
simplex_rot_step 0.1
simplex_tors_step 10.0
simplex_anchor_max_iterations 500
simplex_grow_max_iterations 500
simplex_grow_tors_premin_iterations 0
simplex_final_min no
simplex_random_seed 0
simplex_restraint_min no
atom_model all
vdw_defn_file ${dock6_path}/parameters/vdw_AMBER_parm94.dock3_7.defn
flex_defn_file ${dock6_path}/parameters/flex.defn
flex_drive_file ${dock6_path}/parameters/flex_drive.tbl
ligand_outfile_prefix dock.out
write_mol_solvation yes
write_orientations no
num_scored_conformers 10
write_conformations no
cluster_conformations yes
cluster_rmsd_threshold 1.0
score_threshold 100.0
rank_ligands no
${dock6_path} is a variable (placeholder) for the DOCK 6 installation path (e.g. /home/baliuste/zzz.github/dock6)
Replace ${dockfiles} or create a symlink to the directory containing the files for docking. The directory is labeled 09.dock3todock6 by the unmodified scripts.
Replace ${gistfiles} or create a symlink to the directory containing the processed and blurred GIST grids. The directory is labeled 07.gist_cap_blurr by the unmodified scripts.
Docking with 3D-RISM
To dock with 3D-RISM, replace the two blurry GIST grids in the dock.in file with the analogous blurry 3D-RISM grids.
Replace the GIST grids:
descriptor_gist_score_grid_file ${gistfiles}/gist-EswPlus2Eww_ref_cap_blurr_1pt8.dx
descriptor_gist_score_Hydrogen_grid_file ${gistfiles}/gist-EswPlus2Eww_ref_cap_blurr_1pt0.dx
With the 3D-RISM grids:
descriptor_gist_score_grid_file ${rismfiles}/solvene_cap100_blurr_1pt8.dx
descriptor_gist_score_Hydrogen_grid_file ${rismfiles}/solvene_cap100_blurr_1pt0.dx
Replace ${rismfiles} or create a symlink to the directory containing the processed and blurred 3D-RISM grids. The directory is labeled 11.cap_smallbox_blurr_3drism by the unmodified scripts.
We use the solvation energy (solvene) grids generated by 3D-RISM, which are then processed and blurred before being used for docking. The solvene grids contain both solute-water and water-water terms, and are most analogous to the (Esw + Eww) grids used for docking with GIST.