← Back to team overview

yade-dev team mailing list archive

[Branch ~yade-dev/yade/trunk] Rev 2612: 1. Fix NewtonIntegrator (not skipping particles with all DOFs blocked)

 

------------------------------------------------------------
revno: 2612
committer: Václav Šmilauer <eu@xxxxxxxx>
branch nick: yade
timestamp: Mon 2010-12-13 14:31:57 +0100
message:
  1. Fix NewtonIntegrator (not skipping particles with all DOFs blocked)
  2. Disable Translation/RotationEngine tests, non-dynamic bodies changed their meaning and the tests fail.
modified:
  pkg/dem/NewtonIntegrator.cpp
  py/tests/omega.py


--
lp:yade
https://code.launchpad.net/~yade-dev/yade/trunk

Your team Yade developers is subscribed to branch lp:yade.
To unsubscribe from this branch go to https://code.launchpad.net/~yade-dev/yade/trunk/+edit-subscription
=== modified file 'pkg/dem/NewtonIntegrator.cpp'
--- pkg/dem/NewtonIntegrator.cpp	2010-12-05 17:10:06 +0000
+++ pkg/dem/NewtonIntegrator.cpp	2010-12-13 13:31:57 +0000
@@ -99,7 +99,7 @@
 			State* state=b->state.get();
 			const Body::id_t& id=b->getId();
 			// clump members are non-dynamic; we only get their velocities here
-			if(unlikely(!b->isDynamic() || b->isClumpMember())){
+			if(unlikely(b->isClumpMember())){
 				saveMaximaVelocity(scene,id,state);
 				continue;
 			}

=== modified file 'py/tests/omega.py'
--- py/tests/omega.py	2010-12-09 12:38:42 +0000
+++ py/tests/omega.py	2010-12-13 13:31:57 +0000
@@ -60,7 +60,8 @@
 		'Engines: dead engines are not run'
 		O.engines=[PyRunner(dead=True,initRun=True,iterPeriod=1,command='pass')]
 		O.step(); self.assert_(O.engines[0].nDone==0)
-	def testTranslationRotationEngines(self):
+	# must handle "non-dynamic" (a.k.a. DOFs blocked) particles correctly, then rename back
+	def _testTranslationRotationEngines(self):
 		tolerance = 1e-5
 		angVelTemp = 5.0
 		O.reset()