Velocity Verlet with Andersen thermostat¶
This module implements the Verlet algorithm with the Andersen thermostat.
Warning
This integrator may cause a significant drift of the centre of mass velocity.
For heating or cooling a system to a nominal temperature before
equilibration, we recommend the velocity-Verlet with Boltzmann
distribution
integrator.
-
class
halmd.mdsim.integrators.
verlet_nvt_andersen
(args)¶ Construct velocity-Verlet with Andersen thermostat.
Parameters: - args (table) – keyword arguments
- args.particle – instance of
halmd.mdsim.particle
- args.box – instance of
halmd.mdsim.box
- args.temperature (number) – temperature of heat bath
- args.rate (number) – collision rate
- args.timestep (number) – integration timestep (defaults to
halmd.mdsim.clock.timestep
)
-
set_timestep
(timestep)¶ Set integration time step in MD units.
Parameters: timestep (number) – integration timestep This method forwards to
halmd.mdsim.clock.set_timestep()
, to ensure that all integrators use an identical time step.
-
timestep
¶ Integration time step.
-
set_temperature
(temperature)¶ Set temperature of heat bath.
Parameters: temperature (number) – temperature of heat bath
-
temperature
¶ Temperature of heat bath.
-
collision_rate
¶ Collision rate with the heat bath.
-
disconnect
()¶ Disconnect integrator from core and profiler.
-
integrate
()¶ First leapfrog half-step of velocity-Verlet algorithm.
By default this function is connected to
halmd.mdsim.core.on_integrate()
.
-
finalize
()¶ Second leapfrog half-step of velocity-Verlet algorithm.
By default this function is connected to
halmd.mdsim.core.on_finalize()
.