[Rdkit-discuss] Gobbi hydrogen bond acceptor definition
Open-Source Cheminformatics and Machine Learning
Brought to you by:
glandrum
|
From: Konrad K. <kon...@ic...> - 2016-04-30 14:37:41
|
Hi All, The following is a relatively minor point, but IMHO, the Gobbi hydrogen bond acceptor definition probably should be modified so that only aromatic nitrogen atoms with two and not three non-hydrogen attachments are considered as acceptors. For example, the aromatic nitrogen atom pyridine is an acceptor whereas the nitrogen in indole or N-methylindole is not. Also fluorine atoms (see https://doi.org/10.1016/0040-4020(96)00749-1 <http://dx.doi.org/10.1016/0040-4020(96)00749-1>) do not appear to be good acceptors. In addition, thiophenes are very questionable acceptors. Hence in: in ~/envs/my-rdkit-env/lib/python2.7/site-packages/rdkit/Chem/Pharm2D/Gobbi_Pharm2D.py I have made the following modification: # Replaced the following line to the next line: # DefineFeature Acceptor [$([O,S;H1;v2]-[!$(*=[O,N,P,S])]),$([O,S;H0;v2]),$([O,S;-]),$([N&v3;H1,H2]-[!$(*=[O,N,P,S])]),$([N;v3;H0]),$([n,o,s;+0]),F] DefineFeature Acceptor [$([O,S;H1;v2]-[!$(*=[O,N,P,S])]),$([O,S;H0;v2]),$([O,S;-]),$([N&v3;H1,H2]-[!$(*=[O,N,P,S])]),$([N;v3;H0]),$([n;D2;H0;+0]),$([o;+0]] Cheers, Konrad After modifying Gobbi_Pharm2D.py, the following test script gives: from rdkit import Chem, DataStructs from rdkit.Chem import ChemicalFeatures from rdkit.Chem.Pharm2D.SigFactory import SigFactory from rdkit.Chem.Pharm2D import Gobbi_Pharm2D,Generate mol = Chem.MolFromSmiles('Cn1ccc2ccccc21’) # N-methylindole bi = {} fp = Generate.Gen2DFingerprint(mol,Gobbi_Pharm2D.factory,bitInfo=bi) onbits = fp.GetOnBits() for onbit in onbits: print onbit, Gobbi_Pharm2D.factory.GetBitDescription(onbit), bi[onbit] output: 77 AR HD |0 0|0 0| [[(3,), (0,)]] mol = Chem.MolFromSmiles('c1ncccc1C’) # 2-methylpyridine output: 63 AR BG |0 0|0 0| [[(5,), (1,)]] 70 AR HA |0 0|0 0| [[(5,), (1,)]] |