1 #ifndef OPENMM_AMOEBA_IN_PLANE_ANGLE_FORCE_H_ 
    2 #define OPENMM_AMOEBA_IN_PLANE_ANGLE_FORCE_H_ 
   35 #include "openmm/Force.h" 
   36 #include "internal/windowsExportAmoeba.h" 
   73     void setAmoebaGlobalInPlaneAngleCubic(
double cubicK);
 
   80     double getAmoebaGlobalInPlaneAngleCubic() 
const;
 
   87     void setAmoebaGlobalInPlaneAngleQuartic(
double quarticK);
 
   94     double getAmoebaGlobalInPlaneAngleQuartic() 
const;
 
  101     void setAmoebaGlobalInPlaneAnglePentic(
double penticK);
 
  108     double getAmoebaGlobalInPlaneAnglePentic() 
const;
 
  115     void setAmoebaGlobalInPlaneAngleSextic(
double sexticK);
 
  122     double getAmoebaGlobalInPlaneAngleSextic() 
const;
 
  135     int addAngle(
int particle1, 
int particle2, 
int particle3, 
int particle4, 
double length, 
 
  149     void getAngleParameters(
int index, 
int& particle1, 
int& particle2, 
int& particle3, 
int& particle4, 
double& length,
 
  150                             double& quadraticK) 
const;
 
  163     void setAngleParameters(
int index, 
int particle1, 
int particle2, 
int particle3, 
int particle4, 
double length, 
double quadraticK);
 
  173     void updateParametersInContext(
Context& context);
 
  184     ForceImpl* createImpl() 
const;
 
  188     std::vector<AngleInfo> angles;
 
  195 class AmoebaInPlaneAngleForce::AngleInfo {
 
  197     int particle1, particle2, particle3, particle4;
 
  198     double length, quadraticK;
 
  200         particle1 = particle2  = particle3 = particle4 = -1;
 
  201         length    = quadraticK = 0.0;
 
  203     AngleInfo(
int particle1, 
int particle2, 
int particle3, 
int particle4, 
double length, 
double  quadraticK) :
 
  204         particle1(particle1), particle2(particle2), particle3(particle3), particle4(particle4),
 
  205         length(length), quadraticK(quadraticK) {
 
A Context stores the complete state of a simulation. 
Definition: Context.h:67
int getNumAngles() const 
Get the number of in-plane angle terms in the potential function. 
Definition: AmoebaInPlaneAngleForce.h:64
Force objects apply forces to the particles in a System, or alter their behavior in other ways...
Definition: Force.h:65
double _globalSexticK
Definition: AmoebaInPlaneAngleForce.h:185
This class implements an interaction at trigonal centers corresponding to the projected in-plane angl...
Definition: AmoebaInPlaneAngleForce.h:52
bool usesPeriodicBoundaryConditions() const 
Returns whether or not this force makes use of periodic boundary conditions. 
Definition: AmoebaInPlaneAngleForce.h:180
Definition: AndersenThermostat.h:40