Ok cool!  I did actually just run into an issue while doing some tests: 
https://github.com/rdkit/rdkit/issues/2183.  This issue brings up a question 
for me about where the smiles writer actually looks for stereochem info when it 
decides what to write.

Also, I ran into the same snag earlier too Dan!

- Kovas

From: Dan Nealschneider <dan.nealschnei...@schrodinger.com>
Date: Tuesday, December 4, 2018 at 10:05 AM
To: "col...@gmail.com" <col...@gmail.com>
Cc: Kovas Palunas <kovas.palu...@arzeda.com>, rdkit discuss 
<rdkit-discuss@lists.sourceforge.net>
Subject: Re: [Rdkit-discuss] Double Bond Stereochemistry in the RDKit

I've done some in-memory translation of molecules to ROMols, and have used #2 
without major problems. I do remember needing to make sure that the stereoatoms 
are in the correct order - that is, that the first stereoatom is bonded to the 
beginAtom of the bond. In Python, this is something like:

bond = mol.GetBondBetweenAtoms(begin, end)
if bond.GetBeginAtomIdx() != begin:
     assert bond.GetBeginAtomIdx() == end
     stereoatom1, stereoatom2 = stereoatom2, stereoatom1
bond.SetStereoAtoms(stereoatom1, stereoatom2)
bond.SetStereo(stereo)

- dan nealschneider

(né wandschneider)

Senior Developer
Schrödinger, Inc
Portland, OR



On Tue, Dec 4, 2018 at 7:02 AM Brian Cole 
<col...@gmail.com<mailto:col...@gmail.com>> wrote:
Hi Kovas,

For your use-case #2 should suffice, "set STEREOCIS/STEREOTRANS tags + manually 
set stereo atoms". This is what the EnumerateStereoisomers code does: 
https://github.com/rdkit/rdkit/blob/master/rdkit/Chem/EnumerateStereoisomers.py#L38

As to what is the 'ground truth', that is a more difficult question that I fear 
the answer may be 'none of them'. STEREOCIS/STEREOTRANS are rather recent 
additions to the RDKit API, while we strived to make sure STEREOCIS/STEREOTRANS 
across the RDKit, there are probably looming bugs in untested parts of the 
RDKit that don't handle them properly. However, I think those other APIs should 
be fixed to handle them properly, so please do report any problems you spot 
into the github issue tracker.

Cheers,
Brian



On Mon, Dec 3, 2018 at 7:00 PM Kovas Palunas 
<kovas.palu...@arzeda.com<mailto:kovas.palu...@arzeda.com>> wrote:
Hi All,

I’m looking for a bit more clarity regarding double bond stereochem in RDKit.  
Currently, my understanding is that there are 3 ways to currently store this 
information:


  1.  STEREOE/STEREOZ tags + stereo atoms on either side of bond set by CIP 
ranks, as computed when calling MolFromSmiles to make a new molecule or 
AssignStereochemistry on an existing molecule
  2.  Manually set STEREOCIS/STEREOTRANS tags + manually set stereo atoms
  3.  ENDUPRIGHT/etc. single bond directionality tags, which are set when 
reading a molecule from smiles/inchi/mol file

Is one of these methods the “ground truth” that is looked for by RDKit 
functions that care about this info, like the substructure matching code or the 
SMILES writing code?

I am currently working on code that mutates molecules using a predetermined 
list of changes to be made to the molecule.  I’d like to be able to include 
bond stereochemistry changing/creation/destruction here, and was thinking of 
doing so using the STEREOCIS/STEREOTRANS tags (and also providing the reference 
stereo atoms).  Before I do this I want to make sure that molecules with these 
tags will be handled correctly by other RDKit functions downstream.  Would 
these tags be a good choice here?  Are there any caveats I should keep in mind 
as I work with this information?

Thanks!

- Kovas

_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net<mailto:Rdkit-discuss@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net<mailto: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

Reply via email to