1 #ifndef OPENMM_AMOEBA_STRETCH_BEND_FORCE_H_ 
    2 #define OPENMM_AMOEBA_STRETCH_BEND_FORCE_H_ 
   35 #include "openmm/Force.h" 
   36 #include "internal/windowsExportAmoeba.h" 
   62         return stretchBends.size();
 
   78     int addStretchBend(
int particle1, 
int particle2, 
int particle3, 
double lengthAB,  
double lengthCB, 
double angle,
 
   79                        double k1, 
double k2);
 
   94     void getStretchBendParameters(
int index, 
int& particle1, 
int& particle2, 
int& particle3, 
double& lengthAB,
 
   95                                   double& lengthCB, 
double& angle, 
double& k1, 
double& k2) 
const;
 
  110     void setStretchBendParameters(
int index, 
int particle1, 
int particle2, 
int particle3, 
 
  111                                   double lengthAB,  
double lengthCB, 
double angle, 
double k1, 
double k2);
 
  121     void updateParametersInContext(
Context& context);
 
  132     ForceImpl* createImpl() 
const;
 
  134     class StretchBendInfo;
 
  135     std::vector<StretchBendInfo> stretchBends;
 
  142 class AmoebaStretchBendForce::StretchBendInfo {
 
  144     int particle1, particle2, particle3;
 
  145     double lengthAB, lengthCB, angle, k1, k2;
 
  147         particle1 = particle2  = particle3 = -1;
 
  148         lengthAB  = lengthCB   = angle     = k1 = k2 = 0.0;
 
  150     StretchBendInfo(
int particle1, 
int particle2, 
int particle3, 
 
  151                     double lengthAB,  
double lengthCB, 
double angle, 
double k1, 
double k2) :
 
  152                     particle1(particle1), particle2(particle2), particle3(particle3), 
 
  153                     lengthAB(lengthAB), lengthCB(lengthCB), angle(angle), k1(k1), k2(k2) {
 
A Context stores the complete state of a simulation. 
Definition: Context.h:67
This class implements the Amoeba stretch-bend interaction. 
Definition: AmoebaStretchBendForce.h:49
Force objects apply forces to the particles in a System, or alter their behavior in other ways...
Definition: Force.h:65
Definition: AndersenThermostat.h:40
bool usesPeriodicBoundaryConditions() const 
Returns whether or not this force makes use of periodic boundary conditions. 
Definition: AmoebaStretchBendForce.h:128
int getNumStretchBends() const 
Get the number of stretch-bend terms in the potential function. 
Definition: AmoebaStretchBendForce.h:61