TwoParticleAverageSite

class TwoParticleAverageSite : public OpenMM::VirtualSite

This is a VirtualSite that computes the particle location as a weighted average of two other particle’s locations. Assuming the weights add up to 1, 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.

Parameters
  • particle1 – the index of the first particle

  • particle2 – the index of the second particle

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

  • weight2 – the weight factor (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.

Parameters

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

Returns

the weight factor used for that particle