30 double dr[
NDIM+1], r, rr, ri, roi;
36 double vr[
NDIM+1], fdVal, rri;
38 for(n = 1 ; n <=
nAtom ; n ++){
45 for(n=1; n<=
nBond; n++){
46 rr = 0.0; rri = 0.0; fcVal = 0.0; fdVal = 0.0;
strech = 0.0;
50 dr[1] =
rx[atom1ID] -
rx[atom2ID];
56 dr[2] =
ry[atom1ID] -
ry[atom2ID];
67 rr =
Sqr(dr[1]) +
Sqr(dr[2]);
76 vr[1] =
vx[atom1ID] -
vx[atom2ID];
77 vr[2] =
vy[atom1ID] -
vy[atom2ID];
78 fdVal = -
gamman * (vr[1]*dr[1] + vr[2]*dr[2]) * rri;
87 fx[atom1ID] += (fcVal + fdVal) * dr[1];
88 fy[atom1ID] += (fcVal + fdVal) * dr[2];
89 fx[atom2ID] += -(fcVal + fdVal) * dr[1];
90 fy[atom2ID] += -(fcVal + fdVal) * dr[2];
100 fx[atom1ID] += (fcVal * dr[1] -
gamman * vr[1]);
101 fy[atom1ID] += (fcVal * dr[2] -
gamman * vr[2]);
102 fx[atom2ID] += -(fcVal * dr[1] -
gamman * vr[1]);
103 fy[atom2ID] += -(fcVal * dr[2] -
gamman * vr[2]);