System group¶
The system group answers what chemical or physical system the record is
about: the identity of the particle set, its connectivity and its typing.
Instantaneous coordinates of a time step live on frame or trajectory.
system is strictly frame-shaped: it is a
frame-shaped group — a meta document as
its attributes, named blocks as flat children, an optional box — with the
same blocks, columns and standardized identifiers a frame
uses.
system attributes = the system's meta document
\-- (atoms)
\-- (bonds)
\-- (angles)
\-- ...
\-- (box)
- Blocks are flat children of
system/(system/atoms,system/bonds). There is nosystem/topology/level: a nested group is a block like any other, and a reader would take atopologygroup for a block namedtopology. - The composition and identity keys of
Conventions
(
total_charge,spin,smiles, …) live in the meta document. - There is no
box_policyand noparameterschild.
A conforming system may omit coordinate columns entirely; instantaneous
Cartesian coordinates belong on frame or trajectory.
Records with only frame (no system) remain valid. Records with only
system (no frame) are valid. A trajectory may omit system; when
system is present, trajectory should carry state updates only, aligned
1:1 by row order with the system block of the same name
(Trajectory).
Types are linked, not embedded: atoms.type and each relation block's
type name rows of the record's forcefield section (or
its collection's), and a relation block's style column picks among styles
of one category. Per-instance parameters (MMFF, UFF) stay columns of the
relation blocks.