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!")
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()
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)
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!")
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!")