82 rS_ = exp(log(pow(sigma, m - n) * RealType(m) / n));
84 nmScale_ = n * pow(RealType(n) / m, RealType(m) / (n - m)) / (n - m);
86 RealType rss = rS_ / sigma;
87 RealType rsi = 1.0 / rss;
88 RealType rsn = pow(rsi, n);
89 RealType rsm = pow(rsi, m);
91 potS_ = nmScale_ * epsilon * (rsn - rsm);
93 setEquilibriumBondLength(rS_);
96 virtual void calcForce(RealType r, RealType& V, RealType& dVdr) {
97 RealType ros, ri, rin, rim, rin1, rim1;
106 V = nmScale_ * epsilon * (rin - rim) - potS_;
107 dVdr = nmScale_ * epsilon * (-n * rin1 + m * rim1) / sigma;
110 RealType getSigma() {
return sigma; }
112 RealType getEpsilon() {
return epsilon; }
114 int getNrep() {
return n; }
115 int getMatt() {
return m; }