Package ffx.openmm

Class OutOfPlaneSite

java.lang.Object
ffx.openmm.VirtualSite
ffx.openmm.OutOfPlaneSite

public class OutOfPlaneSite extends VirtualSite
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. Note that while w12 and w13 are unitless, wcross has units of inverse distance.

  • Constructor Details

    • OutOfPlaneSite

      public OutOfPlaneSite(int particle1, int particle2, int particle3, double weight12, double weight13, double weightCross)
      Create an OutOfPlaneSite.
      Parameters:
      particle1 - The index of the first particle.
      particle2 - The index of the second particle.
      particle3 - The index of the third particle.
      weight12 - The weight for the vector from particle1 to particle2.
      weight13 - The weight for the vector from particle1 to particle3.
      weightCross - The weight for the cross product of the two vectors.
  • Method Details

    • destroy

      public void destroy()
      Destroy the virtual site.
      Specified by:
      destroy in class VirtualSite
    • getWeight12

      public double getWeight12()
      Get the weight for the vector from particle1 to particle2.
      Returns:
      The weight12 parameter.
    • getWeight13

      public double getWeight13()
      Get the weight for the vector from particle1 to particle3.
      Returns:
      The weight13 parameter.
    • getWeightCross

      public double getWeightCross()
      Get the weight for the cross product of the two vectors.
      Returns:
      The weightCross parameter.