Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chiral Ligand Poses Differ Between CCD or SMILES Inputs #110

Open
rjrich opened this issue Dec 18, 2024 · 2 comments
Open

Chiral Ligand Poses Differ Between CCD or SMILES Inputs #110

rjrich opened this issue Dec 18, 2024 · 2 comments

Comments

@rjrich
Copy link

rjrich commented Dec 18, 2024

I have a pair of enantiomeric ligands. Only the (R)-isomer is available as a CCD. If I run the prediction for both the (R)- and (S)-isomers using SMILES for both, the poses are superposed and in a site distant from published results for the (R)-isomer. If I run the prediction with the (R)-isomer on its own as a CCD, the pose is in good agreement with published results. Finally, if I run the prediction with the (R)-isomer on its own as a SMILES string, the pose is in the same apparently erroneous site as obtained when running both isomers as SMILES strings. I have triple-checked the CCD and SMILES structures, and they are correct. Suggestions? Thanks!

@gcorso
Copy link
Collaborator

gcorso commented Dec 22, 2024

Hi, @rjrich could you run the predictions with multiple samples to verify this indeed happens for all the samples?

Unfortunately, however, it is indeed possible that the predictions of the model differ when using CCD and SMILES strings because the model takes as input the atom names which are assigned in the CCD for ligands with CCD code and assigned using RDKit for ligands from SMILES strings. We have not seen a lot of difference in our own test cases but it is possible that sometime the poses differ.

@kjogr12
Copy link

kjogr12 commented Dec 27, 2024

I have also encountered the same bug. I performed calculations using both ATP (Case 1 input SMILES) and its enantiomer (Case 2 input SMILES) as inputs, but the outputs give the same stereochemistry as in Case 1.
Case 1 is the correct output, while Case 2 is the incorrect output.

Here are the examples:

Case1(Correct):
- input SMILES:Nc1ncnc2c1ncn2[C@@H]1O[C@H](COP(=O)(O)OP(=O)(O)OP(=O)(O)O)[C@@H](O)[C@H]1O
- output structure SMILES:Nc1ncnc2c1ncn2[C@@H]1O[C@H](COP(=O)(O)OP(=O)(O)OP(=O)(O)O)[C@@H](O)[C@H]1O
Case2(Incorrect):
- input SMILES:Nc1ncnc2c1ncn2[C@H]1O[C@@H](COP(=O)(O)OP(=O)(O)OP(=O)(O)O)[C@H](O)[C@@H]1O
- output structure SMILES:Nc1ncnc2c1ncn2[C@@H]1O[C@H](COP(=O)(O)OP(=O)(O)OP(=O)(O)O)[C@@H](O)[C@H]1O

The behavior of outputting one of the stereoisomers has been observed with other SMILES that have chiral centers as well.

This is a really great tool, and I would love to know the solution to this issue. If it is a bug, I hope it can be identified and resolved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants