class TwoParticleAverageSite : public OpenMM::VirtualSite

This is a VirtualSite that computes the particle location as a weighted average of two other particle’s locations. This means the virtual site is on the line passing through the two particles.

Public Functions

TwoParticleAverageSite(int particle1, int particle2, double weight1, double weight2)

Create a new TwoParticleAverageSite virtual site. Normally weight1 and weight2 should add up to 1, although this is not strictly required.

  • particle1 – the index of the first particle

  • particle2 – the index of the second particle

  • weight1 – the weight factor (typically between 0 and 1) for the first particle

  • weight2 – the weight factor (typically between 0 and 1) for the second particle

double getWeight(int particle) const

Get the weight factor used for a particle this virtual site depends on.


particle – the particle to get (between 0 and getNumParticles())


the weight factor used for that particle