ccsb-scripps / AutoDock-Vina

AutoDock Vina
http://vina.scripps.edu
Apache License 2.0
606 stars 212 forks source link

atom type G after ligand preparation appears in .pdbqt #221

Closed SoodabehGhaffari closed 3 months ago

SoodabehGhaffari commented 1 year ago

Hello, I have done docking between a ligand and a receptor using AutoDock vina. In the final output (_out.pdbqt), I realized there is an atom G (which does not exist in the original ligand file. In the original ligand file, it is carbon). After tracking the files, I learned this atom G first appeared in the file after ligand preparation using mk_preparatin_ligand.py. Do you have any suggestions to fix it? Any idea what that is?

Also, I was wondering if we can use the output file from docking ("_out.pdbqt") directly to get the docked structure in Pymol, or should we convert it to something else?

Any suggestion is greatly appreciated.

rwxayheee commented 1 year ago

Hi @SoodabehGhaffari, G0, G1, G2 are pseudo atoms added to enable the macrocycle sampling: https://autodock-vina.readthedocs.io/en/latest/docking_macrocycle.html

As mentioned in the doc, if the presence of these atoms causes difficulties for program you use for visualization, "mk_export.py" can be used to write MOL/SDF files without the redundant atoms: https://github.com/forlilab/Meeko/blob/develop/scripts/mk_export.py

SoodabehGhaffari commented 1 year ago

Thank you for the help! Just one more question: If we do not have a pseudo atom in Vina output (.pdbqt), do we still need to use "mk_expoet.py"? I am asking this question for other ligands.

rwxayheee commented 1 year ago

Hi @SoodabehGhaffari!

PyMol can read pdbqt files as direct inputs. But the bond and charge assignments are missing since the PDBQT files do not contain nonpolar hydrogens. If you are ok with PyMol guessing the bonds, you could use "valence guess, all" command in PyMol: https://pymolwiki.org/index.php/Valence

One advantage of converting pdbqt to MOL/SDF with mk_export.py is that it preserves the bond information. The output file should have the appropriate bond assignments in accordance with the Smiles string in the PDBQT file.

SoodabehGhaffari commented 1 year ago

Thank you for the response. I am facing another issue, but I am not sure if it is related to mk_export.py. After I use mk_export.py, I get the sdf file of Vina output. However, when I export the ligand with the protein together (the protein that I have done docking with) in Pymol, the ligand is not displayed correctly. The ligand is displayed as a couple of dots. Do you have any suggestions in this regard? Any help is greatly appreciated.

rwxayheee commented 1 year ago

Hi @SoodabehGhaffari, How did you make the combined structure file? Was it exported from PyMol or just concatenating two files?

"ligand is displayed as a couple of dots" seems like PyMol sees no bonds in the ligand. Normally, PyMol writes the CONECT information at the end of exported PDB including bonds in ligands. I can't reproduce this with my files. If you could post your files we can take a look.