Integrator
¶

class Integrator¶
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.
Subclassed by OpenMM::BrownianIntegrator, OpenMM::CompoundIntegrator, OpenMM::CustomIntegrator, OpenMM::DrudeIntegrator, OpenMM::LangevinIntegrator, OpenMM::LangevinMiddleIntegrator, OpenMM::NoseHooverIntegrator, OpenMM::RPMDIntegrator, OpenMM::VariableLangevinIntegrator, OpenMM::VariableVerletIntegrator, OpenMM::VerletIntegrator
Public Functions

virtual double getStepSize() const¶
Get the size of each time step, in picoseconds. If this integrator uses variable time steps, the size of the most recent step is returned.
 Returns
the step size, measured in ps

virtual void setStepSize(double size)¶
Set the size of each time step, in picoseconds. If this integrator uses variable time steps, the effect of calling this method is undefined, and it may simply be ignored.
 Parameters
size – the step size, measured in ps

virtual double getConstraintTolerance() const¶
Get the distance tolerance within which constraints are maintained, as a fraction of the constrained distance.

virtual void setConstraintTolerance(double tol)¶
Set the distance tolerance within which constraints are maintained, as a fraction of the constrained distance.

virtual void step(int steps) = 0¶
Advance a simulation through time by taking a series of time steps.
 Parameters
steps – the number of time steps to take

virtual int getIntegrationForceGroups() const¶
Get which force groups to use for integration. By default, all force groups are included. This is interpreted as a set of bit flags: the forces from group i will be included if (groups&(1<<i)) != 0.

virtual void setIntegrationForceGroups(int groups)¶
Set which force groups to use for integration. By default, all force groups are included. This is interpreted as a set of bit flags: the forces from group i will be included if (groups&(1<<i)) != 0.

virtual double getStepSize() const¶