Hi,
I've found a solution that works, so I'm posting it here for posterity.
By forcing mol.SetChiralityPerceived(False) right after reading the molecule I
can get the proper behavior restored:
(3.1.0)
0 True IsChiral()
0 True HasTetrahedralStereo()
I think I can see why this can make sense, in the perspective of forcing to
keep the information in the input.
An interesting behavior worth reporting in the docs.
Thanks,
S
On 10/10/20 11:27 PM, Stefano Forli wrote:
Hi all,
we've been looking at migrating our OB2 code to OB3 and we have found differences in how
to deal with chirality, which I don't know how to sort out. I wrote the test code below,
which returns different results for "C(Br)(Cl)F" depending on the version. In
particular, with v2, the first carbon atom is:
0 True IsChiral()
0 True HasTetrahedralStereo()
while for v3:
0 False IsChiral()
0 False HasTetrahedralStereo()
While it would make more sense that no tetrahedral configuration is defined, I
would expect the atom to be perceived as chiral. I've read the latest
documentation I could find from Noel
(https://open-babel.readthedocs.io/en/latest/Stereochemistry/stereo.html) with
no success.
Since it seems that the OBMol.IsChiral() method does not exist anymore, I have
no clues on how to detect if a molecule is chiral, and if so, which atoms are
chiral.
Any suggestions?
Thanks,
S
----------
import sys
try: # 3
from openbabel import openbabel as ob
except: # 2
import openbabel as ob
print(ob.OBReleaseVersion())
conv = ob.OBConversion()
conv.SetInFormat("smi")
mol = ob.OBMol()
conv.ReadString(mol, "C(Br)(Cl)F")
try:
# not available anymore in OB3
print(mol.IsChiral(), "IsChiral()")
except:
pass
facade = ob.OBStereoFacade(mol, True)
for a in ob.OBMolAtomIter(mol):
idx = a.GetId()
print(idx, a.IsChiral(), "IsChiral()")
print(idx, facade.HasTetrahedralStereo(idx), "HasTetrahedralStereo()")
----------
--
Stefano Forli, PhD
Assistant Professor
Dept. of Integrative Structural
and Computational Biology, MB-112A
Scripps Research
10550 North Torrey Pines Road
La Jolla, CA 92037-1000, USA.
tel: +1 (858)784-2055
email: [email protected]
http://www.scripps.edu/faculty/forli/
_______________________________________________
OpenBabel-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbabel-discuss