OutOfPlaneSite

class simtk.openmm.openmm.OutOfPlaneSite(*args)

This is a VirtualSite that computes the particle location based on three other particles’ locations. If r<sub>1</sub> is the location of particle 1, r<sub>12</sub> is the vector from particle 1 to particle 2, and r<sub>13</sub> is the vector from particle 1 to particle 3, then the virtual site location is given by

r<sub>1</sub> + w<sub>12</sub>r<sub>12</sub> + w<sub>13</sub>r<sub>13</sub> + w<sub>cross</sub>(r<sub>12</sub> x r<sub>13</sub>)

The three weight factors are user-specified. This allows the virtual site location to be out of the plane of the three particles.

__init__(self, particle1, particle2, particle3, weight12, weight13, weightCross) → OutOfPlaneSite

__init__(self, other) -> OutOfPlaneSite

Create a new OutOfPlaneSite virtual site.

Parameters:
  • particle1 (int) – the index of the first particle
  • particle2 (int) – the index of the second particle
  • particle3 (int) – the index of the third particle
  • weight12 (double) – the weight factor for the vector from particle1 to particle2
  • weight13 (double) – the weight factor for the vector from particle1 to particle3
  • weightCross (double) – the weight factor for the cross product

Methods

__init__(self, particle1, particle2, …) __init__(self, other) -> OutOfPlaneSite
getNumParticles(self) Get the number of particles this virtual site depends on.
getParticle(self, particle) Get the index of a particle this virtual site depends on.
getWeight12(self) Get the weight factor for the vector from particle1 to particle2.
getWeight13(self) Get the weight factor for the vector from particle1 to particle3.
getWeightCross(self) Get the weight factor for the cross product.
getWeight12(self) → double

Get the weight factor for the vector from particle1 to particle2.

getWeight13(self) → double

Get the weight factor for the vector from particle1 to particle3.

getWeightCross(self) → double

Get the weight factor for the cross product.

getNumParticles(self) → int

Get the number of particles this virtual site depends on.

getParticle(self, particle) → int

Get the index of a particle this virtual site depends on.

Parameters:particle (int) – the particle to get (between 0 and getNumParticles())
Returns:the index of the particle in the System
Return type:int