58 for (
int ituple=0; ituple<ntuple; ++ituple ) {
71 #ifdef CALCULATE_ANISO 91 Vector u1 = r_il * r_il_invlen;
92 Vector u2 = r_mn * r_mn_invlen;
104 eaniso = 0.5*kpar0*dpar*dpar + 0.5*kperp0*dperp*dperp + 0.5*kiso0*(dr*dr);
111 fj -= kpar0 * dpar * u1;
112 fj -= kperp0 * dperp * u2;
115 Vector fl = kpar0 * dpar * r_il_invlen * dr;
116 fl -= kpar0 * dpar * dpar * r_il_invlen * u1;
119 Vector fm = kperp0 * dperp * dperp * r_mn_invlen * u2;
120 fm -= kperp0 * dperp * r_mn_invlen * dr;
129 eaniso *= bond_lambda_1;
137 eaniso *= bond_lambda_2;
157 reduction[virialIndex_XX] += fj.
x * dr.x - fl.
x * r_il.
x + fm.
x * r_mn.
x;
158 reduction[virialIndex_XY] += fj.x * dr.y - fl.
x * r_il.
y + fm.
x * r_mn.
y;
159 reduction[virialIndex_XZ] += fj.x * dr.z - fl.
x * r_il.
z + fm.
x * r_mn.
z;
160 reduction[virialIndex_YX] += fj.y * dr.x - fl.
y * r_il.
x + fm.
y * r_mn.
x;
161 reduction[virialIndex_YY] += fj.y * dr.y - fl.
y * r_il.
y + fm.
y * r_mn.
y;
162 reduction[virialIndex_YZ] += fj.y * dr.z - fl.
y * r_il.
z + fm.
y * r_mn.
z;
163 reduction[virialIndex_ZX] += fj.z * dr.x - fl.
z * r_il.
x + fm.
z * r_mn.
x;
164 reduction[virialIndex_ZY] += fj.z * dr.y - fl.
z * r_il.
y + fm.
z * r_mn.
y;
165 reduction[virialIndex_ZZ] += fj.z * dr.z - fl.
z * r_il.
z + fm.
z * r_mn.
z;
168 if (pressureProfileData) {
191 pj, pi, pt, fj.x * dr.x, fj.y * dr.y, fj.z * dr.z,
192 pressureProfileData);
194 pi, pl, pt, -fl.
x * r_il.
x, -fl.
y * r_il.
y, -fl.
z * r_il.
z,
195 pressureProfileData);
197 pm, pn, pt, fm.
x * r_mn.
x, fm.
y * r_mn.
y, fm.
z * r_mn.
z,
198 pressureProfileData);
void pp_reduction(int nslabs, int n1, int n2, int atype1, int atype2, int numtypes, BigReal vxx, BigReal vyy, BigReal vzz, BigReal *reduction)
static BigReal pressureProfileMin
SimParameters * simParameters
static int pressureProfileSlabs
Molecule stores the structural information for the system.
static BigReal pressureProfileThickness
void pp_clamp(int &n, int nslabs)
int get_fep_bonded_type(const int *atomID, unsigned int order) const
static int pressureProfileAtomTypes
NAMD_HOST_DEVICE BigReal rlength(void) const
NAMD_HOST_DEVICE Vector delta(const Position &pos1, const Position &pos2) const