1 #ifndef DDMD_TRAJECTORY_WRITER_H 2 #define DDMD_TRAJECTORY_WRITER_H 11 #include <ddMd/analyzers/Analyzer.h> 12 #include <ddMd/storage/AtomStorage.h> 14 #include <ddMd/storage/BondStorage.h> 17 #include <ddMd/storage/AngleStorage.h> 20 #include <ddMd/storage/DihedralStorage.h> 22 #include <simp/boundary/Boundary.h> 64 virtual void readParameters(std::istream& in);
90 virtual void sample(
long iStep);
100 virtual void output();
107 bool isBinary()
const;
125 virtual void writeFrame(std::ofstream& out,
long iStep) = 0;
186 std::ofstream outputFile_;
220 {
return isBinary_; }
223 {
return *domainPtr_; }
226 {
return *boundaryPtr_; }
229 {
return *atomStoragePtr_; }
232 {
return atomStoragePtr_->collector(); }
236 {
return *bondStoragePtr_; }
239 {
return bondStoragePtr_->collector(); }
244 {
return *angleStoragePtr_; }
247 {
return angleStoragePtr_->collector(); }
252 {
return *dihedralStoragePtr_; }
255 {
return dihedralStoragePtr_->collector(); }
Base class to write a trajectory to a single file.
Abstract base for periodic output and/or analysis actions.
Domain & domain()
Get the Domain by reference.
GroupCollector< 2 > & bondCollector()
Get the bond collector by reference.
An orthorhombic periodic unit cell.
GroupCollector< 3 > & angleCollector()
Get the angle collector by reference.
virtual ~TrajectoryWriter()
Destructor.
Parallel domain decomposition (DD) MD simulation.
Classes used by all simpatico molecular simulations.
Main object for a domain-decomposition MD simulation.
Saving / output archive for binary ostream.
Class for collecting Atoms from processors to master processor.
bool isBinary() const
Is the file format binary (true) or text (false)?
Class for collecting Groups from processors to master processor.
Utility classes for scientific computation.
BondStorage & bondStorage()
Get BondStorage by reference.
DihedralStorage & dihedralStorage()
Get DihedralStorage by reference.
A container for all the atoms and ghost atoms on this processor.
Decomposition of the system into domains associated with processors.
AtomCollector & atomCollector()
Get the AtomCollector by reference.
Saving archive for binary istream.
Container for Group<3> (angle) objects.
AngleStorage & angleStorage()
Get AngleStorage by reference.
Boundary & boundary()
Get Boundary by reference.
virtual void writeHeader(std::ofstream &out)
Write data that should appear once, at beginning of the file.
Container for Group<4> (dihedral) objects.
GroupCollector< 4 > & dihedralCollector()
Get the dihedral collector by reference.
AtomStorage & atomStorage()
Get AtomStorage by reference.
Container for for Group<2> (bond) objects.