def test_comprehensive(self):
        traj = pt.iterload("data/Test_RemdTraj/rem.nc.000",
                           "data/Test_RemdTraj/ala2.99sb.mbondi2.parm7")
        # temperature
        aa_eq(traj.temperatures, [300., 630.5, 630.5, 630.5, 630.5, 630.5,
                                  630.5, 630.5, 492.2, 384.3])

        # iterframe (already in doctest), just throwing raise to increase coverage score
        self.assertRaises(ValueError, lambda: traj.iterframe(rmsfit='crazy'))

        # raise
        # memory error if load larger than 1GB for xyz
        traj = pt.datafiles.load_tz2_ortho()
        for _ in range(11):
            traj._load(traj.filelist)

        self.assertRaises(MemoryError, lambda: traj.xyz)

        # can not find filename
        self.assertRaises(ValueError, lambda: traj._load(None))
        # has filename but does not have Topology
        self.assertRaises(
            ValueError,
            lambda: pt.TrajectoryIterator("data/Test_RemdTraj/rem.nc.000", top=None))
        self.assertRaises(
            ValueError,
            lambda: pt.TrajectoryIterator("data/Test_RemdTraj/rem.nc.000"))
        # empty Topology
        self.assertRaises(
            ValueError,
            lambda: pt.TrajectoryIterator("data/Test_RemdTraj/rem.nc.000", top=pt.Topology()))
        # weird Topology
        self.assertRaises(
            ValueError,
            lambda: pt.TrajectoryIterator("data/Test_RemdTraj/rem.nc.000", top=pt.Frame))
Пример #2
0
    def test_traj_topology(self):
        traj = pt.TrajectoryIterator()
        assert traj.top.is_empty() == True
        traj.top = pt.load_topology(fn('Tc5b.top'))
        assert traj.top.is_empty() == False
        traj._load(fn('Tc5b.x'))

        # use toplogy
        traj = pt.TrajectoryIterator()
        assert traj.topology.is_empty() == True
        traj.topology = pt.load_topology(fn('Tc5b.top'))
        assert traj.topology.is_empty() == False
        traj._load(fn('Tc5b.x'))
Пример #3
0
    def test_traj_topology(self):
        traj = pt.TrajectoryIterator()
        assert traj.top.is_empty() == True
        traj.top = pt.load_topology("./data/Tc5b.top")
        assert traj.top.is_empty() == False
        traj._load("./data/Tc5b.x")

        # use toplogy
        traj = pt.TrajectoryIterator()
        assert traj.topology.is_empty() == True
        traj.topology = pt.load_topology("./data/Tc5b.top")
        assert traj.topology.is_empty() == False
        traj._load("./data/Tc5b.x")
Пример #4
0
    def test_indexing(self):
        traj = pt.iterload(fn('Tc5b.x'), fn('Tc5b.top'))
        traj2 = pt.TrajectoryIterator()
        traj2.top = pt.load_topology(fn('Tc5b.top'))
        traj2._load(fn('Tc5b.x'))
        farray = traj2[[0, 9, 1]]
        assert farray.n_frames == 3
        assert traj2[0].atom(0) == farray[0].atom(0)
        assert traj2[9].atom(0) == farray[1].atom(0)
        assert traj2[1].atom(0) == farray[2].atom(0)

        arr = np.asarray(traj2[0]._buffer1d[:])
        frame0 = traj2[0]
        arr0 = np.asarray(frame0._buffer1d[:])

        mat0 = np.asmatrix(arr0).reshape(304, 3)
        mat0[:, 0] = np.asmatrix(list(range(304))).reshape(304, 1)
        assert frame0[0, 0] == 0.
        assert frame0[1, 0] == 1.
        assert frame0[2, 0] == 2.

        # raise if size = 0
        traj3 = pt.Trajectory()
        assert traj3.n_frames == 0, 'empty Trajectory, n_frames must be 0'
        self.assertRaises(IndexError, lambda: traj3[0])
        self.assertRaises(IndexError, lambda: traj3.__setitem__(0, traj[3]))
Пример #5
0
    def test_comprehensive(self):
        traj = pt.iterload(fn('Test_RemdTraj/rem.nc.000'),
                           fn('Test_RemdTraj/ala2.99sb.mbondi2.parm7'))
        # temperature
        aa_eq(traj.temperatures, [
            300., 630.5, 630.5, 630.5, 630.5, 630.5, 630.5, 630.5, 492.2, 384.3
        ])

        # iterframe (already in doctest), just throwing raise to increase coverage score
        self.assertRaises(ValueError, lambda: traj.iterframe(rmsfit='crazy'))

        # raise
        # memory error if load larger than 1GB for xyz
        traj = pt.datafiles.load_tz2_ortho()
        for _ in range(2):
            traj._load(traj.filelist)

        with patch('pytraj.trajectory.trajectory_iterator.TrajectoryIterator._estimated_GB') as \
                mem:

            def mock_get(*args, **kwargs):
                return 10000000

            mem.__get__ = mock_get
            self.assertRaises(MemoryError, lambda: traj.xyz)

        # can not find filename
        self.assertRaises(ValueError, lambda: traj._load(None))
        # has filename but does not have Topology
        self.assertRaises(
            ValueError,
            lambda: pt.TrajectoryIterator(fn('Test_RemdTraj/rem.nc.000'),
                                          top=None))
        self.assertRaises(
            ValueError,
            lambda: pt.TrajectoryIterator(fn('Test_RemdTraj/rem.nc.000')))
        # empty Topology
        self.assertRaises(
            ValueError,
            lambda: pt.TrajectoryIterator(fn('Test_RemdTraj/rem.nc.000'),
                                          top=pt.Topology()))
        # weird Topology
        self.assertRaises(
            ValueError,
            lambda: pt.TrajectoryIterator(fn('Test_RemdTraj/rem.nc.000'),
                                          top=pt.Frame))
Пример #6
0
 def test_iter_basic(self):
     traj = pt.TrajectoryIterator()
     traj.top = pt.load_topology(fn('Tc5b.top'))
     traj._load(fn('Tc5b.x'))
     for frame in traj:
         pass
Пример #7
0
 def test_iter_basic(self):
     traj = pt.TrajectoryIterator()
     traj.top = pt.load_topology("./data/Tc5b.top")
     traj._load("./data/Tc5b.x")
     for frame in traj:
         pass