You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Embedding a TMC SMILES with an octahedral chiral tag and permutation number results in incorrect permutation of ligands.
When embedding the same SMILES multiple times, the resulting 3D structure seems to randomly alternate between two different ligand permutations.
Canonicalization of some TMC SMILES changes the permutation tag every time the SMILES is canonicalized.
To Reproduce
Embedding
Embed the OH1 example from the Support for non-tetrahedral atomic stereochemistry section of the RDKit book multiple times.
The embedding will alternate between the OH1 and OH2 permutations.
We start with a non-canonical SMILES. Canonicalization of this leads to one permutation. Reading a new mol object from that and writing that to SMILES results in a new permutation tag.
None of the canonicalized SMILES correspond to the starting structure.
When embedding the same SMILES multiple times, the 3D structure should be identical. Ligands should not be permuted.
The specified stereochemistry of a canonicalized SMILES should correspond to the input SMILES stereochemistry.
Screenshots
Embedding
Images of the two structures (OH1,OH2) obtained when embedding an OH1 SMILES multiple times as shown above:
First possible embedding
Second possible embedding
We observe the same behavior for other pairs: (OH3/OH16), (OH27/OH28), (OH21/OH22) etc ....
We can see that in NontetrahedralStereo.cpp these pairs have the same entries in octahedral_across, which might be related.
Canonicalization
Example of the canonicalization affecting the embedding of a SMILES with specified stereochemistry.
One axial CO ligand switches to an equatorial position.
Configuration:
RDKit version: 2024.03.3 (Has also been tested on 2022.09.5 and 2024.09.1 with the same outcome)
OS: Ubuntu 22.04.5
Python version: 3.10.14
RDKit installed from conda
Additional context
This seems to relate to functionality introduced with commit : cd74dc2.
Potentially the issue is addressed with this recently merged PR: #6777
The text was updated successfully, but these errors were encountered:
Describe the bug
Two potentially related issues:
Embedding a TMC SMILES with an octahedral chiral tag and permutation number results in incorrect permutation of ligands.
When embedding the same SMILES multiple times, the resulting 3D structure seems to randomly alternate between two different ligand permutations.
Canonicalization of some TMC SMILES changes the permutation tag every time the SMILES is canonicalized.
To Reproduce
Embedding
Embed the OH1 example from the Support for non-tetrahedral atomic stereochemistry section of the RDKit book multiple times.
The embedding will alternate between the OH1 and OH2 permutations.
Canonicalization
We start with a non-canonical SMILES. Canonicalization of this leads to one permutation. Reading a new mol object from that and writing that to SMILES results in a new permutation tag.
None of the canonicalized SMILES correspond to the starting structure.
Expected behavior
Screenshots
Embedding
Images of the two structures (OH1,OH2) obtained when embedding an OH1 SMILES multiple times as shown above:
First possible embedding
Second possible embedding
We observe the same behavior for other pairs: (OH3/OH16), (OH27/OH28), (OH21/OH22) etc ....
We can see that in NontetrahedralStereo.cpp these pairs have the same entries in octahedral_across, which might be related.
Canonicalization
Example of the canonicalization affecting the embedding of a SMILES with specified stereochemistry.
One axial CO ligand switches to an equatorial position.
Configuration:
Additional context
This seems to relate to functionality introduced with commit : cd74dc2.
Potentially the issue is addressed with this recently merged PR: #6777
The text was updated successfully, but these errors were encountered: