chemfiles::
Trajectory
¶A `Trajectory` is a chemistry file on the hard drive. It is the entry point of the chemfiles library.
A `Trajectory` is made with a `File` and a `Format`. The `File` implements all the physical operations, while the `Format` provides a way to interpret the file.
Public Functions
Trajectory
(const std::string &filename, char mode = 'r', const std::string &format = "")¶Open a file, automatically gessing the file format and type from the extension.
filename
: The file path. In `w` or `a` modes, the file is created if it does not exist yet. In `r` mode, an exception is thrown is the file does not exist yet. mode
: Opening mode for the file. Default mode is `r` for read. Other supported modes depends on the underlying format and are `w` for write, and `a` for append. `w` mode discard any previously existing file. format
: Specific format to use. Needed when there is no way to guess the format from the extension of the file, or when this guess would be wrong. read
()¶Read the next frame in the trajectory.
read_step
(const size_t step)¶Read a single frame at specific step from the trajectory.
write
(const Frame &frame)¶Write a single frame to the trajectory.
set_topology
(const Topology &top)¶Set the Topology of all the Frame read or written to `topology`. This replace any topology in the file being read, or in the Frame being written.
set_topology
(const std::string &filename, const std::string &format = "")¶Use the Topology of the first Frame of the following file as Topology for all the Frame read or written. This replace any topology in the file being read, or in the Frame being written. The optional parameter `format` can be used to specify the topology file format.
set_cell
(const UnitCell &new_cell)¶Set the unit cell of all the Frame read or written to `cell`. This replace any cell in the file being read, or in the Frame being written.
nsteps
() const¶Get the number of steps (the number of Frames) in this trajectory.
done
() const¶Have we read all the Frames in this file ?