OpenMM
|
This is a VirtualSite that computes the particle location based on three other particles' locations. More...
#include <VirtualSite.h>
Public Member Functions | |
OutOfPlaneSite (int particle1, int particle2, int particle3, double weight12, double weight13, double weightCross) | |
Create a new OutOfPlaneSite virtual site. | |
double | getWeight12 () const |
Get the weight factor for the vector from particle1 to particle2. | |
double | getWeight13 () const |
Get the weight factor for the vector from particle1 to particle3. | |
double | getWeightCross () const |
Get the weight factor for the cross product. | |
Public Member Functions inherited from VirtualSite | |
virtual | ~VirtualSite () |
int | getNumParticles () const |
Get the number of particles this virtual site depends on. | |
int | getParticle (int particle) const |
Get the index of a particle this virtual site depends on. | |
Additional Inherited Members | |
Protected Member Functions inherited from VirtualSite | |
VirtualSite () | |
void | setParticles (const std::vector< int > &particleIndices) |
This is a VirtualSite that computes the particle location based on three other particles' locations.
If r1 is the location of particle 1, r12 is the vector from particle 1 to particle 2, and r13 is the vector from particle 1 to particle 3, then the virtual site location is given by
r1 + w12r12 + w13r13 + wcross(r12 x r13)
The three weight factors are user-specified. This allows the virtual site location to be out of the plane of the three particles.
OutOfPlaneSite | ( | int | particle1, |
int | particle2, | ||
int | particle3, | ||
double | weight12, | ||
double | weight13, | ||
double | weightCross | ||
) |
Create a new OutOfPlaneSite virtual site.
particle1 | the index of the first particle |
particle2 | the index of the second particle |
particle3 | the index of the third particle |
weight12 | the weight factor for the vector from particle1 to particle2 |
weight13 | the weight factor for the vector from particle1 to particle3 |
weightCross | the weight factor for the cross product |
double getWeight12 | ( | ) | const |
Get the weight factor for the vector from particle1 to particle2.
double getWeight13 | ( | ) | const |
Get the weight factor for the vector from particle1 to particle3.
double getWeightCross | ( | ) | const |
Get the weight factor for the cross product.