BUG: Nitrogen chirality

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

BUG: Nitrogen chirality

Sam Tonddast-Navaei
Hello everyone,

 I was trying to filter through the SMILES with missing stereochemistry information. So I am using the below script to loop over the atoms and check if the atom is a chiral center and if so, is the stereochemistry information there or not.

mol = pybel.readstring('smi', smi)
                facade = ob.OBStereoFacade(mol.OBMol)
                for atom in mol:
                        idx = atom.OBAtom.GetIdx()-1
                        if facade.HasTetrahedralStereo(idx) and not facade.GetTetrahedralStereo(idx).GetConfig().specified:

It works for many cases, but I have figured out that in many cases like the attached picture, though the stereochemistry of nitrogen is presented, it will still get marked as none (facade.GetTetrahedralStereo(idx).GetConfig().specified returns False). I have scanned over 700k molecules and figured out that this happens to only nitrogens that are in the ring. Just wanted to report this and ask if anyone had a similar issue.

Thanks,
Sam
Inline image 1 

------------------------------------------------------------------------------

_______________________________________________
OpenBabel-discuss mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Reply | Threaded
Open this post in threaded view
|

Re: BUG: Nitrogen chirality

Geoff Hutchison
There's currently no code to test for chiral nitrogens - the stereochemical analysis assumes all nitrogens can invert and are therefore non-chiral.

Would you be willing to upload this example as a SMILES or Mol to the issue tracker for 2.4.1?

Thanks!
-Geoff


On Sep 16, 2016, at 6:28 PM, Sam Tonddast-Navaei <[hidden email]> wrote:

Hello everyone,

 I was trying to filter through the SMILES with missing stereochemistry information. So I am using the below script to loop over the atoms and check if the atom is a chiral center and if so, is the stereochemistry information there or not.

mol = pybel.readstring('smi', smi)
                facade = ob.OBStereoFacade(mol.OBMol)
                for atom in mol:
                        idx = atom.OBAtom.GetIdx()-1
                        if facade.HasTetrahedralStereo(idx) and not facade.GetTetrahedralStereo(idx).GetConfig().specified:

It works for many cases, but I have figured out that in many cases like the attached picture, though the stereochemistry of nitrogen is presented, it will still get marked as none (facade.GetTetrahedralStereo(idx).GetConfig().specified returns False). I have scanned over 700k molecules and figured out that this happens to only nitrogens that are in the ring. Just wanted to report this and ask if anyone had a similar issue.

Thanks,
Sam
<example.jpg> 
------------------------------------------------------------------------------
_______________________________________________
OpenBabel-discuss mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openbabel-discuss


------------------------------------------------------------------------------

_______________________________________________
OpenBabel-discuss mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Reply | Threaded
Open this post in threaded view
|

Re: BUG: Nitrogen chirality

Sam Tonddast-Navaei
Geoff,
 
 I will complies a list of SMILES and will post it to the issue tracker.

Thanks,
Sam

On Sat, Sep 17, 2016 at 12:33 PM, Geoffrey Hutchison <[hidden email]> wrote:
There's currently no code to test for chiral nitrogens - the stereochemical analysis assumes all nitrogens can invert and are therefore non-chiral.

Would you be willing to upload this example as a SMILES or Mol to the issue tracker for 2.4.1?

Thanks!
-Geoff


On Sep 16, 2016, at 6:28 PM, Sam Tonddast-Navaei <[hidden email]> wrote:

Hello everyone,

 I was trying to filter through the SMILES with missing stereochemistry information. So I am using the below script to loop over the atoms and check if the atom is a chiral center and if so, is the stereochemistry information there or not.

mol = pybel.readstring('smi', smi)
                facade = ob.OBStereoFacade(mol.OBMol)
                for atom in mol:
                        idx = atom.OBAtom.GetIdx()-1
                        if facade.HasTetrahedralStereo(idx) and not facade.GetTetrahedralStereo(idx).GetConfig().specified:

It works for many cases, but I have figured out that in many cases like the attached picture, though the stereochemistry of nitrogen is presented, it will still get marked as none (facade.GetTetrahedralStereo(idx).GetConfig().specified returns False). I have scanned over 700k molecules and figured out that this happens to only nitrogens that are in the ring. Just wanted to report this and ask if anyone had a similar issue.

Thanks,
Sam
<example.jpg> 
------------------------------------------------------------------------------
_______________________________________________
OpenBabel-discuss mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openbabel-discuss



------------------------------------------------------------------------------

_______________________________________________
OpenBabel-discuss mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openbabel-discuss