Wedge/Hash Bond Changed by Open Babel

Q

Why some Wedge/Hash Bonds are Changed by Open Babel?

✍: FYIcenter.com

A

Sometimes, you may have an Wedge/Hash bond in the input data to specify a stereo center. When you convert the input data with Open Babel, you will see that the stereo center is identified with a different Wedge/Hash bond.

For example, the following SDF/Mol file, L-Alanin-2D.sdf, specifies atom #2 as a stereo center with a wedge bond, #1, connecting the stereo center to atom "N".

L-Alanin
FYICenter.com
2D Stereoinformation: Stereo Code
  6  5  0  0  1  0  0  0  0  0999 V2000
    3.6373    2.1000    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
    2.4249    1.4000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    2.4249    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.2124    2.1000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.2124    3.5000    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
    0.0000    1.4000    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
  2  1  1  1  0  0  0
  3  2  1  0  0  0  0
  4  2  1  0  0  0  0
  5  4  2  0  0  0  0
  6  4  1  0  0  0  0
M  END

But if you convert L-Alanin-2D.sdf to SDF/Mol, you will see that the wedge bond is changed to bond #2 connecting the stereo center to atom "C".

fyicenter$ obabel L-Alanin-2D.sdf -o sdf
L-Alanin
 OpenBabel02052108272D
2D Stereoinformation: Stereo Code
  6  5  0  0  1  0  0  0  0  0999 V2000
    3.6373    2.1000    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
    2.4249    1.4000    0.0000 C   0  0  1  0  0  0  0  0  0  0  0  0
    2.4249    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.2124    2.1000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.2124    3.5000    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
    0.0000    1.4000    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
  2  1  1  0  0  0  0
  2  3  1  1  0  0  0
  4  2  1  0  0  0  0
  5  4  2  0  0  0  0
  6  4  1  0  0  0  0
M  END
$$$$
1 molecule converted

According to Open Babel, the input uses an incorrect way to identify the stereo center. And it gives the correct way to identify stereo center.

If we load the same input data, L-Alanin-2D.sdf, into JSME (JavaScript Molecule Editor), the wedge bond is not changed.

If we load the same input data, L-Alanin-2D.sdf, into pccdb.org Molecule Viewer, the wedge bond is changed to a hash bond connecting the stereo center to atom "C". Positions of "N" and "C" are flipped to maintain the stereo conformation.

Graphical representations generated with Open Babel, JSME, and pccdb.org are presented below:

Stereo Center with Wedge/Hash Bond
Stereo Center with Wedge/Hash Bond

So the same SDF/Mol file with a stereo center specified with 2D Stereoinformation has 3 presentations. They all present the same stereoisomer correctly. But which presentation is more acceptable?

  • Open Babel - Changed the wedge bond from "N" atom to "C".
  • JSME - Kept the wedge bond at "N" as given in the input.
  • pccdb.org - Flipped "N" and "C" positions and changed edge bond to hash bond on "C" atom.

Open Babel should provide an option to keep the 2D Stereoinformation as is from the input data, so we can control exactly how the molecule structure is presented in the graphical output.

 

R/S (Right/Left) Hand Stereo Centers

Write Stereoinformation to Output

Stereochemistry with Open Babel

⇑⇑ Open Babel Tutorials

2021-02-06, 542👍, 0💬