示例#1
0
文件: test_ph4.py 项目: vdhelm/amuse
    def test6(self):
        instance = ph4Interface()  # (debugger="xterm")
        instance.initialize_code()
        instance.set_eps2(0.0 ** 2)
        instance.set_eta(0.01)
        instance.commit_parameters()

        instance.new_particle(
            [1.0, 1.0, 1.0],
            [1.0, 0.0, -1.0],
            [0.0, 0.0, 0.0],
            [0.0, 0.0, 0.0],
            [0.0, 1.0, 0.0],
            [0.0, 0.0, 0.0],
            [0.0, 0.0, 0.0],
        )
        instance.commit_particles()
        Ep = instance.get_potential_energy()["potential_energy"]
        Ek = instance.get_kinetic_energy()["kinetic_energy"]
        self.assertEqual(Ek, 0.5)
        self.assertEqual(Ep, -2.5)
        instance.delete_particle(2)
        instance.recommit_particles()
        n = instance.get_number_of_particles()["number_of_particles"]
        Ep = instance.get_potential_energy()["potential_energy"]
        Ek = instance.get_kinetic_energy()["kinetic_energy"]

        instance.cleanup_code()
        instance.stop()

        self.assertEqual(n, 2)
        self.assertEqual(Ek, 0.0)
        self.assertEqual(Ep, -0.5)
示例#2
0
 def test6(self):
     instance = ph4Interface()#(debugger="xterm")
     instance.initialize_code()
     instance.set_eps2(0.0**2)
     instance.set_eta(0.01)
     instance.commit_parameters()
     
     instance.new_particle( 
         [1.0,1.0,1.0],
         [1.0,0.0,-1.0],
         [0.0,0.0,0.0],
         [0.0,0.0,0.0],
         [0.0,1.0,0.0],
         [0.0,0.0,0.0],
         [0.0,0.0,0.0] )
     instance.commit_particles()
     Ep=instance.get_potential_energy()['potential_energy']
     Ek=instance.get_kinetic_energy()['kinetic_energy']
     self.assertEqual( Ek, 0.5)
     self.assertEqual( Ep, -2.5)    
     instance.delete_particle(2)
     instance.recommit_particles()
     n=instance.get_number_of_particles()['number_of_particles']
     Ep=instance.get_potential_energy()['potential_energy']
     Ek=instance.get_kinetic_energy()['kinetic_energy']
 
     instance.cleanup_code()
     instance.stop()
 
     self.assertEqual( n, 2)
     self.assertEqual( Ek, 0.)
     self.assertEqual( Ep, -0.5)    
示例#3
0
文件: test_ph4.py 项目: vdhelm/amuse
 def test2(self):
     instance = ph4Interface()
     instance.initialize_code()
     for x in [0.101, 4.0]:
         error = instance.set_eps2(x)
         self.assertEquals(error, 0)
         value, error = instance.get_eps2()
         self.assertEquals(error, 0)
         self.assertEquals(x, value)
     instance.cleanup_code()
     instance.stop()
示例#4
0
 def test2(self):
     instance = ph4Interface()
     instance.initialize_code()
     for x in [0.101, 4.0]:
         error = instance.set_eps2(x)
         self.assertEquals(error, 0)            
         value, error = instance.get_eps2()
         self.assertEquals(error, 0)
         self.assertEquals(x, value)
     instance.cleanup_code()
     instance.stop()
示例#5
0
文件: test_ph4.py 项目: vdhelm/amuse
 def test5(self):
     instance = ph4Interface()
     instance.initialize_code()
     instance.set_eta(0.01)
     n = 4000
     ids = [i for i in range(1, n)]
     values = [1.0 * i for i in range(1, n)]
     instance.new_particle(values, values, values, values, values, values, values, values)
     error = instance.commit_particles()
     retrieved_state = instance.get_state(1)
     self.assertEquals(1.0, retrieved_state["mass"])
     retrieved_state = instance.get_state(3999)
     instance.cleanup_code()
     instance.stop()
     self.assertEquals(3999.0, retrieved_state["mass"])
示例#6
0
文件: test_ph4.py 项目: vdhelm/amuse
    def test1(self):
        instance = ph4Interface()
        instance.initialize_code()
        instance.set_eta(0.01)

        index, error = instance.new_particle(11.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 2.0)
        self.assertEquals(error, 0)
        self.assertEquals(index, 1)
        error = instance.commit_particles()
        self.assertEquals(error, 0)

        retrieved_state = instance.get_state(index)
        self.assertEquals(retrieved_state["__result"], 0)
        self.assertEquals(11.0, retrieved_state["mass"])
        self.assertEquals(2.0, retrieved_state["radius"])
        self.assertEquals(instance.get_number_of_particles()["number_of_particles"], 1)
        instance.cleanup_code()
        instance.stop()
示例#7
0
 def test1(self):
     instance = ph4Interface()
     instance.initialize_code()
     instance.set_eta(0.01)
     
     index, error = instance.new_particle(11.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 2.0)
     self.assertEquals(error, 0)
     self.assertEquals(index, 1)
     error = instance.commit_particles()
     self.assertEquals(error, 0)
     
     retrieved_state = instance.get_state(index)
     self.assertEquals(retrieved_state['__result'], 0)
     self.assertEquals(11.0,  retrieved_state['mass'])
     self.assertEquals(2.0, retrieved_state['radius'])
     self.assertEquals(instance.get_number_of_particles()['number_of_particles'], 1)
     instance.cleanup_code()
     instance.stop()
示例#8
0
文件: test_ph4.py 项目: vdhelm/amuse
    def test7(self):
        instance = ph4Interface()
        instance.initialize_code()
        instance.set_eps2(0.1 ** 2)
        instance.commit_parameters()
        id1, errorcode = instance.new_particle(mass=10.0, radius=1.0, x=0.0, y=0.0, z=0.0, vx=0.0, vy=0.0, vz=0.0)
        id2, errorcode = instance.new_particle(mass=10.0, radius=1.0, x=2.0, y=0.0, z=0.0, vx=10.0, vy=0.0, vz=0.0)

        instance.commit_particles()
        potential, errorcode = instance.get_potential(id1)
        self.assertEquals(errorcode, 0)
        self.assertAlmostRelativeEquals(potential, -10.0 / numpy.sqrt(2.0 ** 2 + 0.1 ** 2), 8)
        total_potential, errorcode = instance.get_potential_energy()
        potentials, errorcode = instance.get_potential([id1, id2])

        instance.cleanup_code()
        instance.stop()

        self.assertAlmostRelativeEquals(total_potential, numpy.sum(potentials * [10.0, 10.0]) / 2.0)
示例#9
0
 def test7(self):
     instance = ph4Interface()
     instance.initialize_code()
     instance.set_eps2(0.1**2)
     instance.commit_parameters()
     id1,errorcode = instance.new_particle(mass = 10.0, radius = 1.0, x = 0.0, y = 0.0, z = 0.0, vx = 0.0, vy = 0.0, vz = 0.0)
     id2,errorcode = instance.new_particle(mass = 10.0, radius = 1.0, x = 2.0, y = 0.0, z = 0.0, vx = 10.0, vy = 0.0, vz = 0.0)
     
     instance.commit_particles()
     potential, errorcode = instance.get_potential(id1)
     self.assertEqual(errorcode, 0)
     self.assertAlmostRelativeEquals(potential,  -10.0 / numpy.sqrt(2.0**2 + 0.1**2), 8)
     total_potential, errorcode = instance.get_potential_energy()
     potentials, errorcode = instance.get_potential([id1, id2])
 
     instance.cleanup_code()
     instance.stop()
     
     self.assertAlmostRelativeEquals(total_potential, numpy.sum(potentials * [10.0, 10.0]) / 2.0)
示例#10
0
文件: test_ph4.py 项目: Ingwar/amuse
 def test3(self):
     instance = ph4Interface()
     instance.initialize_code()
     instance.set_eta(0.01)
     
     instance.new_particle([11.0,12.0,13.0,14.0]
         , [2.1,3.1,4.1,5.1]
         , [2.2,3.2,4.2,5.2]
         , [2.3,3.3,4.3,5.3]
         , [2.4,3.4,4.4,5.4]
         , [2.5,3.5,4.5,5.5]
         , [2.6,3.6,4.6,5.6]
         , [2.0,3.0,4.0,5.0])
     error = instance.commit_particles()
     retrieved_state = instance.get_state(1)
     self.assertEquals(11.0,  retrieved_state['mass'])
     retrieved_state = instance.get_state([2,3,4])
     self.assertEquals(12.0,  retrieved_state['mass'][0])
     self.assertEquals(instance.get_number_of_particles()['number_of_particles'], 4)
     instance.cleanup_code()
     instance.stop()
示例#11
0
文件: test_ph4.py 项目: Ingwar/amuse
 def test9(self):
     instance = ph4Interface()
     instance.initialize_code()
     instance.set_eta(0.01)
     index, error = instance.new_particle(11.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 2.0, 10)
     self.assertEquals(error, 0)
     self.assertEquals(index, 10)
     #index, error = instance.new_particle(12.0, 3.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 10)
     #print index, error 
     # self.assertEquals(error, -1)
     #self.assertEquals(index, 10)
     error = instance.commit_particles()
     self.assertEquals(error, 0)
     
     retrieved_state = instance.get_state(index)
     self.assertEquals(retrieved_state['__result'], 0)
     self.assertEquals(11.0,  retrieved_state['mass'])
     self.assertEquals(2.0, retrieved_state['radius'])
     self.assertEquals(instance.get_number_of_particles()['number_of_particles'], 1)
     instance.cleanup_code()
     instance.stop()
示例#12
0
 def test3(self):
     instance = ph4Interface()
     instance.initialize_code()
     instance.set_eta(0.01)
     
     instance.new_particle([11.0,12.0,13.0,14.0]
         , [2.1,3.1,4.1,5.1]
         , [2.2,3.2,4.2,5.2]
         , [2.3,3.3,4.3,5.3]
         , [2.4,3.4,4.4,5.4]
         , [2.5,3.5,4.5,5.5]
         , [2.6,3.6,4.6,5.6]
         , [2.0,3.0,4.0,5.0])
     error = instance.commit_particles()
     retrieved_state = instance.get_state(1)
     self.assertEquals(11.0,  retrieved_state['mass'])
     retrieved_state = instance.get_state([2,3,4])
     self.assertEquals(12.0,  retrieved_state['mass'][0])
     self.assertEquals(instance.get_number_of_particles()['number_of_particles'], 4)
     instance.cleanup_code()
     instance.stop()
示例#13
0
 def test5(self):
     instance = ph4Interface()
     instance.initialize_code()
     instance.set_eta(0.01)
     n = 4000
     ids = [i for i in range(1,n)]
     values = [1.0 * i for i in range(1,n)]
     instance.new_particle(
           values
         , values
         , values
         , values
         , values
         , values
         , values
         , values)
     error = instance.commit_particles()
     retrieved_state = instance.get_state(1)
     self.assertEquals(1.0,  retrieved_state['mass'])
     retrieved_state = instance.get_state(3999)
     instance.cleanup_code()
     instance.stop()
     self.assertEquals(3999.0,  retrieved_state['mass'])
示例#14
0
文件: test_ph4.py 项目: vdhelm/amuse
 def test0(self):
     instance = ph4Interface()
     instance.initialize_code()
     instance.cleanup_code()
     instance.stop()
示例#15
0
 def test0(self):
     instance = ph4Interface()
     instance.initialize_code()
     instance.cleanup_code()
     instance.stop()