Package ffx.openmm

Class Integrator

java.lang.Object
ffx.openmm.Integrator
Direct Known Subclasses:
BrownianIntegrator, CompoundIntegrator, CustomIntegrator, DrudeIntegrator, LangevinMiddleIntegrator, NoseHooverIntegrator, VariableLangevinIntegrator, VariableVerletIntegrator, VerletIntegrator

public abstract class Integrator extends Object
An Integrator defines a method for simulating a System by integrating the equations of motion. This is an abstract class. Subclasses define particular integration methods.

Each Integrator object is bound to a particular Context which it integrates. This connection is specified by passing the Integrator as an argument to the constructor of the Context.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected com.sun.jna.ptr.PointerByReference
    OpenMM Integrator pointer.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Integrator(com.sun.jna.ptr.PointerByReference pointer)
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    abstract void
    This method will be called by subclasses when the integrator is destroyed.
    double
    Get the tolerance within which constraints must be satisfied during the simulation.
    int
    Get the set of force groups this integrator acts on.
    com.sun.jna.ptr.PointerByReference
    Get the OpenMM Integrator pointer.
    double
    Get the size of each time step, in picoseconds.
    void
    setConstraintTolerance(double tolerance)
    Set the tolerance within which constraints must be satisfied during the simulation.
    void
    Set the force groups this integrator acts on.
    void
    setPointer(com.sun.jna.ptr.PointerByReference pointer)
    Set the OpenMM Integrator pointer.
    void
    setStepSize(double stepSize)
    Set the size of each time step, in picoseconds.
    void
    step(int steps)
    Integrate the system forward in time by the specified number of time steps.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • pointer

      protected com.sun.jna.ptr.PointerByReference pointer
      OpenMM Integrator pointer.
  • Constructor Details

    • Integrator

      public Integrator(com.sun.jna.ptr.PointerByReference pointer)
      Constructor.
  • Method Details

    • destroy

      public abstract void destroy()
      This method will be called by subclasses when the integrator is destroyed.
    • getConstraintTolerance

      public double getConstraintTolerance()
      Get the tolerance within which constraints must be satisfied during the simulation.
      Returns:
      The constraint tolerance in nm.
    • getIntegrationForceGroups

      public int getIntegrationForceGroups()
      Get the set of force groups this integrator acts on.
      Returns:
      The bit flags indicating which force groups this integrator acts on.
    • getPointer

      public com.sun.jna.ptr.PointerByReference getPointer()
      Get the OpenMM Integrator pointer.
      Returns:
      The OpenMM Integrator pointer.
    • getStepSize

      public double getStepSize()
      Get the size of each time step, in picoseconds.
      Returns:
      The step size in ps.
    • setConstraintTolerance

      public void setConstraintTolerance(double tolerance)
      Set the tolerance within which constraints must be satisfied during the simulation. The default value is 1e-5 nm.
      Parameters:
      tolerance - The tolerance within which constraints must be satisfied.
    • setIntegrationForceGroups

      public void setIntegrationForceGroups(int groups)
      Set the force groups this integrator acts on.
      Parameters:
      groups - The bit flags indicating which force groups this integrator acts on.
    • setPointer

      public void setPointer(com.sun.jna.ptr.PointerByReference pointer)
      Set the OpenMM Integrator pointer.
      Parameters:
      pointer - The OpenMM Integrator pointer.
    • setStepSize

      public void setStepSize(double stepSize)
      Set the size of each time step, in picoseconds.
      Parameters:
      stepSize - The step size in ps.
    • step

      public void step(int steps)
      Integrate the system forward in time by the specified number of time steps.
      Parameters:
      steps - The number of steps to take.