Skip to content

Unexpected EnumerateStereoisomers() result unless sanitize during MolFromSmiles()? #7197

Discussion options

You must be logged in to vote

[Edited 14.03.2024]
@someonetookmyname the RDKit does not do stereochemistry perception if you don't do sanitization or remove Hs, so you have to call Chem.AssignStereochemistry() yourself:

>>> smiles = 'C/C=C/C'
>>> ps = Chem.SmilesParserParams()
>>> ps.removeHs = False
>>> ps.sanitize = False
>>> m = Chem.MolFromSmiles(smiles,ps)
>>> Chem.SanitizeMol(m)
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_NONE
>>> Chem.AssignStereochemistry(m)
>>> from rdkit.Chem import EnumerateStereoisomers
>>> isos = list(EnumerateStereoisomers.EnumerateStereoisomers(m))
>>> len(isos)
1

Replies: 1 comment 3 replies

Comment options

You must be logged in to vote
3 replies
@someonetookmyname
Comment options

@greglandrum
Comment options

@someonetookmyname
Comment options

Answer selected by someonetookmyname
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants