Hi Paul,
On Tue, Jul 8, 2014 at 2:55 PM, Paul Emsley <[email protected]>
wrote:
>
> I'm struggling to understand aromatic bond assignment. Are the rings of
> flavin aromatic? I think that the answer to that is probably yes, but what
> does that mean? I thought that a 6-membered ring was considered aromatic if
> all of the bonds of the ring were aromatic. Is this correct? Should I
> instead check for aromatic systems by looking at the atoms of rings
> (instead of the bonds of rings)? The RDKit-generated SMILES string seems to
> suggest aromatic rings. I am confused.
>
Ah, the joys of aromaticity in "odd" systems.
This is one of the unusual cases where the RDKit documentation is actually
fairly complete. Here's the explanation of how aromaticity works:
http://rdkit.org/docs/RDKit_Book.html#aromaticity
For flavin, neither the rightmost ring (in your drawing) nor the central
ring are considered aromatic: neither satisfies the 4N+2 rule. (The central
ring has 7 pi electrons, the right ring has 5 pi electrons). However, the
two rings together form a conjugated ring with 10 pi electrons. This ring
is aromatic so all of the bonds involved in forming the ring are aromatic.
The bond connecting atoms C4X and C10 is not aromatic because it's not part
of an aromatic ring (it's the "bonds between aromatic atoms do not need to
be aromatic" case). This last bit about the order of that bond seems
"somewhat" pedantic, but it is important for molecules like
9,10-dihydrophenanthrene (
http://www.chemspider.com/Chemical-Structure.12515.html), where the bond
connecting the two aromatic rings is certainly not itself aromatic.
Make sense?
-greg
>
> If I take either flavin.mol or the bond orders from the chemical component
> dictionary and make an RDKit molecule and ask RDKit to assign aromaticity
> (as happens by default, I understand when using Chem.MolFromMolFile()) then
> the C4X-C10 bond is assigned as single - not aromatic, like its neighbours.
> I thought that it should be aromatic. Is that a mistake?
>
> Thanks,
>
> Paul.
>
>
> from rdkit import Chem
> m = Chem.MolFromMolFile('flavin.mol')
> for bond in m.GetBonds():
> print bond.GetBeginAtomIdx(), bond.GetEndAtomIdx(), bond.GetBondType()
>
>
>
> ------------------------------------------------------------------------------
> Open source business process management suite built on Java and Eclipse
> Turn processes into business applications with Bonita BPM Community Edition
> Quickly connect people, data, and systems into organized workflows
> Winner of BOSSIE, CODIE, OW2 and Gartner awards
> http://p.sf.net/sfu/Bonitasoft
> _______________________________________________
> Rdkit-discuss mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
>
>
------------------------------------------------------------------------------
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
_______________________________________________
Rdkit-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss