Print a vmd script to view an xyz file via Bash: “vmd -e file.vmd”
For macOS, consider using an alias in your .bash_profile such as: alias vmd=’/Applications/VMD\ 1.9.4a51-x86_64-Rev9.app/Contents/MacOS/startup.command’
Subclassed by feasst::FileVMDPatch
The XYZ file format has no formal standard: https://en.wikipedia.org/wiki/XYZ_file_format It is important to remember that FEASST has its own variant.
The first line is the number of sites, n. The second line is of the format [id lx ly lz xy xz yz], where id is a placeholder for order parameters or macrostates, lx is the box length in the x direction, ly is the box length in the y direction, lz is the box length in the z direction, xy is the xy domain tilt (see Domain), xz is the xz domain tilt, and yz is the yz domain tilt. If lz == 0, then the domain is set to two dimensions. The following n lines are in the format [id x y z], where id is the unique site type and x, y, z are the Cartesian coordinates.
FileXYZ(argtype args = argtype())
group_index: print the coordinates of this group index only (default: 0).
group: name of group defined within system (default: “”).
append: append file output if set to true. Do not append if false (default: “false”).
euler: if true, print Euler angles (default: “false”).
void load(const std::string file_name, Configuration *config) const
Load the xyz file with file_name into the configuration. Note that this function does not read the domain tilts xy, xz and yz. This function also does not read the site types. Thus, particles should be added to the system in the desired order. If no particles in the configuration, use the first particle type.
void load_frame(std::ifstream &xyz, Configuration *config) const
As above, but can load frame by frame.
- FileXYZ(argtype args = argtype())