Exemple #1
0
    def test5(self):
        convert_nbody = nbody_system.nbody_to_si(5.0 | units.kg, 10.0 | units.m)

        instance = SmallN(convert_nbody)
        instance.initialize_code()
        
        particles = datamodel.Particles(2)
        self.assertEquals(len(instance.particles), 0)
        
        particles.mass = [15.0, 30.0] | units.kg
        particles.radius =  [10.0, 20.0] | units.m
        particles.position = [[10.0, 20.0, 30.0], [20.0, 40.0, 60.0]] | units.m
        particles.velocity = [[0.0, 0.0, 0.0], [0.0, 0.0, 0.0]] | units.m / units.s

        
        instance.particles.add_particles(particles)
        self.assertEquals(len(instance.particles), 2)
        instance.set_state(1, 16|units.kg, 
                           20.0|units.m, 40.0|units.m, 60.0|units.m, 
                           1.0|units.ms, 1.0|units.ms, 1.0|units.ms , 
                           20.0|units.m)
        
        curr_state =  instance.get_state(1)
        for expected, actual in zip([16|units.kg, 
                           20.0|units.m, 40.0|units.m, 60.0|units.m, 
                           1.0|units.ms, 1.0|units.ms, 1.0|units.ms , 
                           20.0|units.m], curr_state):
            self.assertAlmostRelativeEquals(expected, actual)
        instance.stop()
        
        self.assertEquals(curr_state[0], 16|units.kg, 8)
Exemple #2
0
    def test5(self):
        convert_nbody = nbody_system.nbody_to_si(5.0 | units.kg,
                                                 10.0 | units.m)

        instance = SmallN(convert_nbody)
        instance.initialize_code()

        particles = datamodel.Particles(2)
        self.assertEqual(len(instance.particles), 0)

        particles.mass = [15.0, 30.0] | units.kg
        particles.radius = [10.0, 20.0] | units.m
        particles.position = [[10.0, 20.0, 30.0], [20.0, 40.0, 60.0]] | units.m
        particles.velocity = [[0.0, 0.0, 0.0], [0.0, 0.0, 0.0]
                              ] | units.m / units.s

        instance.particles.add_particles(particles)
        self.assertEqual(len(instance.particles), 2)
        instance.set_state(1, 16 | units.kg, 20.0 | units.m, 40.0 | units.m,
                           60.0 | units.m, 1.0 | units.ms, 1.0 | units.ms,
                           1.0 | units.ms, 20.0 | units.m)

        curr_state = instance.get_state(1)
        for expected, actual in zip([
                16 | units.kg, 20.0 | units.m, 40.0 | units.m, 60.0 | units.m,
                1.0 | units.ms, 1.0 | units.ms, 1.0 | units.ms, 20.0 | units.m
        ], curr_state):
            self.assertAlmostRelativeEquals(expected, actual)
        instance.stop()

        self.assertEqual(curr_state[0], 16 | units.kg, 8)