Exemplo n.º 1
0
    def test_setPositionsList_1DREnsemble(self):
        exchange_dimensions = {"temperature": range(288, 310)}
        replicas = len(exchange_dimensions["temperature"])
        expected_pos = range(replicas)
        self.group = ensemble.ReplicaExchange(
            system=self.sys, exchange_dimensions=exchange_dimensions)

        initial_positions = sorted([
            self.group.replicas[replica]._currentPosition
            for replica in self.group.replicas
        ])
        self.group.set_replicas_positions(expected_pos)
        setted_pos = sorted([
            self.group.replicas[replica]._currentPosition
            for replica in self.group.replicas
        ])

        self.assertEqual(len(self.group.replicas),
                         22,
                         msg="not enough trajectories were retrieved!")
        self.assertNotEqual(initial_positions,
                            setted_pos,
                            msg="Setted positions are the same as before!")
        self.assertEqual(setted_pos,
                         list(expected_pos),
                         msg="The positions were not set correctly!")
Exemplo n.º 2
0
    def test_run_1DREnsemble(self):
        from ensembler import ensemble
        exchange_dimensions = {"temperature": range(288, 310)}

        group = ensemble.ReplicaExchange(
            system=self.sys, exchange_dimensions=exchange_dimensions)
        group.run()
Exemplo n.º 3
0
    def test_init_2DREnsemble(self):
        from ensembler import ensemble
        exchange_dimensions = {
            "temperature": range(288, 310),
            "mass": range(1, 10)
        }

        ensemble.ReplicaExchange(system=self.sys,
                                 exchange_dimensions=exchange_dimensions)
Exemplo n.º 4
0
    def test_getTotPot_1DREnsemble(self):
        replicas = 22
        nsteps = 100
        from ensembler import ensemble
        exchange_dimensions = {"temperature": range(288, 310)}

        self.group = ensemble.ReplicaExchange(
            system=self.sys, exchange_dimensions=exchange_dimensions)
        self.group.nSteps_between_trials = nsteps
        self.group.run()
        totPots = self.group.get_total_energy()

        ##print(len(totPots))
        ##print(totPots)
        self.assertEqual(len(totPots),
                         replicas,
                         msg="not enough trajectories were retrieved!")
Exemplo n.º 5
0
    def test_getTraj_1DREnsemble(self):
        replicas = 22
        nsteps = 100
        group = None
        from ensembler import ensemble
        exchange_dimensions = {"temperature": range(288, 310)}

        self.group = ensemble.ReplicaExchange(
            system=self.sys, exchange_dimensions=exchange_dimensions)
        self.group.nSteps_between_trials = nsteps
        self.group.run()
        trajectories = self.group.get_trajectories()

        ##print(len(trajectories))
        ##print([len(trajectories[t]) for t in trajectories])

        self.assertEqual(len(trajectories),
                         22,
                         msg="not enough trajectories were retrieved!")
        self.assertEquals([len(trajectories[t]) for t in trajectories],
                          second=[nsteps for x in range(replicas)],
                          msg="traj lengths are not correct!")