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:
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
obabel -ismi A_file.smi -ocom -m -O A_file.com --gen3d
Mol_Wrong (A_file2.com) is essentially identical to Mol_Trigger (A_file1.com)
Copy A_file.smi to B_file.smi and remove the first line (Mol_Trigger) from it
obabel -ismi B_file.smi -ocom -m -O B_file.com --gen3d
Mol_Wrong (B_file1.com) is now a different conformer of Mol_OK (B_file2.com)
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?
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.