forlilab / Meeko

Interfacing RDKit and AutoDock
GNU Lesser General Public License v2.1
169 stars 41 forks source link

mk_prepare_ligand.py returns "molecule has implicit hydrogens (name=)" #97

Closed farmaceut closed 2 months ago

farmaceut commented 2 months ago

Hello, I work on aromatic compound. The input file is as below. Unfortunately, mk_prepare_ligand.py returns molecule has implicit hydrogens (name=). How to fix it? The protonation is correct. I wonder whether there won't be further issues for deprotonated substances...


 OpenBabel04102412543D

 31 33  0  0  0  0  0  0  0  0999 V2000
    0.6856   -0.7234    0.0662 O   0  0  0  0  0  0  0  0  0  0  0  0
   -0.6119    2.6344   -0.3032 O   0  0  0  0  0  0  0  0  0  0  0  0
    2.0098    3.0881   -0.2554 O   0  0  0  0  0  0  0  0  0  0  0  0
    5.0654   -2.4956    0.2674 O   0  0  0  0  0  0  0  0  0  0  0  0
   -5.0201    0.9322    0.7336 O   0  0  0  0  0  0  0  0  0  0  0  0
   -5.4995   -1.5548   -0.1662 O   0  0  0  0  0  0  0  0  0  0  0  0
   -0.2006    0.3057   -0.0466 C   0  0  0  0  0  0  0  0  0  0  0  0
    2.5541    0.7801   -0.0301 C   0  0  2  0  0  0  0  0  0  0  0  0
    2.0239   -0.5055    0.0648 C   0  0  1  0  0  0  0  0  0  0  0  0
   -1.5900   -0.1576   -0.0721 C   0  0  2  0  0  0  0  0  0  0  0  0
    0.2410    1.5834   -0.1507 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.6538    1.9040   -0.1453 C   0  0  0  0  0  0  0  0  0  0  0  0
    3.9530    0.9287   -0.0200 C   0  0  0  0  0  0  0  0  0  0  0  0
    2.8340   -1.6316    0.1685 C   0  0  0  0  0  0  0  0  0  0  0  0
   -2.6382    0.6655    0.3578 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.8726   -1.4501   -0.5218 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.2033   -1.4496    0.1735 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.7722   -0.1658    0.0805 C   0  0  0  0  0  0  0  0  0  0  0  0
   -3.9374    0.1978    0.3252 C   0  0  0  0  0  0  0  0  0  0  0  0
   -3.1803   -1.9103   -0.5549 C   0  0  0  0  0  0  0  0  0  0  0  0
   -4.2158   -1.0924   -0.1332 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.3699    1.9231   -0.0945 H   0  0  0  0  0  0  0  0  0  0  0  0
    2.3930   -2.6165    0.2399 H   0  0  0  0  0  0  0  0  0  0  0  0
   -2.4538    1.6610    0.7339 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.0742   -2.0949   -0.8568 H   0  0  0  0  0  0  0  0  0  0  0  0
    5.8483   -0.0682    0.0890 H   0  0  0  0  0  0  0  0  0  0  0  0
   -3.4113   -2.9056   -0.9089 H   0  0  0  0  0  0  0  0  0  0  0  0
   -0.0506    3.4208   -0.4016 H   0  0  0  0  0  0  0  0  0  0  0  0
    4.5801   -3.3283    0.3186 H   0  0  0  0  0  0  0  0  0  0  0  0
   -4.7439    1.8145    1.0075 H   0  0  0  0  0  0  0  0  0  0  0  0
   -6.0940   -0.8674    0.1616 H   0  0  0  0  0  0  0  0  0  0  0  0
  1  7  1  0  0  0  0
  2 11  1  0  0  0  0
  2 28  1  0  0  0  0
  3 12  2  0  0  0  0
  4 17  1  0  0  0  0
  4 29  1  0  0  0  0
  5 19  1  0  0  0  0
  5 30  1  0  0  0  0
  6 21  1  0  0  0  0
  6 31  1  0  0  0  0
  7 11  2  0  0  0  0
  8  9  1  0  0  0  0
  8 12  1  6  0  0  0
  8 13  1  0  0  0  0
  9  1  1  1  0  0  0
  9 14  1  0  0  0  0
 10  7  1  1  0  0  0
 10 15  1  0  0  0  0
 10 16  1  0  0  0  0
 11 12  1  0  0  0  0
 13 18  2  0  0  0  0
 13 22  1  0  0  0  0
 14 17  2  0  0  0  0
 14 23  1  0  0  0  0
 15 19  2  0  0  0  0
 15 24  1  0  0  0  0
 16 20  1  0  0  0  0
 16 25  1  0  0  0  0
 17 18  1  0  0  0  0
 18 26  1  0  0  0  0
 19 21  1  0  0  0  0
 20 21  2  0  0  0  0
 20 27  1  0  0  0  0
M  END
rwxayheee commented 2 months ago

Hi @farmaceut

Between atoms (10, 16) and (8, 9) there needs double bonds or additional hydrogens. You can make the corrections in the bond section. Below is the modified SDF to pass the hydrogen check -


 OpenBabel04102412543D

 31 33  0  0  0  0  0  0  0  0999 V2000
    0.6856   -0.7234    0.0662 O   0  0  0  0  0  0  0  0  0  0  0  0
   -0.6119    2.6344   -0.3032 O   0  0  0  0  0  0  0  0  0  0  0  0
    2.0098    3.0881   -0.2554 O   0  0  0  0  0  0  0  0  0  0  0  0
    5.0654   -2.4956    0.2674 O   0  0  0  0  0  0  0  0  0  0  0  0
   -5.0201    0.9322    0.7336 O   0  0  0  0  0  0  0  0  0  0  0  0
   -5.4995   -1.5548   -0.1662 O   0  0  0  0  0  0  0  0  0  0  0  0
   -0.2006    0.3057   -0.0466 C   0  0  0  0  0  0  0  0  0  0  0  0
    2.5541    0.7801   -0.0301 C   0  0  2  0  0  0  0  0  0  0  0  0
    2.0239   -0.5055    0.0648 C   0  0  1  0  0  0  0  0  0  0  0  0
   -1.5900   -0.1576   -0.0721 C   0  0  2  0  0  0  0  0  0  0  0  0
    0.2410    1.5834   -0.1507 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.6538    1.9040   -0.1453 C   0  0  0  0  0  0  0  0  0  0  0  0
    3.9530    0.9287   -0.0200 C   0  0  0  0  0  0  0  0  0  0  0  0
    2.8340   -1.6316    0.1685 C   0  0  0  0  0  0  0  0  0  0  0  0
   -2.6382    0.6655    0.3578 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.8726   -1.4501   -0.5218 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.2033   -1.4496    0.1735 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.7722   -0.1658    0.0805 C   0  0  0  0  0  0  0  0  0  0  0  0
   -3.9374    0.1978    0.3252 C   0  0  0  0  0  0  0  0  0  0  0  0
   -3.1803   -1.9103   -0.5549 C   0  0  0  0  0  0  0  0  0  0  0  0
   -4.2158   -1.0924   -0.1332 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.3699    1.9231   -0.0945 H   0  0  0  0  0  0  0  0  0  0  0  0
    2.3930   -2.6165    0.2399 H   0  0  0  0  0  0  0  0  0  0  0  0
   -2.4538    1.6610    0.7339 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.0742   -2.0949   -0.8568 H   0  0  0  0  0  0  0  0  0  0  0  0
    5.8483   -0.0682    0.0890 H   0  0  0  0  0  0  0  0  0  0  0  0
   -3.4113   -2.9056   -0.9089 H   0  0  0  0  0  0  0  0  0  0  0  0
   -0.0506    3.4208   -0.4016 H   0  0  0  0  0  0  0  0  0  0  0  0
    4.5801   -3.3283    0.3186 H   0  0  0  0  0  0  0  0  0  0  0  0
   -4.7439    1.8145    1.0075 H   0  0  0  0  0  0  0  0  0  0  0  0
   -6.0940   -0.8674    0.1616 H   0  0  0  0  0  0  0  0  0  0  0  0
  1  7  1  0  0  0  0
  2 11  1  0  0  0  0
  2 28  1  0  0  0  0
  3 12  2  0  0  0  0
  4 17  1  0  0  0  0
  4 29  1  0  0  0  0
  5 19  1  0  0  0  0
  5 30  1  0  0  0  0
  6 21  1  0  0  0  0
  6 31  1  0  0  0  0
  7 11  2  0  0  0  0
  8  9  2  0  0  0  0
  8 12  1  6  0  0  0
  8 13  1  0  0  0  0
  9  1  1  1  0  0  0
  9 14  1  0  0  0  0
 10  7  1  1  0  0  0
 10 15  1  0  0  0  0
 10 16  2  0  0  0  0
 11 12  1  0  0  0  0
 13 18  2  0  0  0  0
 13 22  1  0  0  0  0
 14 17  2  0  0  0  0
 14 23  1  0  0  0  0
 15 19  2  0  0  0  0
 15 24  1  0  0  0  0
 16 20  1  0  0  0  0
 16 25  1  0  0  0  0
 17 18  1  0  0  0  0
 18 26  1  0  0  0  0
 19 21  1  0  0  0  0
 20 21  2  0  0  0  0
 20 27  1  0  0  0  0
M  END
farmaceut commented 2 months ago

Hello @rwxayheee, thank you for the reply and the solution! The software I use draws from the aromatic bond and seemingly exports them as such. Your input works; I visualized it and my input and have noticed what was wrong