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