Working with some molecules and reactions. I just encounter that chiral
centers in smiles might not being found after applying reactions.

What I get after applying some reactions on a molecule is this smile:
C[C](C)[C]1[CH+]/C=C(\\C)CC/C=C(\\C)CC1

which actually seems to a have a chiral center in carbon 3 [C]. If I use
Chem.FindMolChiralCenters(n,force=True,includeUnassigned=True) I get an
empty list which means that there is no chiral center.

The thing is that if I add H to that Carbon 3 so it becomes [CH] it is
recognized as chiral center but with unassigned type (R or S). I tried
adding Hs using Chem.AddHs(mol) and then try again
Chem.FindMolChiralCenters() but didn't get any chiral center.

I was wondering if there is a way to recognize this chiral center even if
they are not added H and to set the proper chiral tag following some kind
of rules.

Afer applying two 1,2 hydride shift to my initial mol (
Chem.MolFromSmiles('C/C1=C\\C[C@H]([C+](C)C)CC/C(C)=C/CC1')) I get the
smiles mentioned before. So given that I had some initial chiral tag I want
to know if there is a way to recover lost chirality after reactions.

smarts used for 1,2 hydride shift: [Ch:1]-[C+1:2]>>[C+1:1]-[Ch+0:2]

mol = Chem.MolFromSmiles('C/C1=C\\C[C@H]([C+](C)C)CC/C(C)=C/CC1')
rxn  = AllChem.ReactionFromSmarts('[Ch:1]-[C+1:2]>>[C+1:1]-[Ch+0:2]')
products = list()for product in rxn.RunReactant(mol, 0):
    Chem.SanitizeMol(product[0])
    products.append(product[0])print(Chem.MolToSmiles(products[0]))

After applying this reaction twice to the product created I eventually get
this smile.

Output:'C[C](C)[C]1[CH+]/C=C(\\C)CC/C=C(\\C)CC1'

which actually is where it is supposed to be a chiral center in carbon 3

Any idea or should I report it as a bug?
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to