Hi RDKiters,

I am trying to build reaction SMARTS that encode inversion of chirality.

However, I get different results (inversion of chirality done, vs. fail) 
depending of the order in which the atoms are given in the SMARTS reaction 
string. Below a toy example:

# 2 different ways to depict a same reaction (L-lactate to D-lactate)
rsmarts1 = 
'[#8:6]-[#6@:2](-[#1:8])(-[#6:3](-[#8-:5])=[#8:4])-[#6:1]>>[#8:6]-[#6@@:2](-[#1:8])(-[#6:3](-[#8-:5])=[#8:4])-[#6:1]'
rsmarts2 = 
'[#1:8]-[#6@@:2](-[#6:1])(-[#8:6])-[#6:3](-[#8-:5])=[#8:4]>>[#1:8]-[#6@:2](-[#6:1])(-[#8:6])-[#6:3](-[#8-:5])=[#8:4]'
rxn1 = AllChem.ReactionFromSmarts(rsmarts1)
rxn2 = AllChem.ReactionFromSmarts(rsmarts2)
rxn1.Initialize()
rxn2.Initialize()

# Reactions SMILES of the reactions are the same
assert AllChem.ReactionToSmiles(rxn1) == AllChem.ReactionToSmiles(rxn2)
# OK

# Let's apply the reaction on L- and D-lactate
llac = Chem.MolFromSmiles('C[C@H](O)C([O-])=O')
llac = Chem.AddHs(llac)

# rsmarts1 depiction: successful inversion of chirality
ps = rxn1.RunReactants((llac,))
print('rxn1', len(ps))
print('Sub ', Chem.MolToSmiles(llac))
print('Prod', Chem.MolToSmiles(ps[0][0]))
# Sub  [H]O[C@]([H])(C(=O)[O-])C([H])([H])[H]
# Prod [H]O[C@@]([H])(C(=O)[O-])C([H])([H])[H]

# rsmarts2 depiction: inversion of chirality fail
ps = rxn2.RunReactants((llac,))
print('rxn2', len(ps))
print('Sub ', Chem.MolToSmiles(llac))
print('Prod', Chem.MolToSmiles(ps[0][0]))
# Sub  [H]O[C@]([H])(C(=O)[O-])C([H])([H])[H]
# Prod [H]O[C@]([H])(C(=O)[O-])C([H])([H])[H]

Did I make a mistake somewhere, or is there something additional to do in order 
to make inversion of chirality working in all cases? I am using the last stable 
conda version of rdkit (2018.03.2.0).

Thank you by advance for any clue,
Best wishes,
Thomas
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Rdkit-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to