Hi Paolo,

Hmmm, I think this is displaying a bug (or at the very least unexpected 
behaviour) in the aromaticity code. The issue isn’t the aromaticity of the 
imidazole/dihydroimidazole, but the aromaticity of the pyridyl. Alexis’ second 
molecule is identical to the first except that one bond in the 5-membered ring 
was broken, and that (to my eyes at least) should not affect whether the 
6-membered ring is seen as aromatic.

Regards,
Mark.

From: Paolo Tosco <[email protected]>
Sent: 27 November 2020 17:04
To: Alexis Parenty <[email protected]>
Cc: RDKit Discuss <[email protected]>
Subject: Re: [Rdkit-discuss] canonicalization of two aromatic molecules 
returning two different forms (kekule and aromatic)

Hi Alexis,

The second molecule (smiles2) is indeed aromatic, but the first (smiles1) is 
not, as the imidazole ring condensed to the pyridine is partially saturated.
The smiles1a analogue where I have added a double bond is aromatic, and upon 
canonicalization it yields an aromatic SMILES as expected.

Cheers,
p.


from rdkit import Chem
In [2]:

mol1 = Chem.MolFromSmiles("N12C=CC=CC1=NCC2")
In [3]:

mol1
Out[3]:
[cid:[email protected]]
In [4]:

smiles1 = Chem.MolToSmiles(mol1)
In [5]:

smiles1
Out[5]:

'C1=CC2=NCCN2C=C1'
In [6]:

mol2 = Chem.MolFromSmiles("CN=C1C=CC=CN1C")
In [7]:

mol2
Out[7]:
[cid:[email protected]]
In [8]:

smiles2 = Chem.MolToSmiles(mol2)
In [9]:

smiles2
Out[9]:

'CN=c1ccccn1C'








In [10]:

mol1a = Chem.MolFromSmiles("N12C=CC=CC1=NC=C2")
In [11]:

mol1a
Out[11]:
[cid:[email protected]]
In [12]:

smiles1a = Chem.MolToSmiles(mol1a)
In [13]:

smiles1a
Out[13]:

'c1ccn2ccnc2c1'

On Fri, Nov 27, 2020 at 5:09 PM Alexis Parenty 
<[email protected]<mailto:[email protected]>> wrote:
Hi everyone,

Why is it that when I canonicalize the following smiles_1 I get its unexpected 
kekule form, whereas when I canonicalize a similar smiles_2, I get its expected 
aromatic form?

From rdkit import Chem
smiles1 = Chem.CanonSmiles("N12C=CC=CC1=NCC2")
smiles
==> 'C1=CC2=NCCN2C=C1'

smiles2 = Chem.CanonSmiles("CN=C1C=CC=CN1C")
smiles2
==> 'CN=c1ccccn1C'

I would like to get the aromatic form in both cases... Is there a way to force 
the aromatic form?

Best,
Alexis
_______________________________________________
Rdkit-discuss mailing list
[email protected]<mailto:[email protected]>
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
_______________________________________________
Rdkit-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to