Skip to content

Vels Handler

ReaxFF atomic velocities and accelerations (vels / moldyn.vel / molsav) handler.

This module provides a handler for parsing ReaxFF velocity-related output files, which store per-atom coordinates, velocities, accelerations, and optional lattice and temperature information for a single MD step.

Typical use cases include:

  • extracting atomic velocities or accelerations for analysis
  • correlating kinematics with structural or energetic data
  • visualizing velocity and acceleration fields

VelsHandler

Bases: BaseHandler

Parser for ReaxFF atomic kinematics output files (vels, moldyn.vel, molsav).

This class parses velocity-style ReaxFF outputs and exposes atomic coordinates, velocities, accelerations, and related metadata as section-specific tables.

Parsed Data

Summary table The main dataframe() is intentionally empty. All meaningful data is stored in section tables.

Section tables Accessible via sections or section_df(name), with one table per section:

- ``Atom coordinates``:
  One row per atom, with columns:
  ["atom_index", "x", "y", "z", "symbol"]

- ``Atom velocities``:
  One row per atom, with columns:
  ["atom_index", "vx", "vy", "vz"]

- ``Atom accelerations``:
  One row per atom, with columns:
  ["atom_index", "ax", "ay", "az"]

- ``Previous atom accelerations``:
  One row per atom, with columns:
  ["atom_index", "ax", "ay", "az"]
  (empty if not present in the file)

Metadata Returned by metadata(), containing (when available): { "lattice_parameters": { "a": float, "b": float, "c": float, "alpha": float, "beta": float, "gamma": float }, "md_temperature_K": float }

Notes
  • All numeric parsing supports Fortran D/d exponents.
  • The number of atoms is inferred from the Atom coordinates header and reused for all subsequent sections.
  • Sections encountered out of order or with truncated data raise explicit parsing errors.
  • This handler represents a single MD snapshot and is not frame-based; n_frames() always returns 0.