ccsb-scripps / AutoDock-Vina

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

Details on scoring function terms #296

Open AnjaConev opened 6 months ago

AnjaConev commented 6 months ago

Hi, thank you for this great resource! :smile:

I would like to know a bit more about how the scores are calculated and what the individual terms mean - do you have any additional documentation on this topic other than https://autodock-vina.readthedocs.io/en/latest/vina.html#vina.vina.Vina.score

In particular, I would like to know what do individual terms mean (e.g., what is the torsions element)? As well as how these are computed from the grids!

Thank you!

rwxayheee commented 6 months ago

Hi @AnjaConev

I learned the scoring function from the original paper: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3041641/

and from a very helpful discussion with a dev regarding torsions: https://github.com/ccsb-scripps/AutoDock-Vina/issues/240#issuecomment-1722534719

The scores in my understanding are not actually (?) computed from the grids, but from the coordinates of the current poses and atom types. This code has the implementation of the energy terms, if you're interested. Hope this helps!

diogomart commented 6 months ago

As an extra read, the vinardo paper has interesting comments on the gauss2 term: https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0155183

The grids are not necessary to evaluate the scoring function, they are used just to make it faster (and less accurate). I think it is easier to understand the scoring function by thinking about direct interactions between pairs of atoms, as explained in the original paper (posted by @rwxayheee above).

AnjaConev commented 6 months ago

Perfect, these are very useful - thank you!