DOCKovalent cysteine inhibitor design tutorial

From DISI
Revision as of 00:12, 19 July 2018 by Xiaobo wan (talk | contribs)
Jump to navigation Jump to search

This was written on April 4, 2018.

This tutorial is for designing linkers for a covalent inhibitor and is supplement the work in preparation (Wan et al 2018).


These file are in the /mnt/nfs/home/xiaobo/UCSF_scripts/2018-4-3-covlanet_lysine_wiki-tutorial


Step 1. Custom Ligand and Library Generation

1/Custom Ligand / Library Generation

cd 1-Custom-Ligand-Library-Generation

library 1:  search the acrylamide in the ZINC15 database (ask John to put your builded library in ZINC15)
login into http://zinc15.docking.org/patterns/home/, search acrylamide in pattern
found 1: Acrylamide-Terminal, [CD1]=[CD2]-C(=O)-[NX3]    Purchase is 84576
File:    /nfs/home/xiaobo/UCSF_scripts/2018-7-17-covalent_cys_wiki-tutorial/1-Custom-Ligand-Library-Generation/acrylamide/library1-70587-ZINC15-acrylamide-library.smi
db2 file in  /mnt/nfs/ex9/work/xiaobo/new_covalent_lib/acrylamides/lib1
library 2: aldehyde-based-cyanoacrylamides
Search the aldehyde from ZINC15, and only-single-aldehyde-aromatic-for-sale+bb.smi 145960
one step synthesis
       python aldehyde-to-cyanoacryl.py only-single-aldehyde-aromatic-for-sale+bb.smi
       python step3-remove_doubles.py reaction_nocorina_out.ism
File:
       /nfs/home/xiaobo/UCSF_scripts/2018-7-17-covalent_cys_wiki-tutorial/1-Custom-Ligand-Library-Generation/aldehyde-based-cyanoacrylamides/145956-aldehyde-based-cyanoacrylamides.smi
db2 file  in /mnt/nfs/ex7/work/xiaobo/new_covalent_lib/2017-6-8-cyanoacrylamide
library 3: ~184,900 Enamine acids + Boc-diamine + acrylic acid library
filter3-selected_acids_2150.smi the most common 2150 Enamine acids fro Enamine
83-Boc_diamines.smi  the most common 83 Boc from Enamine
two step synthesis
python step1-SN1-diamines-CO2H.py filter3-selected_acids_2150.smi 83-Boc_diamines.smi
python step2-reaction-acrylic-acid.py in.smi
pyton step3-remove_doubles.py in2.smi
final file: /nfs/home/xiaobo/UCSF_scripts/2018-7-17-covalent_cys_wiki-tutorial/1-Custom-Ligand-Library-Generation/acids-Boc-acrylic-acid/final-acids-Boc-acrylic-acid.smi    184900
db2 file in  /mnt/nfs/ex7/work/xiaobo/2017-6-30-acids-Boc-acrylic-acid/acd1
             /mnt/nfs/ex7/work/xiaobo/2017-6-30-acids-Boc-acrylic-acid/acd2
library 4: ~145,508 Sulfonyl Chloride + Boc-diamine + acrylaic acid library
filter4-1677.sulfonyl_chlorides.smi the most common 1677 Enamine sulfonyl_chlorides fro Enamine
83-Boc_diamines.smi  the most common 83 Boc from Enamine
two step synthesis
python SN1-diamines-CO2H.py filter4-1677.sulfonyl_chlorides.smi 83-Boc_diamines.smi
python step2-reaction-acrylic-acid.py in.smi
pyton step3-remove_doubles.py in2.smi
final file :  /nfs/home/xiaobo/UCSF_scripts/2018-7-17-covalent_cys_wiki-tutorial/1-Custom-Ligand-Library-Generation/sulfonyl_chloride_Boc-acrylic-acid/final-sulfonyl_chloride_Boc-acrylic-acid.smi
db2 file in  /mnt/nfs/ex7/work/xiaobo/2017-6-30-sulfonyl_chloride_Boc-acrylic-acid/suc1
             /mnt/nfs/ex7/work/xiaobo/2017-6-30-sulfonyl_chloride_Boc-acrylic-acid/suc2
for a single smile (single-smile-generation) addSiH3-to-dimethylamino-acrylamide
python addSiH3-to-dimethylamino-acrylamide.py input-ligand.smi
python step3-remove_doubles.py addSiH3.smi
file file: /nfs/home/xiaobo/UCSF_scripts/2018-7-17-covalent_cys_wiki-tutorial/1-Custom-Ligand-Library-Generation/single-smile-generation/no_doubles_out.ism


The no_double_out.ism was used to generate db2 file for covalent docking

log into gimel
setenv DOCKBASE /mnt/nfs/home/xiaobo/combine_docknormal_dock_covalent_3.7_and_tart/DOCK_from_githup_2016_5_27
setenv DOCKBASE /mnt/nfs/home/xiaobo/combine_docknormal_dock_covalent_3.7_and_tart/DOCK_from_githup_2016_5_27
/nfs/soft/tools/utils/qsub-slice/qsub-mr-meta -tc 50 --map-instance-script "/nfs/soft/tools/utils/qsub-slice/qsub-mr-map.sh" -s $BUILD_ENVIRONMENT -l 1 no_doubles_out.ism $DOCKBASE/ligand/generate/build_database_ligand.sh --no-db --no-solv --no-mol2 --single --covalent

Step 2 Protein preparation (different cysteine rotamers)

2/Protein preparation (different lysine rotamers)

cd 2-Protein-preparation-different-cys-rotamers

find the modification cys number in the PDB

echo "4iqy-A-AR6      A       104">>cys.list
bash step0_prepare_build_system.sh  4iqy-A-AR6

In the window of chimera, select all of the 3 cysteine rotamers and click the button of OK. Reselect all the lysine rotamers in the PDB structure, and the save to PDB format CYS-4iqy-A-AR6.pdb Then, to generate all 3 structure folds, and then automatically calculate the steric clash with nearby residues, and select the rotamer with no steric clashes. This script will also calculate the nearest atom of in the compound to the lysine NZ atom

bash ../step1_run_build_system.sh 4iqy-A-AR6
results
4iqA-A-AR6     0 contacts
4iqB-A-AR6     0 contacts
4iqC-A-AR6     1 contacts
4iqA-A-AR6     O3'     16.951
4iqB-A-AR6     O3'     16.951
Each folder contains rec.pdb and xtal-lig.pdb

For each folder

bash step1_DOCKINV.blastermaster.sh 4iqA-A-AR6  box_margin(6) 1(covalent docking)

box_margin is defined from the center of the xtal-lig.pdb file

Step 3 modify the INDOCK parameters for saving multiple poses

cd 3-modify-the-INDOCK-parameters

change the default parameters for covalent docking

 bump_rigid                   1000000000000.0
 number_save                   100
 number_write                  100
 molecules_maximum             100000
 electrostatic_scale           1.0
 vdw_scale                     1.0
 bond_len                      1.77
 bond_ang1                     124.18
 bond_ang2                     120.84
 len_range                     0.0
 len_step                      0.1
 ang1_range                    20.0
 ang2_range                    20.0
 ang1_step                     5
 ang2_step                     5
 check_clashes                 no
 per_atom_scores               yes


Step 4 run the covalent docking in gimel

cd 4-run-the-covalent-docking

contain a pharmacophore filter (exclusion criteria that ligands should form hydrogen bonds with the protein, and the ligand should form one hydrogen bond with protein)

Prepare

1)the modified INDOCK file INDOCK.bump1000000000000.pose1000.20.5.5
2)the gate residue file (define the covalent modified cys in this file )

Define in the file qsub_fix-pipeline-for-dock-and-filter.sh

 scriptsdir=
 ligdir=

Input file :

1) the list different structure folders (4iqA-A-AR6)
2) the ligand library folder name (lib1)
 bash qsub_fix-pipeline-for-dock-and-filter.sh run.list lib1

Step 5 Analysis and combine the top1 pose from different structures

 cd 5-Analysis-and-combine-the-top1-poses-from-different-structures

after the covalent docking, analyze the docking results

 bash step2-1-combine-check-job.sh lib1
      Inputfile :
      1) the ligand library folder name (lib1)

extract the docking poses (you can also use the your own scripts to process your data)

       bash step2-3-rank-poses.sh lib1
       Input file :
       1) the ligand library folder name (lib1)


Step 6 Run the minimization and MM/GBSA rescoreing

 cd 6-Run-the-minimization-and-MMGBSA-rescoring

First, check the protonation state of each linker after when using the chimera to add hydrogen second, the different H position of linkers will result in the different labelling number of the attached NH of lysine residue prepare the list for each linker containing two informations in XO44.charge.list file (default:xabs 1 1)

 bash step7_fix_prolem_resubmit_MMPBSA.minimization.sh INDOCK.bump1000000000000.pose1000.20.5.5-xo4E-A-X44-X44-meta-xaaa-1-mini_end_GB

INDOCK.bump1000000000000.pose1000.20.5.5-xo4E-A-X44-X44-meta-xaaa-1-mini_end_GB is the folder for runing minimization

after minimization, then run the AMBER MMGBSA rescoring bash step10_fix_prolem_resubmit_MMPBSA_score.sh INDOCK.bump1000000000000.pose1000.20.5.5-xo4E-A-X44-X44-meta-xaaa-1-mini_end_GB

extract the scoring number for each linker

 bash step6_resubmit.extract_GBscore.sh list

the list contains (INDOCK.bump1000000000000.pose1000.20.5.5-xo4E-A-X44-X44-meta-xaaa-1-mini_end_GB)

Step 7 analyze the final pose by chimera

 cd 7-analyze-the-final-pose-by-chimera

first sort the linker according to the MMGBSA score

 cat MMGBSA.list | sort -nk 2 >sort.MMGBSA.list
 1-extract the pose without the protein
 perl fix-step3_extract_best_score_combinepdb_after_minimize.pl sort.MMGBSA.list
 2-extract the pose with the protein
 perl fix-step4_extract_best_score_combinepdb_after_minimize_with_rec.pl sort.MMGBSA.list

using the chimera to visualize these poses and select the final linker (save to PDB file)

 save the linker viewdock state: P
 perl step0-filter_by_the_chimera.pl pdb  to extract the final poses