@@ -12,14 +12,14 @@ template <class REAL> class EnergyKernel_NonBond_Simple {
1212 // / CONSTRUCTOR - specified cutoff^2
1313 EnergyKernel_NonBond_Simple (REAL cutIn) : cutoff2_(cutIn) {}
1414 // / Energy/forces
15- void Calc_F_E (Frame&, int , int , double , double , double , double , double , double , double , double , CharMask const &, double &, double &);
15+ void Calc_F_E (Frame&, int , int , double , double , double , double , double , double , double , CharMask const &, double &, double &);
1616 private:
1717 REAL cutoff2_; // /< Only calculate interactions within this cutoff (squared)
1818};
1919
2020template <class REAL >
2121void EnergyKernel_NonBond_Simple<REAL>::Calc_F_E(Frame& frameIn, int idx, int jdx,
22- double LJA, double LJB, double LJC,
22+ double LJA, double LJB,
2323 double QFAC, double qi, double qj,
2424 double enbfac, double eelfac,
2525 CharMask const & maskIn,
@@ -35,13 +35,11 @@ void EnergyKernel_NonBond_Simple<REAL>::Calc_F_E(Frame& frameIn, int idx, int jd
3535 REAL rij = sqrt ( rij2 );
3636 // VDW
3737 REAL r2 = 1.0 / rij2;
38- REAL r4 = r2 * r2;
39- REAL r6 = r4 * r2;
38+ REAL r6 = r2 * r2 * r2;
4039 REAL r12 = r6 * r6;
4140 REAL f12 = LJA * r12; // A/r^12
4241 REAL f6 = LJB * r6; // B/r^6
43- REAL f4 = LJC * r4; // C/r^4
44- REAL e_vdw = f12 - f6 - f4; // (A/r^12)-(B/r^6)-(C/r^4)
42+ REAL e_vdw = f12 - f6; // (A/r^12)-(B/r^6)
4543 // mprintf("DBG:\t\t%8i %8i %12.4f\n", e_vdw);
4644 E_vdw += (e_vdw * enbfac);
4745 // VDW force
@@ -58,11 +56,7 @@ void EnergyKernel_NonBond_Simple<REAL>::Calc_F_E(Frame& frameIn, int idx, int jd
5856// dfy += ry * felec;
5957// dfz += rz * felec;
6058 // COMBINED Vdw and Coulomb force
61- // Force = -dU/dr
62- // U = A/r^12 - B/r^6 - C/r^4
63- // F = 12A/r^13 - 6B/r^7 - 4C/r^5
64- // F_term = F * r = 12A/r^12 - 6B/r^6 - 4C/r^4 = 12f12 - 6f6 - 4f4
65- REAL dfn = ( (((12 *f12) - (6 *f6) - (4 *f4)) * enbfac) + e_elec ) * r2;
59+ REAL dfn = ( (((12 *f12) - (6 *f6)) * enbfac) + e_elec ) * r2;
6660 REAL dfx = rx * dfn;
6761 REAL dfy = ry * dfn;
6862 REAL dfz = rz * dfn;
0 commit comments