Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kekulize bonds when converting sdf to mol2 #2668

Open
and-tos opened this issue Jan 29, 2024 · 2 comments
Open

Kekulize bonds when converting sdf to mol2 #2668

and-tos opened this issue Jan 29, 2024 · 2 comments

Comments

@and-tos
Copy link

and-tos commented Jan 29, 2024

Is there an option to kekulize aromatic bonds when converting from SDF to mol2?

Copy link

welcome bot commented Jan 29, 2024

Thanks for opening your first issue here! Be sure to follow the issue template!

@nbehrnd
Copy link
Contributor

nbehrnd commented Jan 29, 2024

It does not seem possible with openbabel (version 3.1.1).

For one, there is no explicit option mentioned in the manual. From the section about SMILES one could infer -k would be a suitable flag to use to modify the output. But no, it isn't:

$ obabel -:"c1ccncc1" -h --gen3d -xk -omol2
@<TRIPOS>MOLECULE
*****
 11 11 0 0 0
SMALL
GASTEIGER

@<TRIPOS>ATOM
      1 C           1.4330    0.0516    0.0010 C.ar    1  UNL1       -0.0589
      2 C           0.6880    1.2260    0.0015 C.ar    1  UNL1       -0.0436
      3 C          -0.6942    1.1256    0.0022 C.ar    1  UNL1        0.0276
      4 N          -1.3624   -0.0485    0.0055 N.ar    1  UNL1       -0.2633
      5 C          -0.6120   -1.1719    0.0069 C.ar    1  UNL1        0.0276
      6 C           0.7738   -1.1733    0.0033 C.ar    1  UNL1       -0.0436
      7 H           2.5185    0.0904   -0.0011 H       1  UNL1        0.0618
      8 H           1.1715    2.1963    0.0013 H       1  UNL1        0.0633
      9 H          -1.3198    2.0134    0.0001 H       1  UNL1        0.0829
     10 H          -1.1726   -2.1023    0.0114 H       1  UNL1        0.0829
     11 H           1.3254   -2.1063    0.0027 H       1  UNL1        0.0633
@<TRIPOS>BOND
     1     1     2   ar
     2     2     3   ar
     3     3     4   ar
     4     4     5   ar
     5     5     6   ar
     6     1     6   ar
     7     1     7    1
     8     2     8    1
     9     3     9    1
    10     5    10    1
    11     6    11    1
1 molecule converted

On then may think to create a .xyz file without any bond order described and to let openbabel "reassign" bonds. But no, this bypass does not exist. Again about the molecule of pyridine:

$ obabel -:"c1ccncc1" -h --gen3d -O pyridine.xyz
1 molecule converted
$ obabel pyridine.xyz -omol2
@<TRIPOS>MOLECULE
pyridine.xyz
 11 11 0 0 0
SMALL
GASTEIGER

@<TRIPOS>ATOM
      1 C           1.4330    0.0516    0.0010 C.ar    1  UNL1       -0.0589
      2 C           0.6880    1.2260    0.0015 C.ar    1  UNL1       -0.0436
      3 C          -0.6942    1.1256    0.0022 C.ar    1  UNL1        0.0276
      4 N          -1.3624   -0.0485    0.0055 N.ar    1  UNL1       -0.2633
      5 C          -0.6120   -1.1719    0.0069 C.ar    1  UNL1        0.0276
      6 C           0.7738   -1.1733    0.0033 C.ar    1  UNL1       -0.0436
      7 H           2.5185    0.0904   -0.0011 H       1  UNL1        0.0618
      8 H           1.1715    2.1963    0.0013 H       1  UNL1        0.0633
      9 H          -1.3198    2.0134    0.0001 H       1  UNL1        0.0829
     10 H          -1.1726   -2.1023    0.0115 H       1  UNL1        0.0829
     11 H           1.3254   -2.1063    0.0027 H       1  UNL1        0.0633
@<TRIPOS>BOND
     1     7     1    1
     2     9     3    1
     3     1     2   ar
     4     1     6   ar
     5     8     2    1
     6     2     3   ar
     7     3     4   ar
     8    11     6    1
     9     6     5   ar
    10     4     5   ar
    11     5    10    1
1 molecule converted

-- and the same output with an additional -xk flag.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants