Why Frame#
CHILL, rings, cages, Steinhardt, and SOAP are per-snapshot. The handle is one configuration: neighbours, a bonded graph, and labels on that cloud.
One configuration#
Frame is that handle. Multi-frame work is explicit:
read(path, frame=n) (1-indexed) or frame.load_frame(n) on a
path-backed Frame. Arrays-only and ASE-built frames have no path
and cannot load_frame.
Trajectory is an alias#
Trajectory is a compatibility alias of Frame
(src/pydseams/__init__.py). It does not iterate a movie and does
not own a campaign. The engine CLI that walks trajectories and
writes output/ lives in seams-core. This package does not grow a
second movie object.