diff --git a/pycgtool/frame.py b/pycgtool/frame.py index f7d0c831473e45e413b97010ecc5904d011f8e24..eee0ac402c4e110449ef757ca83057e70ff4f118 100644 --- a/pycgtool/frame.py +++ b/pycgtool/frame.py @@ -135,6 +135,7 @@ class Frame: """ self.residues = [] self.number = frame_start - 1 + self.time = 0 self.numframes = 0 self.natoms = 0 self.box = np.zeros(3, dtype=np.float32) @@ -249,6 +250,7 @@ class Frame: i += 1 self.number += 1 + self.time = xtc_frame.time[0] self.box = xtc_frame.unitcell_lengths[0] return True # IndexError - run out of xtc frames @@ -274,6 +276,7 @@ class Frame: atom.coords = self.xtc.x[i] i += 1 self.number += 1 + self.time = self.xtc.time self.box = np.diag(self.xtc.box)[0:3] / 10 @@ -303,13 +306,14 @@ class Frame: xyz[0][i] = atom.coords i += 1 + time = np.array([self.time], dtype=np.float32) step = np.array([self.number], dtype=np.int32) box = np.zeros((1, 3, 3), dtype=np.float32) for i in range(3): box[0][i][i] = self.box[i] - self._xtc_buffer.write(xyz, step=step, box=box) + self._xtc_buffer.write(xyz, time=time, step=step, box=box) def _parse_gro(self, filename): """ diff --git a/pycgtool/mapping.py b/pycgtool/mapping.py index 8a72f455bdde7e6f02b08855bef544a8aa3b5c0e..e93a0101e20b8ec3a7a096dd2203765282643247 100644 --- a/pycgtool/mapping.py +++ b/pycgtool/mapping.py @@ -175,6 +175,7 @@ class Mapping: aa_residues = list(aa_residues) cgframe = self._cg_frame_setup(aa_residues, frame.name) + cgframe.time = frame.time cgframe.number = frame.number cgframe.box = frame.box