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]:
[image: image.png]
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]:
[image: image.png]
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]:
[image: image.png]
In [12]:

smiles1a = Chem.MolToSmiles(mol1a)

In [13]:

smiles1a

Out[13]:

'c1ccn2ccnc2c1'


On Fri, Nov 27, 2020 at 5:09 PM Alexis Parenty <
alexis.parenty.h...@gmail.com> 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
> Rdkit-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
>
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to