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().