Exemplo n.º 1
0
 def testL3GeomIncidentVelocity_homoPos(self):
     "PBC: L6Geom incident velocity (homoDeform=='pos')"
     S=woo.master.scene
     S.cell.homoDeform='pos'; S.one()
     S.engines=[ForceResetter(),ContactLoop([Cg2_Sphere_Sphere_L6Geom()],[Cp2_FrictMat_FrictPhys()],[Law2_L6Geom_FrictPhys_IdealElPl(noBreak=True)]),Leapfrog(reset=True)]
     i=utils.createContacts([0],[1])[0]
     S.dt=1e-10; S.one()
     self.assertAlmostEqual(self.initVel.norm(),i.geom.vel.norm())
Exemplo n.º 2
0
Arquivo: pbc.py Projeto: sjl767/woo
 def testL6GeomIncidentVelocity(self):
     "PBC: L6Geom incident velocity (homoDeform==Cell.HomoGradV2)"
     S=woo.master.scene
     S.cell.homoDeform=Cell.HomoGradV2
     S.one()
     S.engines=[ForceResetter(),ContactLoop([Cg2_Sphere_Sphere_L6Geom()],[Cp2_FrictMat_FrictPhys()],[Law2_L6Geom_FrictPhys_IdealElPl(noBreak=True)]),Leapfrog(reset=True)]
     i=utils.createContacts([0],[1])[0]
     S.dt=1e-10; S.one() # tiny timestep, to not move the normal too much
     self.assertAlmostEqual(self.initVel.norm(),i.geom.vel.norm())
Exemplo n.º 3
0
Arquivo: pbc.py Projeto: yankang84/woo
 def testL6GeomIncidentVelocity(self):
     "PBC: L6Geom incident velocity (homoDeform=='gradV2')"
     S = woo.master.scene
     S.cell.homoDeform = 'gradV2'
     S.one()
     S.engines = [
         ForceResetter(),
         ContactLoop([Cg2_Sphere_Sphere_L6Geom()],
                     [Cp2_FrictMat_FrictPhys()],
                     [Law2_L6Geom_FrictPhys_IdealElPl(noBreak=True)]),
         Leapfrog(reset=True)
     ]
     i = utils.createContacts([0], [1])[0]
     S.dt = 1e-10
     S.one()  # tiny timestep, to not move the normal too much
     self.assertAlmostEqual(self.initVel.norm(), i.geom.vel.norm())