def test2(self): random.seed(1001) hop = Hop() hop.initialize_code() hop.parameters.number_of_neighbors_for_local_density = 7 hop.commit_parameters() particles = new_plummer_model(1000) hop.particles.add_particles(particles) #distance_to_center = (particles.position - particles.center_of_mass()).lengths() #print distance_to_center ds = {0: 0.482308834791, 1: 0.4885137677192688, 2: 0.27442726492881775} for method in [0, 1, 2]: hop.set_density_method(method) hop.calculate_densities() d = hop.particles[0].density self.assertAlmostRelativeEquals(d, ds[method] | nbody_system.density, 5) hop.stop()
def test7(self): print "Testing Hop states" unit_converter = nbody_system.nbody_to_si(1.0 | units.MSun, 1.0 | units.AU) particles = new_plummer_model(200, convert_nbody=unit_converter) print "First do everything manually:", instance = Hop(unit_converter=unit_converter) self.assertEquals(instance.get_name_of_current_state(), 'UNINITIALIZED') instance.initialize_code() self.assertEquals(instance.get_name_of_current_state(), 'INITIALIZED') instance.commit_parameters() self.assertEquals(instance.get_name_of_current_state(), 'EDIT') instance.particles.add_particles(particles) instance.commit_particles() self.assertEquals(instance.get_name_of_current_state(), 'RUN') instance.cleanup_code() self.assertEquals(instance.get_name_of_current_state(), 'END') instance.stop() print "ok" print "initialize_code(), commit_parameters(), (re)commit_particles(), " \ "and cleanup_code() should be called automatically:", instance = Hop(unit_converter=unit_converter) self.assertEquals(instance.get_name_of_current_state(), 'UNINITIALIZED') instance.parameters.number_of_neighbors_for_local_density = 50 self.assertEquals(instance.get_name_of_current_state(), 'INITIALIZED') instance.particles.add_particles(particles[:100]) self.assertEquals(instance.get_name_of_current_state(), 'EDIT') mass = instance.particles[0].mass self.assertEquals(instance.get_name_of_current_state(), 'RUN') instance.particles.add_particles(particles[100:]) self.assertEquals(instance.get_name_of_current_state(), 'UPDATE') mass = instance.particles[100].mass self.assertEquals(instance.get_name_of_current_state(), 'RUN') instance.stop() self.assertEquals(instance.get_name_of_current_state(), 'STOPPED') print "ok"
def test7(self): print "Testing Hop states" unit_converter = nbody_system.nbody_to_si(1.0 | units.MSun, 1.0 | units.AU) particles = new_plummer_model(200, convert_nbody=unit_converter) print "First do everything manually:", instance = Hop(unit_converter=unit_converter) self.assertEquals(instance.get_name_of_current_state(), 'UNINITIALIZED') instance.initialize_code() self.assertEquals(instance.get_name_of_current_state(), 'INITIALIZED') instance.commit_parameters() self.assertEquals(instance.get_name_of_current_state(), 'EDIT') instance.particles.add_particles(particles) instance.commit_particles() self.assertEquals(instance.get_name_of_current_state(), 'RUN') instance.cleanup_code() self.assertEquals(instance.get_name_of_current_state(), 'END') instance.stop() print "ok" print "initialize_code(), commit_parameters(), (re)commit_particles(), " \ "and cleanup_code() should be called automatically:", instance = Hop(unit_converter=unit_converter) self.assertEquals(instance.get_name_of_current_state(), 'UNINITIALIZED') instance.parameters.number_of_neighbors_for_local_density = 50 self.assertEquals(instance.get_name_of_current_state(), 'INITIALIZED') instance.particles.add_particles(particles[:100]) self.assertEquals(instance.get_name_of_current_state(), 'EDIT') mass = instance.particles[0].mass self.assertEquals(instance.get_name_of_current_state(), 'RUN') instance.particles.add_particles(particles[100:]) self.assertEquals(instance.get_name_of_current_state(), 'UPDATE') mass = instance.particles[100].mass self.assertEquals(instance.get_name_of_current_state(), 'RUN') instance.stop() self.assertEquals(instance.get_name_of_current_state(), 'STOPPED') print "ok"
def test2(self): random.seed(1001) hop = Hop() hop.initialize_code() hop.parameters.number_of_neighbors_for_local_density = 7 hop.commit_parameters() particles = new_plummer_model(1000) hop.particles.add_particles(particles) #distance_to_center = (particles.position - particles.center_of_mass()).lengths() #print distance_to_center ds = {0: 0.482308834791, 1:0.4885137677192688, 2:0.27442726492881775} for method in [0,1,2]: hop.set_density_method(method) hop.calculate_densities() d = hop.particles[0].density self.assertAlmostRelativeEquals(d, ds[method] | nbody_system.density, 5) hop.stop()