Hi Lukas, The stereochemistry tags that the RDKit uses in determining bond wedging (or for SMILES, generating 3D coordinates, etc.) are the ChiralTags on the atoms: CHI_TETRAHEDRAL_CW and CHI_TETRAHEDRAL_CCW. The current RDKit stereo representation is relative to the ordering of the bonds around an atom, not the ordering of neighboring atoms. So CHI_TETRAHEDRAL_CW means that when you look down the first bond towards the central atom you rotate clockwise to move from the second bond to the third.
The CIP (R/S) atomic properties are set by AssignStereochemistry() using the ChiralTags. Note that the R/S assignments are only approximate, the actual CIP rules are quite complex (great paper on this here: https://pubs.acs.org/doi/abs/10.1021/acs.jcim.8b00324) and we've not made a serious attempt to get this right. It isn't currently possible to assign CIP R/S labels to atoms and use those to set the ChiralTags. It would be possible to put together a bit of Python that can do this, but it would only be as accurate as the RDKit's assignment of CIP priorities. I can put together a demo of how to do this, but I think/hope it's not actually what you need... If you have 3D coordinates, the absolute best way to set the ChiralTags (and thus have the chiral representation correct) is to use AssignStereochemistryFrom3D(). This will set the ChiralTags on the atoms as well as assigning the CIP codes (to the extent that those are correct). Here's a gist showing how this works: https://gist.github.com/greglandrum/aa802edd1bc49ac55550452beff52d55 I hope this helps, -greg On Tue, Oct 29, 2019 at 12:13 PM Lukas Pravda <lpra...@ebi.ac.uk> wrote: > Hi guys, > > > > I got completely puzzled by stereochemistry and the way to set it in > rdkit. Among others we use rdkit to get 2D depictions. What I do in my code > is that I construct molecule from scratch and set chiral tags to > CHI_TETRAHEDRAL_CW for R, CHI_TETRAHEDRAL_CCW for S (this is the metadata > we have for each atom, where applicable), otherwise CHI_UNSPECIFIED. Then I > run sanitization on the molecule and generate images. That seems to be > working incorrectly even for simple cases: e.g.: > https://pdbe.org/chem/004 > > > > When constructing the molecule I set the stereocenter for the CA atom to > CHI_TETRAHEDRAL_CCW (S), but when I then try to perceive the R/S by > FindMolChiralCenters(force=false) it says ‘R’, so as the image. This is > wrong. I can also directly set _CIPCODE for each atom where applicable to > S/R directly (along with the chiral tags). Then the chiral atom is > perceived as S by FindMolChiralCenters(force=false), but then again the > image still says R. > > > > When I set neither the chiral tag nor the _CIPCODe and run > AssignAtomChiralTagsFromStructure() and AssignStereochemistry() on the > mol the atom under question gets atom tag CHI_TETRAHEDRAL_CW (I assume > incorrectly), the _CIPCODE is correct (S) and the image is correct > (why????) as well (attached). So my question is, how do I set > stereochemistry on individual atoms, so that it is perceived by rdkit and > is not overwritten in any subsequent step. > > > > I hope the above mentioned description makes at least some sense. If not, > I’ll try to distill a code sample for constructing this molecule from raw > data. > > > > I also reproduced the same steps on the http://pdbe.org/chem/THR, which > also gives wrong results when I set chiral tags manually (bond wedging > should not be on methyl group I assume. Interestingly here the setting > chiral atoms from the structure by rdkit gives incorrect results as well > (attached). > > > > For rdkit set tags I get > > > > CA - CHI_TETRAHEDRAL_CCW (S) – (correct) > > CB - CHI_TETRAHEDRAL_CCW (R) – (incorrect should be TETRAHEDRAL_CW - R) > > > > I’d be grateful for any piece of advice. Because I have no idea what I > have been doing wrong the whole time. > > > > My settings: > > Rdkit: 2019.09.1/2019.03.2 > > Conda: 4.7.12 > > Python 3.7.4 > > os mac 10.15 > > > > Best, > > Lukas > > > > > _______________________________________________ > 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