atomli.md
Generated from the public Python surface of Atomli 0.1.4.
Andersen(atoms, timestep, temperature_K, andersen_prob, fixcm=True, trajectory=None, logfile=None, loginterval=1)
Section titled “Andersen(atoms, timestep, temperature_K, andersen_prob, fixcm=True, trajectory=None, logfile=None, loginterval=1)”Andersen thermostat (NVT by stochastic velocity reassignment).
Mirrors ase.md.andersen.Andersen. andersen_prob is the per-atom,
per-step probability that an atom’s velocity is redrawn from the
Maxwell-Boltzmann distribution at temperature_K.
attach(self, /, function, interval=1, *args, **kwargs)
Section titled “attach(self, /, function, interval=1, *args, **kwargs)”call_observers(self, /)
Section titled “call_observers(self, /)”run(self, /, steps=50)
Section titled “run(self, /, steps=50)”Bussi(atoms, timestep, temperature_K, taut, trajectory=None, logfile=None, loginterval=1)
Section titled “Bussi(atoms, timestep, temperature_K, taut, trajectory=None, logfile=None, loginterval=1)”Bussi-Donadio-Parrinello stochastic velocity rescaling (NVT).
Mirrors ase.md.bussi.Bussi. taut is in ASE time units. Unlike
Berendsen this thermostat samples the canonical ensemble.
attach(self, /, function, interval=1, *args, **kwargs)
Section titled “attach(self, /, function, interval=1, *args, **kwargs)”call_observers(self, /)
Section titled “call_observers(self, /)”run(self, /, steps=50)
Section titled “run(self, /, steps=50)”IsotropicMTKNPT(atoms, timestep, temperature_K, pressure_au, tdamp, pdamp, tchain=3, pchain=3, tloop=1, ploop=1, trajectory=None, logfile=None, loginterval=1)
Section titled “IsotropicMTKNPT(atoms, timestep, temperature_K, pressure_au, tdamp, pdamp, tchain=3, pchain=3, tloop=1, ploop=1, trajectory=None, logfile=None, loginterval=1)”Isotropic Martyna-Tobias-Klein NPT dynamics.
Mirrors ase.md.nose_hoover_chain.IsotropicMTKNPT: a Nose-Hoover chain
thermostat with an MTK barostat that rescales the cell isotropically.
pressure_au is in eV per cubic angstrom; tdamp and pdamp are in ASE
time units.
This is deliberately NOT exposed as NPT: ASE’s ase.md.npt.NPT is the
Parrinello-Rahman scheme with a fully flexible cell, which atomli’s engine
does not implement. The two integrate the same ensemble but are not
step-for-step equivalent, so they keep separate names.
attach(self, /, function, interval=1, *args, **kwargs)
Section titled “attach(self, /, function, interval=1, *args, **kwargs)”call_observers(self, /)
Section titled “call_observers(self, /)”run(self, /, steps=50)
Section titled “run(self, /, steps=50)”Langevin(atoms, timestep, temperature_K=300.0, friction=0.01, trajectory=None, logfile=None, loginterval=1)
Section titled “Langevin(atoms, timestep, temperature_K=300.0, friction=0.01, trajectory=None, logfile=None, loginterval=1)”Langevin NVT dynamics.
attach(self, /, function, interval=1, *args, **kwargs)
Section titled “attach(self, /, function, interval=1, *args, **kwargs)”call_observers(self, /)
Section titled “call_observers(self, /)”run(self, /, steps=50)
Section titled “run(self, /, steps=50)”MDLogger(dyn, atoms, logfile, header=True, stress=False, peratom=False, mode='a')
Section titled “MDLogger(dyn, atoms, logfile, header=True, stress=False, peratom=False, mode='a')”Write one thermodynamic summary line per MD step.
Mirrors ase.md.md.MDLogger. Observer on a Rust MD driver.
close(self)
Section titled “close(self)”Close the log file.
NPTBerendsen(atoms, timestep, temperature_K, *, pressure_au=0.0, taut=None, taup=None, compressibility_au=None, fixcm=True, trajectory=None, logfile=None, loginterval=1)
Section titled “NPTBerendsen(atoms, timestep, temperature_K, *, pressure_au=0.0, taut=None, taup=None, compressibility_au=None, fixcm=True, trajectory=None, logfile=None, loginterval=1)”Berendsen NPT dynamics (weak coupling to a heat bath and a barostat).
Mirrors ase.md.nptberendsen.NPTBerendsen. taut and taup are in ASE
time units; pressure_au is in eV per cubic angstrom and
compressibility_au in cubic angstrom per eV, the same ASE units.
Like the NVT form this is a weak-coupling scheme, not a true NPT ensemble sampler. The cell is rescaled isotropically.
attach(self, /, function, interval=1, *args, **kwargs)
Section titled “attach(self, /, function, interval=1, *args, **kwargs)”call_observers(self, /)
Section titled “call_observers(self, /)”run(self, /, steps=50)
Section titled “run(self, /, steps=50)”NVTBerendsen(atoms, timestep, temperature_K, taut, fixcm=True, trajectory=None, logfile=None, loginterval=1)
Section titled “NVTBerendsen(atoms, timestep, temperature_K, taut, fixcm=True, trajectory=None, logfile=None, loginterval=1)”Berendsen NVT dynamics (weak coupling to a heat bath).
Mirrors ase.md.nvtberendsen.NVTBerendsen. taut is the coupling time
constant in ASE time units, exactly as ASE takes it.
The Berendsen thermostat does not sample the canonical ensemble; it drives the instantaneous temperature toward the setpoint. Use it to equilibrate, then switch to Bussi, Langevin or Nose-Hoover for production.
attach(self, /, function, interval=1, *args, **kwargs)
Section titled “attach(self, /, function, interval=1, *args, **kwargs)”call_observers(self, /)
Section titled “call_observers(self, /)”run(self, /, steps=50)
Section titled “run(self, /, steps=50)”NoseHooverChainNVT(atoms, timestep, temperature_K, tdamp, tchain=3, tloop=1, trajectory=None, logfile=None, loginterval=1)
Section titled “NoseHooverChainNVT(atoms, timestep, temperature_K, tdamp, tchain=3, tloop=1, trajectory=None, logfile=None, loginterval=1)”Nose-Hoover chain thermostat (NVT).
Mirrors ase.md.nose_hoover_chain.NoseHooverChainNVT. tdamp is the
thermostat time constant in ASE time units, tchain the chain length and
tloop the number of inner integration loops per step.
attach(self, /, function, interval=1, *args, **kwargs)
Section titled “attach(self, /, function, interval=1, *args, **kwargs)”call_observers(self, /)
Section titled “call_observers(self, /)”run(self, /, steps=50)
Section titled “run(self, /, steps=50)”VelocityVerlet(atoms, timestep, trajectory=None, logfile=None, loginterval=1)
Section titled “VelocityVerlet(atoms, timestep, trajectory=None, logfile=None, loginterval=1)”NVE velocity Verlet.