Skip to content

gkxiao/meeko_vina

Repository files navigation

The issue of missing molecule names in Meeko PDBQT (V0.4.0)

The name of a molecule is a very important information. However, there is an issue of missing molecule names in Meeko PDBQT (V0.4.0, https://github.com/forlilab/Meeko). Here is an example to show this issue.

test.sdf: an example of SDF file with molecular name "test"

test
 OpenBabel06272315433D
4  3  0  0  0  0  0  0  0  0999 V2000
1.0507    0.0872   -0.0485 C   0  0  0  0  0  0  0  0  0  0  0  0
2.2754    0.0872   -0.0485 O   0  0  0  0  0  0  0  0  0  0  0  0
0.4632    0.7434   -0.7103 H   0  0  0  0  0  0  0  0  0  0  0  0
0.4632   -0.5690    0.6133 H   0  0  0  0  0  0  0  0  0  0  0  0
1  2  2  0  0  0  0
1  3  1  0  0  0  0
1  4  1  0  0  0  0
M  END
$$$$

test.pdbqt: the output PDBQT file prepared with meeko command:

mk_prepare_ligand.py -i test.sdf -o test.pdbqt

Here is the output:

REMARK SMILES C=O
REMARK SMILES IDX 1 1 2 2
REMARK H PARENT
REMARK Flexibility Score: inf
ROOT
ATOM      1  C   UNL     1       1.051   0.087  -0.049  1.00  0.00     0.307 C
ATOM      2  O   UNL     1       2.275   0.087  -0.049  1.00  0.00    -0.307 OA
ENDROOT
TORSDOF 0

There is no name line in the REMARK lines. Here is an example with Name line:

REMARK  Name = test
REMARK  0 active torsions:
REMARK  status: ('A' for Active; 'I' for Inactive)
REMARK                            x       y       z     vdW  Elec       q    Type
REMARK                         _______ _______ _______ _____ _____    ______ ____
ROOT
ATOM      1  C   UNL     1       1.051   0.087  -0.049  0.00  0.00    +0.000 C
ATOM      2  O   UNL     1       2.275   0.087  -0.049  0.00  0.00    +0.000 OA
ENDROOT
TORSDOF 0

How to fix it?

After the line 303 in the mk_prepare_ligand.py(Meeko V0.4), insert two lines:

title = mol.GetProp('_Name')
pdbqt_string = 'REMARK  Name = '+title+'\n'+pdbqt_string

Save the revised file as mk_prepare_ligand_new.py.

Try it:

mk_prepare_ligand_new.py -i actives_final.sdf \
  --multimol_outdir actives \
  --multimol_prefix actives

Check one pdbqt file:

(rdkit2020) gkxiao@master:/public/gkxiao/work/meeko$ head actives/actives-1.pdbqt
REMARK  Name = CHEMBL430421
REMARK SMILES COC(=O)c1c(-c2cc(OC)c(OC)c(OC)c2)c2cc(OC)c(OC)cc2c(=O)n1C1CCCC1
REMARK SMILES IDX 6 1 19 2 20 3 21 4 24 5 27 6 28 7 29 8 30 9 31 10 5 11 7 12
REMARK SMILES IDX 9 13 12 14 8 15 15 16 18 17 10 18 11 19 13 20 14 21 16 22
REMARK SMILES IDX 17 23 3 24 4 25 2 26 1 27 32 28 36 29 33 30 35 31 34 32
REMARK SMILES IDX 22 33 23 34 25 35 26 36
REMARK H PARENT
REMARK Flexibility Score: inf
ROOT
ATOM      1  C   UNL     1      -4.776   0.390  -0.036  1.00  0.00     0.021 A

Translate PDBQT into SDF with tilte in the first line

Translate a docking result with multiple model into sdf file:

mk_export.py -o actives-1_out.sdf actives-1_out.pdbqt

About

Add molecule name into meeko pdbqt

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages