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

retaining unique atom names in the .pdbqt file #47

Open
alfredoq opened this issue May 8, 2023 · 0 comments
Open

retaining unique atom names in the .pdbqt file #47

alfredoq opened this issue May 8, 2023 · 0 comments
Labels
enhancement New feature or request
Milestone

Comments

@alfredoq
Copy link

alfredoq commented May 8, 2023

hello,

when preparing a .pdbqt file I noticed that the unique atom name generated by RDKit are removed. An example below:

from rdkit import Chem
from rdkit.Chem import AllChem

smiles = "CCCCO"
m = Chem.MolFromSmiles(smiles)
m3d = Chem.AddHs(m)
AllChem.EmbedMolecule(m3d)
pdb_file = Chem.MolToPDBBlock(m3d)

in this case pdb_file contains:

HETATM 1 C1 UNL 1 -1.515 0.808 0.093 1.00 0.00 C
HETATM 2 C2 UNL 1 -0.734 -0.344 0.622 1.00 0.00 C
HETATM 3 C3 UNL 1 0.290 -0.899 -0.311 1.00 0.00 C
HETATM 4 C4 UNL 1 1.341 0.103 -0.717 1.00 0.00 C
HETATM 5 O1 UNL 1 2.046 0.592 0.381 1.00 0.00 O
HETATM 6 H1 UNL 1 -2.495 0.475 -0.327 1.00 0.00 H
HETATM 7 H2 UNL 1 -1.772 1.505 0.929 1.00 0.00 H
HETATM 8 H3 UNL 1 -1.014 1.393 -0.690 1.00 0.00 H
HETATM 9 H4 UNL 1 -1.445 -1.161 0.864 1.00 0.00 H
HETATM 10 H5 UNL 1 -0.203 -0.023 1.548 1.00 0.00 H
HETATM 11 H6 UNL 1 0.838 -1.695 0.263 1.00 0.00 H
HETATM 12 H7 UNL 1 -0.134 -1.413 -1.197 1.00 0.00 H
HETATM 13 H8 UNL 1 2.046 -0.435 -1.397 1.00 0.00 H
HETATM 14 H9 UNL 1 0.948 0.957 -1.266 1.00 0.00 H
HETATM 15 H10 UNL 1 1.801 0.136 1.204 1.00 0.00 H

with atoms having unique names. However after processing this RDKit molecule to get the corresponding .pdbqt file:

preparator = MoleculePreparation()
preparator.prepare(m3d)
pdbqt_string = preparator.write_pdbqt_string()
pdbqt_string_ready = pdbqt_string.replace('UNL','MOL')
ligand_file = '/home/fredy/Desktop/test.pdbqt'
with open(ligand_file,'w') as pdbqt_file:
pdbqt_file.write(pdbqt_string_ready)

I get:

REMARK SMILES CCCCO
REMARK SMILES IDX 3 1 2 2 1 3 4 4 5 5
REMARK H PARENT 5 6
REMARK Flexibility Score: inf
ROOT
ATOM 1 C MOL 1 0.290 -0.899 -0.311 1.00 0.00 0.028 C
ENDROOT
BRANCH 1 2
ATOM 2 C MOL 1 -0.734 -0.344 0.622 1.00 0.00 -0.001 C
ATOM 3 C MOL 1 -1.515 0.808 0.093 1.00 0.00 0.004 C
ENDBRANCH 1 2
BRANCH 1 4
ATOM 4 C MOL 1 1.341 0.103 -0.717 1.00 0.00 0.156 C
BRANCH 4 5
ATOM 5 O MOL 1 2.046 0.592 0.381 1.00 0.00 -0.396 OA
ATOM 6 H MOL 1 1.801 0.136 1.204 1.00 0.00 0.210 HD
ENDBRANCH 4 5
ENDBRANCH 1 4
TORSDOF 3

I revised preparator options looking for some keyword to retain unique atom names, however I was not able to find this feature. Is it possible to retain unique atom names in the .pdbqt file?

Thanks in advance for the support,

best

@diogomart diogomart added the enhancement New feature or request label Jun 9, 2023
@diogomart diogomart added this to the v0.6.0 milestone Oct 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants