mdtraj.formats.ArcTrajectoryFile

class mdtraj.formats.ArcTrajectoryFile(filename, mode='r', force_overwrite=True)

Interface for reading and writing to an TINKER archive files. (Note that the TINKER .xyz format is identical to this.) This is a file-like object, that both reading or writing depending on the mode flag. It implements the context manager protocol, so you can also use it with the python ‘with’ statement.

The conventional units in the arc file is angstrom. The format only supports storing the cartesian coordinates and box lengths.

Parameters
filenamestr

The filename to open. A path to a file on disk.

mode{‘r’}

The mode in which to open the file, only ‘r’ for read is supported.

force_overwritebool

If opened in write mode, and a file by the name of filename already exists on disk, should we overwrite it?

Attributes
topologyTopology

A single-chain, single-residue topology generated from the atom and bond information found in the TINKER archive/xyz file. It is only generated from the first member of the archive

Methods

close(self)

Close the .arc file

read(self[, n_frames, stride, atom_indices])

Read data from a TINKER .arc file.

read_as_traj(self[, n_frames, stride, …])

Read a trajectory from a ARC file

seek(self, offset[, whence])

Move to a new file position

tell(self)

Current file position

write(self, xyz)

The ArcTrajectoryFile does not have a write method, because TINKER .arc files have special numerical atom types which are not shared by any other trajectory file format.

__init__(self, filename, mode='r', force_overwrite=True)

Open an TINKER.arc file for reading/writing.

Methods

__init__(self, filename[, mode, force_overwrite])

Open an TINKER.arc file for reading/writing.

close(self)

Close the .arc file

read(self[, n_frames, stride, atom_indices])

Read data from a TINKER .arc file.

read_as_traj(self[, n_frames, stride, …])

Read a trajectory from a ARC file

seek(self, offset[, whence])

Move to a new file position

tell(self)

Current file position

write(self, xyz)

The ArcTrajectoryFile does not have a write method, because TINKER .arc files have special numerical atom types which are not shared by any other trajectory file format.

Attributes

distance_unit

close(self)

Close the .arc file

read(self, n_frames=None, stride=None, atom_indices=None)

Read data from a TINKER .arc file.

Note that only the Cartesian coordinates are read in. The .arc file also contains TINKER-specific numeric atom types and some bonding information, which we do not read in.

Parameters
n_framesint, None

The number of frames you would like to read from the file. If None, all of the remaining frames will be loaded.

stridenp.ndarray, optional

Read only every stride-th frame.

atom_indicesarray_like, optional

If not none, then read only a subset of the atoms coordinates from the file.

Returns
xyznp.ndarray, shape=(n_frames, n_atoms, 3), dtype=np.float32

The cartesian coordinates, in angstroms

read_as_traj(self, n_frames=None, stride=None, atom_indices=None)

Read a trajectory from a ARC file

Parameters
n_framesint, optional

If positive, then read only the next n_frames frames. Otherwise read all of the frames in the file.

stridenp.ndarray, optional

Read only every stride-th frame.

atom_indicesarray_like, optional

If not none, then read only a subset of the atoms coordinates from the file. This may be slightly slower than the standard read because it required an extra copy, but will save memory.

See also

read

Returns the raw data from the file

seek(self, offset, whence=0)

Move to a new file position

Parameters
offsetint

A number of frames.

whence{0, 1, 2}

0: offset from start of file, offset should be >=0. 1: move relative to the current position, positive or negative 2: move relative to the end of file, offset should be <= 0. Seeking beyond the end of a file is not supported

tell(self)

Current file position

Returns
offsetint

The current frame in the file.

write(self, xyz)

The ArcTrajectoryFile does not have a write method, because TINKER .arc files have special numerical atom types which are not shared by any other trajectory file format.

Parameters
xyznp.ndarray, shape=(n_frames, n_atoms, 3)

The cartesian coordinates of the atoms to write.