I need to modify ligand intramolecular energies (in my case, some ligand intramolecular clashes are only visible in QM but not in FF). Is there a way to extract purely intermolecular interaction in the "score_only" mode? Right now, the term weights times term values plus the reported intramolecular interaction do not add up to the total binding affinity. It seems that the binding affinity equation is quite complicated. Even how intramolecular energy is calculated based on the weights is also shrouded in the mystery. I tried to use very simple weighting "toy" schemes, but remains unclear. Below are couple of these simple weight tests for the same receptor-ligand combination that don't add up (sorry I left out those hashtag ssigns because of autoformatting).
Best wishes,
Vis
case1: weight 1
Weights Terms
1 gauss(o=0,w=0.8,c=8)
Name gauss(o=0,w=0.8,c=8)
Affinity: 148.62582 (kcal/mol)
Intramolecular energy: 13.70838
Term values, before weighting:
149.73016
case2:weight 100
Weights Terms
100 gauss(o=0,w=0.8,c=8)
Name gauss(o=0,w=0.8,c=8)
Affinity: 8810.93934 (kcal/mol)
Intramolecular energy: 1292.85847
Term values, before weighting:
149.73016
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
OK, I sort of get it: when I take NEGATIVE weight values then affinity seems to be exactly equal to the term weights times term values.
Weights Terms
-1 gauss(o=0,_w=0.8,_c=8)
Name gauss(o=0,_w=0.8,_c=8)
Affinity: -149.73016 (kcal/mol)
Intramolecular energy: -13.71686
Term values, before weighting:
149.73016
The lingering question remains if the term value itself includes the intramolecular ligand energy. I suspect that it doesn't.
The funny thing if the weight is positive then the affinity is equal to some sort of "sigmoidal" function f(term,weight) that seems to converge at 24000 kcal/mol (at least for gaussian term) with very large weight values. If the weight is negative then the contribution to the affinity seems to behave normally, i.e. weight times term value.
Vis
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
A "curl" function is applied to positive values to prevent blowup of forces. You can increase the value of force_cap to lessen this squashing:
smina -r rec.pdb -l lig.sdf --score_only --force_cap 1000000
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I need to modify ligand intramolecular energies (in my case, some ligand intramolecular clashes are only visible in QM but not in FF). Is there a way to extract purely intermolecular interaction in the "score_only" mode? Right now, the term weights times term values plus the reported intramolecular interaction do not add up to the total binding affinity. It seems that the binding affinity equation is quite complicated. Even how intramolecular energy is calculated based on the weights is also shrouded in the mystery. I tried to use very simple weighting "toy" schemes, but remains unclear. Below are couple of these simple weight tests for the same receptor-ligand combination that don't add up (sorry I left out those hashtag ssigns because of autoformatting).
Best wishes,
Vis
case1: weight 1
Weights Terms
1 gauss(o=0,w=0.8,c=8)
Name gauss(o=0,w=0.8,c=8)
Affinity: 148.62582 (kcal/mol)
Intramolecular energy: 13.70838
Term values, before weighting:
149.73016
case2:weight 100
Weights Terms
100 gauss(o=0,w=0.8,c=8)
Name gauss(o=0,w=0.8,c=8)
Affinity: 8810.93934 (kcal/mol)
Intramolecular energy: 1292.85847
Term values, before weighting:
149.73016
OK, I sort of get it: when I take NEGATIVE weight values then affinity seems to be exactly equal to the term weights times term values.
Weights Terms
-1 gauss(o=0,_w=0.8,_c=8)
Name gauss(o=0,_w=0.8,_c=8)
Affinity: -149.73016 (kcal/mol)
Intramolecular energy: -13.71686
Term values, before weighting:
149.73016
The lingering question remains if the term value itself includes the intramolecular ligand energy. I suspect that it doesn't.
The funny thing if the weight is positive then the affinity is equal to some sort of "sigmoidal" function f(term,weight) that seems to converge at 24000 kcal/mol (at least for gaussian term) with very large weight values. If the weight is negative then the contribution to the affinity seems to behave normally, i.e. weight times term value.
Vis
A "curl" function is applied to positive values to prevent blowup of forces. You can increase the value of force_cap to lessen this squashing:
smina -r rec.pdb -l lig.sdf --score_only --force_cap 1000000
You are correct that intramolecular energies aren't included in the reported affinity.