Simulation State

class mlip.simulation.state.SimulationState(atomic_numbers: ndarray | None = None, positions: ndarray | None = None, forces: ndarray | None = None, velocities: ndarray | None = None, temperature: ndarray | None = None, kinetic_energy: ndarray | None = None, step: int = 0, compute_time_seconds: float = 0.0)

Holds all the information of the current state of a simulation.

This object is populated during a simulation and is processed by the loggers of a simulation.

atomic_numbers

The atomic numbers of the system.

Type:

numpy.ndarray | None

positions

The positions along the trajectory. Has shape M x N x 3, with M being the number of steps divided by the logging interval, and N being the number of atoms of the system. The unit is Angstrom.

Type:

numpy.ndarray | None

forces

The forces along the trajectory with the same shape as the positions. The unit is eV / Angstrom.

Type:

numpy.ndarray | None

velocities

The velocities along the trajectory with the same shape as the positions, in units of \(\sqrt{eV/u}\).

Type:

numpy.ndarray | None

temperature

The temperatures along the trajectory in Kelvin.

Type:

numpy.ndarray | None

kinetic_energy

The total kinetic energy along the trajectory in eV.

Type:

numpy.ndarray | None

step

The current number of steps performed.

Type:

int

compute_time_seconds

The compute time in seconds used so far for the run (not including logging times).

Type:

float

__init__(atomic_numbers: ndarray | None = None, positions: ndarray | None = None, forces: ndarray | None = None, velocities: ndarray | None = None, temperature: ndarray | None = None, kinetic_energy: ndarray | None = None, step: int = 0, compute_time_seconds: float = 0.0) None