Sample Additional Ring Puckers: Difference between revisions

From DISI
Jump to navigation Jump to search
mNo edit summary
No edit summary
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:


1. Create a directory and cd into it
Sometimes you need to sample more ligand conformations when docking.  If you have a saturated ring, you may want to explore alternative ring puckering.  Here is how you can generate more ring conformations. 
 
== new script in developmental version (DOCKBASE = ~tbalius/zzz.github/DOCK) ==
 
Here are two scripts that will perform additional ring puckering on a smiles file.
 
This one is for standard docking (with spheres)
$DOCKBASE/ligand/generate/build_ligand_tautprot_smiles.sh  smi_file.smi
 
This one is for covalent docking
$DOCKBASE/ligand/generate/build_ligand_tautprot_smiles_covalent.sh smi_file.smi
 
The smiles file contain one smiles.  It should have all stereo chemistry defined and be in the right protonation and tautomerazation state. 
 
Here is a wrapper script (named wrapper_build_ligand_tautprot_smiles_cov.csh) to run this on a smiles file that contains multiple smiles. 
 
#set mountdir = `pwd`
#set
source ~tbalius/.cshrc_main
mkdir run_build_ligand_tautprot_smiles_covalent
cd run_build_ligand_tautprot_smiles_covalent
cp ../ligands.product.all.smi .
split -l 1 ligands.product.all.smi ligands.product.
ls ligands.product.??
foreach smi (`ls ligands.product.??`)
    echo $smi
    mkdir ${smi}_dir
    cd ${smi}_dir
    cp ../${smi} ${smi}.smi
    $DOCKBASE/ligand/generate/build_ligand_tautprot_smiles_covalent.sh ${smi}.smi
    cd ../
end
 
== Do it by hand ==
 
1. Create a directory and cd into it.
   mkdir ZINC000001664886  
   mkdir ZINC000001664886  
   cd ZINC000001664886  
   cd ZINC000001664886  
(note that ZINC000001664886 and ZINC000100008245  are the same molecule and both favor both substituents in axial. ZINC000100004326 has one substituents in equatorial).


2. Get the protonated smi from zinc:  
2. Get the protonated smi from zinc:  
Line 20: Line 61:


5. Split the whole mol2 file into individual conformers
5. Split the whole mol2 file into individual conformers
  sed -i 's/1  ZINC/ZINC/g' ZINC000001664886.mol2 
This command will remove the number 1 which appears before the ZINC name to make it compatible with the python scripted
you can also manually edit the file to remove this number or even manually separate the files. 
   python ~tbalius/zzz.scripts/separate_mol2_more10000_mod.py ZINC000001664886.mol2 test
   python ~tbalius/zzz.scripts/separate_mol2_more10000_mod.py ZINC000001664886.mol2 test



Latest revision as of 17:12, 20 July 2018

Sometimes you need to sample more ligand conformations when docking. If you have a saturated ring, you may want to explore alternative ring puckering. Here is how you can generate more ring conformations.

new script in developmental version (DOCKBASE = ~tbalius/zzz.github/DOCK)

Here are two scripts that will perform additional ring puckering on a smiles file.

This one is for standard docking (with spheres)

$DOCKBASE/ligand/generate/build_ligand_tautprot_smiles.sh  smi_file.smi

This one is for covalent docking

$DOCKBASE/ligand/generate/build_ligand_tautprot_smiles_covalent.sh smi_file.smi

The smiles file contain one smiles. It should have all stereo chemistry defined and be in the right protonation and tautomerazation state.

Here is a wrapper script (named wrapper_build_ligand_tautprot_smiles_cov.csh) to run this on a smiles file that contains multiple smiles.

#set mountdir = `pwd`
#set 
source ~tbalius/.cshrc_main

mkdir run_build_ligand_tautprot_smiles_covalent
cd run_build_ligand_tautprot_smiles_covalent
cp ../ligands.product.all.smi .

split -l 1 ligands.product.all.smi ligands.product.

ls ligands.product.??

foreach smi (`ls ligands.product.??`)
    echo $smi
    mkdir ${smi}_dir
    cd ${smi}_dir
    cp ../${smi} ${smi}.smi
    $DOCKBASE/ligand/generate/build_ligand_tautprot_smiles_covalent.sh ${smi}.smi
    cd ../
end

Do it by hand

1. Create a directory and cd into it.

 mkdir ZINC000001664886 
 cd ZINC000001664886 

(note that ZINC000001664886 and ZINC000100008245 are the same molecule and both favor both substituents in axial. ZINC000100004326 has one substituents in equatorial).

2. Get the protonated smi from zinc:

 http://zinc15.docking.org/protomers/342955170/ 

Copy to clipboard and past it into a file add the zinc name to file, so that it looks like this:

   CC1CCC([NH3+])CC1  ZINC000001664886

Or copy the protonated smiles into the current directory if you already generated protomers:

 cp ../../normal_db2_gen/isomers/manual_gen/ZINC000001664886/ZINC000001664886.ism .
 awk '{print $1" "$2}' ZINC000001664886.ism > ZINC000001664886.smi

3. For each isomer, give it a suffix, like _1, _2.

 vim ZINC000001664886.smi

4. run corina with enhanced sampling of ring puckers

 /nfs/soft/corina/current/corina -i t=smiles -o t=mol2 -d rc,flapn,de=10,mc=10,wh ZINC000001664886.smi ZINC000001664886.mol2

5. Split the whole mol2 file into individual conformers

 sed -i 's/1  ZINC/ZINC/g' ZINC000001664886.mol2  

This command will remove the number 1 which appears before the ZINC name to make it compatible with the python scripted you can also manually edit the file to remove this number or even manually separate the files.

 python ~tbalius/zzz.scripts/separate_mol2_more10000_mod.py ZINC000001664886.mol2 test

6. Run build_ligand_mol2 for each mol2 conformer

 foreach name (`ls ZINC000001664886*_test_*.mol2`)
    mkdir $name:t:r
    cd $name:t:r
    cp ../${name} .
    $DOCKBASE/ligand/generate/build_ligand_mol2.sh $name
    cd ../
 end