Thank you Mensur for your detailed reply.
I have spent the past 4 months actually working in this direction, let me share with you what I have reached:
- The search space is not on the surface, it is actually a tube within a trimer (image here), you can see that the search box volume is small (1,400 angstrom^2).
- I have performed the docking as follows: 250 separate simulations each at 32 exhaustiveness (results here).
- If we take the mode of the distribution curves we get:
MOL6 = -14.6 Kcal/mol while the paper reported -10.97 Kcal/mol (Kd = 9e-9 M)
MOL7 = -10.8 Kcal/mol while the paper reported -10.75 Kcal/mol (Kd = 1.3e-8 M)
MOL8 = -11.3 Kcal/mol while the paper reported -6.35 Kcal/mol (Kd = 2.2e-5 M)
The paper's experimental measurements were done using the Biacore. I used the following formula to convert from the paper's Kd to dG [dG=RTlnKd]:
import math
def affinity(Kd, R=0.00198720425864083, T=298):
dG = R*T*math.log(Kd)
print(f'dG = {dG} Kcal/mol')
Clearly, MOL7 is ok because the mode of the 250 simulations reports a similar docking affinity to the paper, but MOL6 and MOL8 are not (all simulation parameters were kept constant).
Questions:
- How do we interpret these data? specifically for MOL6 and MOL8? what does it mean that the computed affinity is different from the experimental affinity?
- How do we consolidate the computed affinity with the experimentally determined affinity?
- If I want to run a virtual screen to find molecules that bind with a stronger affinity than MOL6, MOL7, or MOL8, which baseline should I use, the computed affinity or the experimental affinity?