"plugins/cpupme/vscode:/vscode.git/clone" did not exist on "300566f31e1835b10338847909ed84444d9e45e4"
nonbondedExceptions.cl 569 Bytes
Newer Older
Peter Eastman's avatar
Peter Eastman committed
1
float4 exceptionParams = PARAMS[index];
2
real4 delta = pos2-pos1;
3
4
5
#if APPLY_PERIODIC
APPLY_PERIODIC_TO_DELTA(delta)
#endif
6
7
8
real r2 = delta.x*delta.x + delta.y*delta.y + delta.z*delta.z;
real invR = RSQRT(r2);
real sig2 = invR*exceptionParams.y;
Peter Eastman's avatar
Peter Eastman committed
9
sig2 *= sig2;
10
11
12
real sig6 = sig2*sig2*sig2;
real dEdR = exceptionParams.z*(12.0f*sig6-6.0f)*sig6;
real tempEnergy = exceptionParams.z*(sig6-1.0f)*sig6;
Peter Eastman's avatar
Peter Eastman committed
13
14
15
16
17
dEdR += exceptionParams.x*invR;
dEdR *= invR*invR;
tempEnergy += exceptionParams.x*invR;
energy += tempEnergy;
delta.xyz *= dEdR;
18
19
real4 force1 = -delta;
real4 force2 = delta;