Beispiel #1
0
    def test_0(self):
        traj = mdio.iterload(fn('Tc5b.x'), fn('Tc5b.top'))
        frame0 = traj[0]
        assert frame0._buffer2d[0, 0] == frame0[0, 0]
        assert frame0._buffer2d[0, 1] == frame0[0, 1]
        assert frame0._buffer2d[0, 2] == frame0[0, 2]
        assert frame0._buffer2d[1, 0] == frame0[1, 0]
        assert frame0._buffer2d[19, 0] == frame0[19, 0]
        frame0._buffer2d[19, 0] = 1000.

        # make sure changing _buffer2d will update frame0.xyz too
        assert frame0._buffer2d[19, 0] == frame0[19, 0]
        arr0 = np.asarray(frame0._buffer2d)
        arr0[19] = [200, 300, 400.]
        assert frame0._buffer2d[19, 0] == frame0[19, 0] == arr0[19, 0]

        frame1 = frame0.copy()
        frame1.strip(traj.top("!@CA"))

        _f = pt.Frame(frame0, traj.top("@CA"))
        CA_2 = _f[2, :]
        aa_eq(CA_2, frame1[2, :])
        assert frame0._buffer1d.shape == (912, )
        assert frame0._buffer2d.shape == (304, 3)
        assert frame0._buffer1d.is_c_contig() == True
        frame0._buffer2d[1:3, 0] = array('d', [1., 2.])
        aa_eq(frame0[1:3, 0], array('d', frame0._buffer2d[1:3, 0]))
        aa_eq(frame0._buffer2d[1:3, 0], array('d', frame0._buffer2d[1:3, 0]))
Beispiel #2
0
 def test_force(self):
     frame = pt.Frame(304)
     force = np.zeros(304 * 3) + 1.
     assert frame.force is None
     frame.force = force
     assert frame.force.shape == (304, 3)
     frame.force = None
     assert frame.force is None
Beispiel #3
0
 def test_velocity(self):
     frame = pt.Frame(304)
     velocity = np.zeros(304 * 3) + 1.
     assert frame.velocity is None
     frame.velocity = velocity
     assert frame.velocity.shape == (304, 3)
     frame.velocity = None
     assert frame.velocity is None
Beispiel #4
0
def get_frame_with_force(traj, forces=frcs):
    frame0 = pt.Frame()
    crdinfo = dict(has_force=True)

    frame0._allocate_force_and_velocity(traj.top, crdinfo)

    for frame, frc in zip(traj, frcs):
        frame0.xyz[:] = frame.xyz
        frame0.force[:] = frc
        yield frame0
Beispiel #5
0
    def test_velocity_and_force_allocation(self):
        frame = pt.Frame()
        top = pt.tools.make_fake_topology(100)

        assert frame.n_atoms == 0
        assert not frame.has_force()
        assert not frame.has_velocity()

        crdinfo = dict(has_force=True, has_velocity=True)

        frame._allocate_force_and_velocity(top, crdinfo)
        assert frame.n_atoms == 100

        assert frame.has_force()
        assert frame.has_velocity()
Beispiel #6
0
 def shape_mismatch2():
     fa[0] = pt.Frame()
    def test_0(self):
        traj = pt.iterload(fn('Tc5b.x'), fn('Tc5b.top'))

        for xyz0 in traj.xyz:
            frame = pt.Frame(traj.n_atoms, xyz0, _as_ptr=True)
            aa_eq(frame.xyz, xyz0)
    def test_0(self):
        traj = pt.iterload("./data/Tc5b.x", "./data/Tc5b.top")

        for xyz0 in traj.xyz:
            frame = pt.Frame(traj.n_atoms, xyz0, _as_ptr=True)
            aa_eq(frame.xyz, xyz0)