Example #1
0
    def test_featurizer_empty(self):
        from pyemma.datasets import get_bpti_test_data
        top = get_bpti_test_data()['top']
        f = pyemma.coordinates.featurizer(top)
        params = {}
        params['topologyfile'] = top

        self.compare(f, params)
Example #2
0
    def test_save_chain(self):
        """ ensure a chain is correctly saved/restored"""
        from pyemma.datasets import get_bpti_test_data

        reader = pyemma.coordinates.source(get_bpti_test_data()['trajs'],
                                           top=get_bpti_test_data()['top'])
        tica = pyemma.coordinates.tica(reader)
        cluster = pyemma.coordinates.cluster_uniform_time(tica, 10)

        cluster.save(self.fn, save_streaming_chain=True)
        restored = pyemma.load(self.fn)
        self.assertIsInstance(restored, type(cluster))
        self.assertIsInstance(restored.data_producer, type(tica))
        self.assertIsInstance(restored.data_producer.data_producer,
                              type(reader))
        cluster.save(self.fn, overwrite=True, save_streaming_chain=False)
        restored = pyemma.load(self.fn)
        assert restored.data_producer is None
Example #3
0
 def test_featurizer(self):
     from pyemma.datasets import get_bpti_test_data
     top = get_bpti_test_data()['top']
     f = pyemma.coordinates.featurizer(top)
     f.add_distances_ca()
     params = {}
     params['topologyfile'] = top
     params['active_features'] = f.active_features
     self.maxDiff = None
     self.compare(f, params)
Example #4
0
    def setUpClass(cls):
        from pyemma.datasets import get_bpti_test_data

        d = get_bpti_test_data()
        trajs, top = d['trajs'], d['top']
        s = source(trajs, top=top)

        t = tica(s, lag=1)

        c = cluster_kmeans(t)
        cls.model_file = tempfile.mktemp()
        c.save(cls.model_file, save_streaming_chain=True)
Example #5
0
    def test_min_rmsd(self):
        import pyemma.datasets as data
        d = data.get_bpti_test_data()
        reader = coor.source(d['trajs'], top=d['top'])

        N_centers = 9
        centers = np.asarray((reader.ra_itraj_jagged[0, [0, 1, 7]],
                              reader.ra_itraj_jagged[1, [32, 1, 23]],
                              reader.ra_itraj_jagged[2, [17, 8, 15]])
                             ).reshape((N_centers, -1))
        dtraj = coor.assign_to_centers(reader, centers=centers, metric='minRMSD', return_dtrajs=True)

        num_assigned_states = len(np.unique(np.concatenate(dtraj)))
        self.assertEqual(num_assigned_states, N_centers,
                         "assigned states=%s out of %s possible ones."
                         % (num_assigned_states, N_centers))
Example #6
0
    def test_assignment_multithread_minrsmd(self):
        # re-do assignment with multiple threads and compare results
        import pyemma.datasets as data
        d = data.get_bpti_test_data()
        reader = coor.source(d['trajs'], top=d['top'])

        N_centers = 9
        centers = np.asarray((reader.ra_itraj_jagged[0, [0, 1, 7]],
                              reader.ra_itraj_jagged[1, [32, 1, 23]],
                              reader.ra_itraj_jagged[2, [17, 8, 15]])
                             ).reshape((N_centers, -1))
        chunksize = 1000

        assignment_mp = coor.assign_to_centers(reader, centers, n_jobs=2, chunksize=chunksize, metric='minRMSD')
        assignment_sp = coor.assign_to_centers(reader, centers, n_jobs=1, chunksize=chunksize, metric='minRMSD')

        np.testing.assert_equal(assignment_mp, assignment_sp)
Example #7
0
def model_file():
    file = None
    try:
        from pyemma.datasets import get_bpti_test_data
        d = get_bpti_test_data()
        trajs, top = d['trajs'], d['top']
        s = source(trajs, top=top)

        t = tica(s, lag=1)

        c = cluster_kmeans(t)
        file = tempfile.mktemp()
        c.save(file, save_streaming_chain=True)

        yield file
    finally:
        if file is not None:
            shutil.rmtree(file, ignore_errors=True)
Example #8
0
from pyemma.coordinates.data.util.traj_info_cache import TrajectoryInfoCache
from pyemma.coordinates.tests.test_featurereader import create_traj
from pyemma.datasets import get_bpti_test_data
from pyemma.util import config
from pyemma.util.files import TemporaryDirectory
import mdtraj
import pkg_resources
import pyemma
import numpy as np

if six.PY2:
    import dumbdbm
else:
    from dbm import dumb as dumbdbm

xtcfiles = get_bpti_test_data()['trajs']
pdbfile = get_bpti_test_data()['top']


class TestTrajectoryInfoCache(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        cls.work_dir = tempfile.mkdtemp("traj_cache_test")

    def setUp(self):
        self.tmpfile = tempfile.mktemp(dir=self.work_dir)
        self.db = TrajectoryInfoCache(self.tmpfile)

        assert len(self.db._database) == 1, len(self.db._database)
        assert 'db_version' in self.db._database