Berendsen

class hoomd.md.methods.thermostats.Berendsen(kT, tau)

Bases: Thermostat

The Berendsen thermostat.

Parameters:
  • kT (hoomd.variant.variant_like) – Temperature of the simulation. [energy][\mathrm{energy}]

  • tau (float) – Thermostat time constant. [time][\mathrm{time}]

Berendsen rescales the velocities of all particles on each time step. The rescaling is performed so that the difference in the current temperature from the set point decays exponentially:

dTcurdt=TTcurτ\frac{dT_\mathrm{cur}}{dt} = \frac{T - T_\mathrm{cur}}{\tau}

Attention

Berendsen does NOT sample the correct distribution of kinetic energies.

Example:

berendsen = hoomd.md.methods.thermostats.Berendsen(
    kT=1.5,
    tau=simulation.operations.integrator.dt * 10_000,
)
simulation.operations.integrator.methods[0].thermostat = berendsen
kT

Temperature of the simulation. [energy][energy]

Examples:

berendsen.kT = 1.0
berendsen.kT = hoomd.variant.Ramp(
    A=1.0, B=2.0, t_start=0, t_ramp=1_000_000
)
Type:

hoomd.variant.variant_like

tau

Time constant of thermostat. [time][time]

Type:

float