ccsb-scripps / AutoDock-Vina

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

Autogrid4 maps error when some ligands do not contain OA or HD atom types #140

Closed isilkajun closed 1 year ago

isilkajun commented 2 years ago

Hi everyone,

I am working on hydrated docking with large ligand library using same script. Hydrated docking works fine for some ligands that do not contain OA or HD atom type. I get "ERROR: the map 4v64-prep.HD.map can't be open" or "ERROR: the map 4v64-prep.OA.map can't be open error" after autorid4 for some ligands that do not contain OA or HD atom type. For this reason W map is not created and docking fails. For example,

DB00119.zip

Thanks for now.

diogomart commented 2 years ago

Hi, you can edit the GPF to have autogrid compute and write any maps you'd like. This script may help.

isilkajun commented 1 year ago

Does this mean i can generate maps for each atom type for the receptor once and then use the same maps for each different ligand without using autogrid4?

isilkajun commented 1 year ago

I have observed that the autodock gives better results (both score and interactions) with its own grid parameters according to the size of each ligand, rather than a fixed box size. Also, since many ligands have atom types that need to be parameterized, i decided to use prepare_gpf.py again, so that it automatically adds the ligand's own atom types and can easily use the AD4_parameters.dat file. I just check with script whether there is HD or OA atom type in the ligand inside gpf file, otherwise i add them to the ligand atom types and map lines. Everything looks fine, thanks!

diogomart commented 1 year ago

Does this mean i can generate maps for each atom type for the receptor once and then use the same maps for each different ligand without using autogrid4?

Yes

I have observed that the autodock gives better results (both score and interactions) with its own grid parameters according to the size of each ligand, rather than a fixed box size.

This limits the number of incorrect poses that can be generated, and can only be done if you already know the answer.

isilkajun commented 1 year ago

It's better to use this in virtual screen, isn't it? i mean different grid sizes and maps according to the size of each ligand.

diogomart commented 1 year ago

I think the grid size should be defined to cover the receptor volume where ligands are expected to bind. Small ligands can bind in different places within a binding pocket (see figure 1 in this paper). A small grid size could limit that.

However, if you want poses displaying a specific interaction with the receptor, you could limit the grid size to space where that interaction could happen.

I'm curious: you mentioned better results using specialized grid sizes for each ligand. How did you define the grid size and center based on the input ligand?

isilkajun commented 1 year ago

My receptor is ribosomal RNA, there are 3 evolutionarily conserved nucleotides in the active site in small subunit. These interactions with the drug in the original pdb file appear. This ligand was used for validation. When creating the docking protocol, i set the grid center to be the average of the coordinates of the heavy atoms of these nucleotides. This center is fixed for all ligand docking. As for the grid size, i run the prepare_gpf script for each ligand and follow a way that maps are created and used specifically for each ligand. I performed the receptor preparation process once. The script i created performs the hydrated docking protocol in a loop for each ligand, except for receptor preparation (ligand preparation, affinity map generation, run). I compared some antibiotic groups that are known to bind in the region where i work. The docking results performed with the grid box size created according to the ligand size, rather than a grid box size that is the same for all docking, were more compatible with the literature.

diogomart commented 1 year ago

That makes sense to me, thank you for sharing.

If you have a large number of ligands to dock, generating the affinity maps for each ligand will take some time. It could be faster to generate grid maps of various sizes for all atom types before starting to dock ligands, and then use the set of maps that has the best size for each ligand.

isilkajun commented 1 year ago

That makes a lot of sense too, thank you for your suggestion. Map creation actually takes a fair amount of time. My exhaustiveness value is 32, and although i work in 32 cores, docking can take more than 1 day in ligands with a molecular weight above 1000. Along with the ad4 scoring function, of course, the fact that i work with ribosomes has a big role in this. Maybe i can truncate the structure a certain amount and work it out.

Thanks for your answers, with my best regards.