Menu

#905 SMILES Structure is dependend on previous molecules

2.3.x
closed
nobody
1
2014-03-15
2013-11-26
No

I just found, that obabel 2.3.1 generated a wrong structure out of the following SMILES
O=CC(c(cccc1)c1)=C(c(cccc2)c2)

This should produce an alpha,beta-unsaturated carbonyle with one phenyl-group on alpha C and one phenyl-ring on beta C.

Instead, both phenyl-rings were placed on beta C while the alpha C recived a Hydrogen. I.e. the obabel command produces something like this:
O=CC=C(c(cccc1)c1)c(cccc2)c2

The problem was solved by writing the SMILES in a different way:
O=CC(=C(c(cccc1)c1))(c(cccc2)c2)

However, this problem only occured, when the SMILES was perceeded by the SMILES of a compound with both phenyl-rings placed on beta C.

Version: Open Babel 2.3.1 -- Nov 24 2011 -- 09:47:18
Reproducibility: Always
How to reproduce:

  1. Create a file A_file.smi
O=CC=C(c(cccc1)c1)c(cccc2)c2    Mol_Trigger
O=CC(c(cccc2)c2)=C(c(cccc1)c1)    Mol_Wrong
O=CC(=C(c(cccc1)c1))(c(cccc2)c2)    Mol_OK
  1. obabel -ismi A_file.smi -ocom -m -O A_file.com --gen3d

  2. Mol_Wrong (A_file2.com) is essentially identical to Mol_Trigger (A_file1.com)

  3. Copy A_file.smi to B_file.smi and remove the first line (Mol_Trigger) from it

  4. obabel -ismi B_file.smi -ocom -m -O B_file.com --gen3d

  5. Mol_Wrong (B_file1.com) is now a different conformer of Mol_OK (B_file2.com)

Discussion

  • Noel O'Boyle

    Noel O'Boyle - 2013-11-29

    I don't see this problem with the current development code. I just see that Mol_Wrong and Mol_OK are different cis/trans tautomers. Have you tried updating to OB 2.3.2 and seeing whether this fixes the problem?

     
  • Geoff Hutchison

    Geoff Hutchison - 2014-03-15
    • status: open --> closed
     
  • Geoff Hutchison

    Geoff Hutchison - 2014-03-15

    I'm closing this. It works for me, and the Wrong and OK forms don't have cis/trans of the double bond indicated. Certainly there's nothing "wrong" with either 2.3.2 or the development version.

    Please update and re-file the bug if it still occurs.