Dear Sereina, I'll have a look. I suspect it might have something to do with the MMFF94 aromaticity model, but it could also be a bug. I'll get back to you later.
Cheers, p. > On 3 Aug 2016, at 08:00, Sereina <sereina.rini...@gmail.com> wrote: > > Dear all, > > I stumbled upon a - to me - rather strange behavior with > MMFFHasAllMoleculeParams(). > > I want to generate a molecule from SMILES, check if all MMFF parameters are > present, add hydrogens and generate conformers. However, the outcome (error > or not error) depends on the order of checking of the MMFF parameters and > adding hydrogens. > > Everything is fine if I first add the hydrogens: > In [1]: m = Chem.MolFromSmiles('Cc1nc(=O)c(C[NH3+])c(-c2c[nH]c3ccccc23)[nH]1') > > In [1]: m = AllChem.AddHs(m) > > Out[2]: AllChem.MMFFHasAllMoleculeParams(m) > Out[2]: True > > In [3]: AllChem.EmbedMultipleConfs(m, numConfs=100) > Out[3]: <rdkit.rdBase._vecti at 0x111761950> > > But here’s what happens when I first check the MMFF parameters: > In [4]: m = Chem.MolFromSmiles('Cc1nc(=O)c(C[NH3+])c(-c2c[nH]c3ccccc23)[nH]1') > > In [5]: AllChem.MMFFHasAllMoleculeParams(m) > Out[5]: True > > In [6]: m = AllChem.AddHs(m) > > In [7]: AllChem.EmbedMultipleConfs(m, numConfs=100) > RDKit ERROR: [08:41:02] Explicit valence for atom # 11 N, 4, is greater than > permitted > --------------------------------------------------------------------------- > ValueError Traceback (most recent call last) > <ipython-input-17-6b197697e61c> in <module>() > ----> 1 AllChem.EmbedMultipleConfs(m, numConfs=100) > > ValueError: Sanitization error: Explicit valence for atom # 11 N, 4, is > greater than permitted > > Interestingly, if I do the check first, but then remove the hydrogens before > adding hydrogens, things work again: > In [8]: m = Chem.MolFromSmiles('Cc1nc(=O)c(C[NH3+])c(-c2c[nH]c3ccccc23)[nH]1') > > In [9]: AllChem.MMFFHasAllMoleculeParams(m) > Out[9]: True > > In [10]: m = AllChem.RemoveHs(m) > > In [11]: m = AllChem.AddHs(m) > > In [12]: AllChem.EmbedMultipleConfs(m, numConfs=100) > Out[12]: <rdkit.rdBase._vecti at 0x111761a50> > > I cannot really explain the behavior. It only happens for some molecules. Is > MMFFHasAllMoleculeParams() modifying the molecule, i.e. already addying > hydrogens? > > Best, > Sereina > ------------------------------------------------------------------------------ > _______________________________________________ > Rdkit-discuss mailing list > Rdkit-discuss@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
------------------------------------------------------------------------------
_______________________________________________ Rdkit-discuss mailing list Rdkit-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rdkit-discuss