1 #ifndef OPENMM_RBTORSIONFORCE_H_
2 #define OPENMM_RBTORSIONFORCE_H_
39 #include "internal/windowsExport.h"
60 return rbTorsions.size();
77 int addTorsion(
int particle1,
int particle2,
int particle3,
int particle4,
double c0,
double c1,
double c2,
double c3,
double c4,
double c5);
93 void getTorsionParameters(
int index,
int& particle1,
int& particle2,
int& particle3,
int& particle4,
double& c0,
double& c1,
double& c2,
double& c3,
double& c4,
double& c5)
const;
109 void setTorsionParameters(
int index,
int particle1,
int particle2,
int particle3,
int particle4,
double c0,
double c1,
double c2,
double c3,
double c4,
double c5);
119 void updateParametersInContext(
Context& context);
124 std::vector<RBTorsionInfo> rbTorsions;
131 class RBTorsionForce::RBTorsionInfo {
133 int particle1, particle2, particle3, particle4;
136 particle1 = particle2 = particle3 = particle4 = -1;
137 c[0] = c[1] = c[2] = c[3] = c[4] = c[5] = 0.0;
139 RBTorsionInfo(
int particle1,
int particle2,
int particle3,
int particle4,
double c0,
double c1,
double c2,
double c3,
double c4,
double c5) :
140 particle1(particle1), particle2(particle2), particle3(particle3), particle4(particle4) {