def test_seek(): reference = XTCTrajectoryFile(get_fn('frame0.xtc')).read()[0] with XTCTrajectoryFile(get_fn('frame0.xtc')) as f: eq(f.tell(), 0) eq(f.read(1)[0][0], reference[0]) eq(f.tell(), 1) xyz = f.read(1)[0][0] eq(xyz, reference[1]) eq(f.tell(), 2) f.seek(0) eq(f.tell(), 0) xyz = f.read(1)[0][0] eq(f.tell(), 1) eq(xyz, reference[0]) f.seek(5) eq(f.read(1)[0][0], reference[5]) eq(f.tell(), 6) f.seek(-5, 1) eq(f.tell(), 1) eq(f.read(1)[0][0], reference[1])
def test_xtc_write_wierd_0(): x0 = np.asarray(np.random.randn(100, 3, 3), dtype=np.float32) x1 = np.asarray(np.random.randn(100, 9, 3), dtype=np.float32) with XTCTrajectoryFile(temp, 'w') as f: f.write(x0) f.write(x1) xr = XTCTrajectoryFile(temp).read()[0] print(xr.shape)
def test_write_0(): with XTCTrajectoryFile(fn_xtc) as f: xyz = f.read()[0] f = XTCTrajectoryFile(temp, 'w') f.write(xyz) f.close() with XTCTrajectoryFile(temp) as f: xyz2, time2, step2, box2 = f.read() eq(xyz, xyz2)
def test_write_1(): xyz = np.asarray(np.around(np.random.randn(100, 10, 3), 3), dtype=np.float32) time = np.asarray(np.random.randn(100), dtype=np.float32) step = np.arange(100) box = np.asarray(np.random.randn(100, 3, 3), dtype=np.float32) with XTCTrajectoryFile(temp, 'w') as f: f.write(xyz, time=time, step=step, box=box) with XTCTrajectoryFile(temp) as f: xyz2, time2, step2, box2 = f.read() eq(xyz, xyz2) eq(time, time2) eq(step, step2) eq(box, box2)
def test_read_atomindices_2(): iofile = io.loadh(get_fn('frame0.xtc.h5'), deferred=False) with XTCTrajectoryFile(fn_xtc) as f: xyz, time, step, box = f.read(atom_indices=slice(None, None, 2)) yield lambda: eq(xyz, iofile['xyz'][:, ::2]) yield lambda: eq(step, iofile['step']) yield lambda: eq(box, iofile['box']) yield lambda: eq(time, iofile['time'])
def test_read_chunk1(): with XTCTrajectoryFile(fn_xtc, 'r', chunk_size_multiplier=0.5) as f: xyz, time, step, box = f.read() iofile = io.loadh(get_fn('frame0.xtc.h5'), deferred=False) yield lambda: eq(xyz, iofile['xyz']) yield lambda: eq(step, iofile['step']) yield lambda: eq(box, iofile['box']) yield lambda: eq(time, iofile['time'])
def test_ragged_1(): # try first writing no box vectors,, and then adding some xyz = np.random.randn(100, 5, 3) time = np.random.randn(100) box = np.random.randn(100, 3, 3) with XTCTrajectoryFile(temp, 'w', force_overwrite=True) as f: f.write(xyz) assert_raises(ValueError, lambda: f.write(xyz, time, box))
def test_tell(): with XTCTrajectoryFile(get_fn('frame0.xtc')) as f: eq(f.tell(), 0) f.read(101) eq(f.tell(), 101) f.read(3) eq(f.tell(), 104)
def test_read_stride_2(): "read xtc with stride with n_frames" iofile = io.loadh(get_fn('frame0.xtc.h5'), deferred=False) with XTCTrajectoryFile(fn_xtc) as f: xyz, time, step, box = f.read(n_frames=1000, stride=3) yield lambda: eq(xyz, iofile['xyz'][::3]) yield lambda: eq(step, iofile['step'][::3]) yield lambda: eq(box, iofile['box'][::3]) yield lambda: eq(time, iofile['time'][::3])
def test_ragged_2(): # try first writing no box vectors, and then adding some xyz = np.random.randn(100, 5, 3) time = np.random.randn(100) box = np.random.randn(100, 3, 3) #from mdtraj.formats import HDF5TrajectoryFile with XTCTrajectoryFile(temp, 'w', force_overwrite=True) as f: f.write(xyz, time=time, box=box) assert_raises(ValueError, lambda: f.write(xyz))
def test_write_0(): with XTCTrajectoryFile(fn_xtc) as f: xyz = f.read()[0] f = XTCTrajectoryFile(temp, 'w') f.write(xyz) f.close() with XTCTrajectoryFile(temp) as f: xyz2, time2, step2, box2 = f.read() eq(xyz, xyz2)
def setUp(self): super(TestXTCRead, self).setUp() with XTCTrajectoryFile(self.fn, 'w') as f: f.write(xyz=self.xyz)
def test_read_error_1(): XTCTrajectoryFile('/tmp/sdfsdfsdf')
def test_read_error_0(): xyz = np.asarray(np.random.randn(100, 3, 3), dtype=np.float32) with XTCTrajectoryFile(temp, 'w') as f: f.read(xyz)
def test_write_error_0(): xyz = np.asarray(np.random.randn(100, 3, 3), dtype=np.float32) with XTCTrajectoryFile(temp, 'r') as f: f.write(xyz)
def test(self): "Test the read speed of the XTC code (10000 frames, 100 atoms)" with XTCTrajectoryFile(self.fn) as f: f.read()
def test_read_error_2(): XTCTrajectoryFile(get_fn('frame0.dcd')).read()
def test(self): "Test the write speed of the XTC code (10000 frames, 100 atoms)" with XTCTrajectoryFile(self.fn, 'w') as f: f.write(xyz=self.xyz)