espressopp.integrator.VelocityVerletRESPA

This is a multiple time stepping integrator according to the RESPA scheme (J. Chem. Phys. 97, 1990 (1992)). It has two layers: All forces of type “NonbondedSlow” are updated with a frequency given by the long time step, while all other forces are calculated according to the short time step. The short time step can be defined and set as a property of the integrator object, while the long time step is given by the product of the short time step with an integer “multistep”, which can also be set.

Example:

>>> integrator = espressopp.integrator.VelocityVerletRESPA(system)
>>> integrator.dt = timestep
>>> integrator.multistep = multistep
>>> ...
>>> integrator.run(nsteps)
class espressopp.integrator.VelocityVerletRESPA(system)

Constructs the VelocityVerletRESPA object.

Parameters:system (shared_ptr<System>) – system object
espressopp.integrator.VelocityVerletRESPA.setmultistep(multistep)

Sets the multiplier to construct the large timestep by multiplication with short time step as long_timestep = multistep * dt

Parameters:multistep – multiplier to construct the large timestep by multiplication with short time step
espressopp.integrator.VelocityVerletRESPA.getmultistep()

Gets the multiplier to construct the long timestep by multiplication with short time step as long_timestep = multistep * dt

Returns:multiplier to construct the long timestep by multiplication with short time step
Return type:int
int espressopp.integrator.VelocityVerletRESPA.multistep

Multiplier to construct the long timestep by multiplication with short time step as long_timestep = multistep * dt

real espressopp.integrator.VelocityVerletRESPA.dt

The short time step