REFTRAJ

Loads an external trajectory file and performs analysis on the loaded snapshots; optionally, calculates per-frame potential energy, forces and other properties as requested by the keyword EVAL below with the force method specified in the &FORCE_EVAL section. Time integration is not performed here, and quantities of velocity, temperature and kinetic energy from nuclear motion are therefore irrelevant. Such a REFTRAJ run is essentially a series of single-point calculations; the snapshots are not necessarily from MD and may be from custom concatenation.

The trajectory should be a multi-frame XYZ file where each frame has the same number of atoms and kind specification as the &FORCE_EVAL/&SUBSYS down to the exact ordering, but cell (box) size and shape can be different. The comment line of each frame is parsed for additional information such as cell, step, time and energy; currently the parser supports the same formats as the XYZ option of &FORCE_EVAL/&SUBSYS/&CELL/CELL_FILE_FORMAT, corresponding to trajectory files printed from &MOTION/&PRINT/&TRAJECTORY as XYZ and EXTXYZ and from the external dumpdcd tool.

A minimal working example trajectory in the extended XYZ format should have Lattice="<Ax> <Ay> <Az> <Bx> <By> <Bz> <Cx> <Cy> <Cz>" for the components of cell vectors A, B, C, and Step=<integer> for the integer timestep. Time=<real> and Energy=<real> for simulation time and potential energy respectively are also parsed; if omitted, the default value will be 0.0 . Note that the parser is case insensitive, but whitespaces are only used between key-value pairs as delimiters and not around the = signs in an extended XYZ file. Properties=species:S:1:pos:R:3 is always assumed for backwards compatibility with the primitive XYZ specification: the first column is a string for element symbol (or kind alias), followed by three columns of real values for Cartesian coordinates in angstrom.

Alternatively, the legacy brief format from &TRAJECTORY output where the comment line starts with i = <integer> for the integer timestep can also be used, this time with the = sign surrounded by whitespaces. The cell information may come from a separate file requested by CELL_FILE_NAME if variable, or may be taken as the &FORCE_EVAL/&SUBSYS/&CELL if constant. [Edit on GitHub]

Subsections

Keywords

Keyword descriptions

CELL_FILE_NAME: string = reftraj.cell

Usage: CELL_FILE_NAME

Specify the filename where the cell is stored (for trajectories generated within variable cell ensembles). This file will be parsed only when no cell information is found in the trajectory file and VARIABLE_VOLUME is set to .TRUE. [Edit on GitHub]

EVAL: enum = NONE

Valid values:

  • NONE Do not evaluate energy or force

  • ENERGY Evaluate only the energy

  • ENERGY_FORCES Evaluate energy and forces

Selects the mode of energy and force evaluation for each retrieved snapshot during a REFTRAJ run, which determines availability of other properties and the time consumption in the computation. The default is NONE, a conservative option useful for analyses concerning structure only that are independent of force method, such as MSD and &MOTION/&PRINT/&STRUCTURE_DATA. This keyword supersedes the logical keywords EVAL_<mode> in older versions of the program. [Edit on GitHub]

FIRST_SNAPSHOT: integer = 1

Usage: FIRST_SNAPSHOT

Index of the snapshot stored in the trajectory file from which to start a REFTRAJ run [Edit on GitHub]

LAST_SNAPSHOT: integer = 0

Usage: LAST_SNAPSHOT

Index of the last snapshot stored in the trajectory file that is read along a REFTRAJ run. Must be specified as default is 0. Must be specified exactly as LAST_SNAPSHOT = FIRST_SNAPSHOT + STRIDE*(number of strides) to avoid an error ‘Unexpected EOF’. Note that STRIDE*(number of strides) is simply the number of steps between the first to last snapshot. [Edit on GitHub]

STRIDE: integer = 1

Usage: STRIDE

Stride in number of snapshot for the reftraj analysis [Edit on GitHub]

TRAJ_FILE_NAME: string = reftraj.xyz

Usage: TRAJ_FILE_NAME

Specify the filename where the trajectory is stored. [Edit on GitHub]

VARIABLE_VOLUME: logical = F

Lone keyword: T

Enables the possibility to read a CELL file with information on the CELL size during the MD. This keyword will be ignored if cell information is already available in the trajectory file. [Edit on GitHub]

WRAP: enum = NONE

Valid values:

  • NONE Do not wrap atoms at all and use coordinates exactly as input

  • POSITIVE Wrap atoms so that fractional coordinates are within [0, 1]

  • CENTRAL Wrap atoms so that fractional coordinates are within [-1/2, +1/2]

Whether and how atoms would be wrapped to inside the simulation box according to periodic boundary condition before any subsequent analysis. Useful when there is need to convert the raw, unwrapped coordinates produced from MOTION%PRINT%TRAJECTORY for post-processing. This keyword will be ignored when requesting MSD calculation because wrapping coordinates makes displacement discontinuous. [Edit on GitHub]