smarty icon indicating copy to clipboard operation
smarty copied to clipboard

Discussing the importance of 3D structure and stereochemistry

Open bannanc opened this issue 8 years ago • 5 comments

In issue #223 I introduced concerns about lacking 3-dimensional structures. The actual issue is that when you do a SMARTS or SMIRKS search on molecules without specified stereochemistry it complains with a warning (not an error) such as the one shown below.

Warning: OE3DToAtomStereo is unable to perceive atom stereo from a flat geometry on atom 7 of molecule 'MiniDrugBank_0'
Warning: OE3DToAtomStereo had a problem during OEMolToSmiles when writing 'MiniDrugBank_0'

It seems to be an issue with ambiguous stereochemistry and not just 3D coordinates. Although if it has 3D coordinates shouldn't that take care of the stereochemistry? Should we be checking for coordinates or specified stereochemistry? What tools is that important for?

bannanc avatar Mar 14 '17 20:03 bannanc

If you have 3D coordinates, you also have the stereochemistry. So, it's sufficient to just check that the coordinates are 3D (at least within the OpenEye tools, this means you have everything you need...).

I'm not aware of specific "tools" where this is a problem, but, as I see it, it's a workflow issue -- if you put together a workflow that generates a molecule from some source, then tries to assign force field parameters and use it in a simulation, it's not going to make any sense to do so if the molecule isn't 3D. Specific places where this should fail: a) Attempting to assign parameters via smarty.forcefield to a molecule without a 3D geometry should fail b) Attempting to label parameters via the labeler in smarty.forcefield for a molecule without a 3D geometry should fail c) Possibly, running SMARTY or SMIRKY on a molecule without a 3D geometry should fail? Presumably one can use chirality in SMARTS/SMIRKS (??) so 3D presumably should be needed first...

Also, charging molecules that don't have 3D geometries should fail, but that's basically covered under (a) and (b).

Basically, what I'm saying is that people will try to put molecules in from all sorts of origins, with and without 3D geometries, and we should stop them from shoving them through without 3D geometries, or what they will get later will make no sense and waste a lot of time.

davidlmobley avatar Mar 14 '17 21:03 davidlmobley

@bannanc - did that answer your question? Was there a specific problem we need to solve? Perhaps we should be updating the code to check for 3D coordinates before proceeding?

davidlmobley avatar Apr 14 '17 04:04 davidlmobley

@davidlmobley Yes, that answers my question, I think having the forcefield tools check for 3D coordinates seems the best option. SMIRKY uses the same tools so it would fail if there are no 3D coordinates.

bannanc avatar Apr 14 '17 19:04 bannanc

Did we find a way to check for 3D coordinates with openeye? I was google searching for a way to do it and this was about the 4th result.

bannanc avatar Jun 02 '17 01:06 bannanc

Yes. mol.GetDimension(), it seems. https://mobleylab.slack.com/archives/C1BRXPQ2V/p1487868126000045 https://docs.eyesopen.com/toolkits/python/oechemtk/OEChemClasses/OEMolBase.html

davidlmobley avatar Jun 02 '17 04:06 davidlmobley