Interface for reading and writing to a DESMOND dtr file. 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 dtr file are angstroms and degrees. The format supports saving coordinates and unit cell parameters (lengths and angles)
Parameters: | filename : string
mode : {‘r’, ‘w’}
force_overwrite : bool
|
---|
See also
Examples
>>> # read a single frame, and then read the remaining frames
>>> f = DTRTrajectoryFile('mytrajectory.dtr', 'r')
>>> f.read(n_frames=1) # read a single frame from the file
>>> f.read() # read all of the remaining frames
>>> f.close()
>>> # read all of the data with automatic closing of the file
>>> with DTRTrajectoryFile('mytrajectory.dtr') as f:
>>> xyz, cell_lengths, cell_angles = f.read()
>>> # write some xyz coordinates to a new file
>>> with DTRTrajectoryFile('mytrajectory2.dtr. 'w') as f:
>>> f.write(np.random.randn(10,3,3))
>>> # write frames one at a time
>>> with DTRTrajectoryFile('mytrajectory2.dtr. 'w') as f:
>>> n_frames, n_atoms = 5, 10
>>> for i in range(n_frames):
>>> f.write(np.random.randn(n_atoms, 3))
x.__init__(...) initializes x; see help(type(x)) for signature
Methods
close | Close the dtr file handle |
get_times | Reading chemical times associated with all frames. |
read([n_frames, stride, atom_indices]) | Read the data from a DTR file |
read_as_traj(topology[, n_frames, stride, ...]) | Read a trajectory from a DTR file |
seek(offset[, whence]) | Move to a new file position |
tell | Current file position |
write(xyz[, cell_lengths, cell_angles, times]) | Write one or more frames of data to the dtr file |
Attributes
distance_unit |
Close the dtr file handle
Reading chemical times associated with all frames.
Returns: | times : np.ndarray, shape=(n_frames), dtype=float64
|
---|
Read the data from a DTR file
Parameters: | n_frames : int, optional
stride : np.ndarray, optional
atom_indices : array_like, optional
|
---|---|
Returns: | xyz : np.ndarray, shape=(n_frames, n_atoms, 3), dtype=float32
times: np.array, shape=(n_frames), dtype=float64
cell_lengths : np.ndarray, shape=(n_frames, 3), dtype=float32
cell_angles : np.ndarray, shape=(n_frames, 3), dtype=float32
|
Read a trajectory from a DTR file
Parameters: | topology : Topology
n_frames : int, optional
stride : np.ndarray, optional
atom_indices : array_like, optional
|
---|---|
Returns: | trajectory : Trajectory
|
Move to a new file position
Parameters: | offset : int
whence : {0, 1, 2}
|
---|
Current file position
Returns: | offset : int
|
---|
Write one or more frames of data to the dtr file
Parameters: | xyz : np.ndarray, shape=(n_frames, n_atoms, 3)
cell_lengths : np.ndarray, shape=(n_frames, 3), dtype=float32
cell_angles : np.ndarray, shape=(n_frames, 3), dtype=float32
times: np.ndarray, shape=(n_frames), dtype=float64
|
---|