-
Notifications
You must be signed in to change notification settings - Fork 0
005 Chemical Preparation
I will literally begin every docking project with this protocol as a preliminary.
- Calculate all properties
- Standardize molecules
- Enumerate Tautomer, Stereoisomer, Charges, Conformers
- List of possible properties can be viewed by mouse click
Chemistry > Calculate Properties
. Many properties should be pre-calculated and inspected if necessary. They can also be filtered after docking. - Hydrogen and Charge Groups: Some chemical moiety could carry questionable charge group (e.g. is there a hydrogen on phosphate?). Building of these hydrogen should be inspected with careful SAR analysis. Hydrogens can be built systematically by altering pH
- ICM also has nice built-in to visualise the chemical space. Most of these algorithm are quick and robust.
- https://molsoft.com/gui/chemical-spreadsheets.html
modify t.mol delete salt modify t.mol delete salt simple delete hydrogen t.mol modify t.mol auto standardizeTautomers t.mol
add column t function="Nof_Chirals(mol,'any')" index=2 name="nof_Chirals" append
add column t function="Nof_Fragments(mol,'')" index=2 name="nof_Fragments" append
add column t function="Nof_Molecules(mol)" index=2 name="nof_Molecules" append
add column t function="Nof_Atoms(mol,'')" index=2 name="nof_Atoms" append
add column t Find(t.mol,problem) index=2 name="badGroups" append
add column t Descriptor(t.mol,number,topology) index=2 name="topological_Descriptors" append
add column t Descriptor(t.mol,number,bond) index=2 name="bond_Counts" append
add column t Descriptor(t.mol,number,atom) index=2 name="atom_Counts" append
add column t function="Smiles(mol,'unique')" index=2 name="smiles" append
add column t function="DrugLikeness(mol)" index=2 name="drugLikeness" append
add column t function="MoldHf(mol)" index=2 name="moldHf" append format="%.2f"
add column t function="MolVolume(mol)" index=2 name="molVolume" append format="%.2f"
add column t function="MolArea(mol)" index=2 name="molArea" append format="%.2f"
add column t function="MolPSA(mol)" index=2 name="molPSA" append format="%.2f"
add column t function="MolLogS(mol)" index=2 name="molLogS" append format="%.2f"
add column t function="MolLogP(mol)" index=2 name="molLogP" append format="%.2f"
add column t function="IupacName(mol)" index=2 name="iupacName" append
add column t function="MolFormula(mol)" index=2 name="molFormula" append
add column t function="MolWeight(mol)" index=2 name="molWeight" append format="%.3f"
add column t function="predCovfunc(mol)" index=2 name="covalentProdrug_Groups" append vector
add column t function="ToxScore(mol,yes,yes)" index=2 name="tox_Score" append vector
add column t function="predictModelsCol(mol,"mcpPGPSUBST")" index=2 name="molPGPSUBST" append vector
add column t function="predictModelsCol(mol,"mcpPGPINHIB")" index=2 name="molPGPINHIB" append vector
add column t function="predictModelsCol(mol,"mcpPAMPA")" index=2 name="molPAMPA" append vector
add column t function="predictModelsCol(mol,"mcpPAINS")" index=2 name="molPAINS" append vector
add column t function="predictModelsCol(mol,"mcpLD50")" index=2 name="molLD50" append vector
add column t function="predictModelsCol(mol,"mcpHERG")" index=2 name="molHERG" append vector
add column t function="predictModelsCol(mol,"mcpHALFLIFE")" index=2 name="molHALFLIFE" append vector
add column t function="predictModelsCol(mol,"mcpCACO2")" index=2 name="molCACO2" append vector
add column t function="funcChemCloudMapMol(mol,'mol','name')" index=2 name="name" append vector
add column t function="Icm::InChi(mol,'',key)" index=2 name="inChiKey" append vector
add column t function="Icm::InChi(mol,'')" index=2 name="inChI" append vector
add column t function="Min(Icm::Predict(mol,'MolpKaAcid',only),'>14')" index=2 name="pKa_ma" append
add column t function="Max(Icm::Predict(mol,'MolpKaBase',only),'<0')" index=2 name="pKa_mb" append
add column t function="MolCharge(mol,7.0,'total')" index=2 name="molCharge_total" append
add column t function="Nof_HBD(mol)" index=2 name="nof_HBD" append
add column t function="Nof_HBA(mol,yes)" index=2 name="nof_HBA" append
add column t function="Nof_RotB(mol)" index=2 name="nof_RotB" append
add column t function="Max_Fused_Rings(mol,no)" index=2 name="max_Fused_Rings" append
add column t function="Min_Ring_Size(mol)" index=2 name="min_Ring_Size" append
add column t function="Max_Ring_Size(mol)" index=2 name="max_Ring_Size" append
add column t Find( t.mol s_icmhome + "FUNCGROUPS.sdf" problem ) name="funcgroup"
add column t Find( t.mol s_icmhome + "CHEMFILTER.sdf" problem ) name="chem_alerts"
chemCalcPKA Name( variable t.mol ) yes
enumerate charge t 7. window = 5.00 name = Name( Name( variable t ) + "_charges" unique ) t = t_charges
enumerate tautomer t.mol name = Name( Name( variable t ) + "_tauto" unique ) filter keep add column t_tauto Predict( t_tauto.mol, "MoldHf" ) name="ddHf" sort t_tauto.idx t_tauto.ddHf I_out = Min( index t_tauto.ddHf group t_tauto.idx ) t = t_tauto
enumerate chiral t.mol name = Name( Name( t table ) + "_stereo" unique ) center = 0 t = t_stereo
confGenBG t Index( t selection all ) 5 15. 1. yes no no yes no yes no "diel=" + 78.5 + " maxener=" + 10.