yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #07893
[Branch ~yade-dev/yade/trunk] Rev 2923: - include gravity a bit differently in Newton, so that it's reflected in scene->forces and accoun...
------------------------------------------------------------
revno: 2923
committer: Bruno Chareyre <bruno.chareyre@xxxxxxxxxxx>
branch nick: trunk
timestamp: Tue 2011-09-27 14:30:14 +0200
message:
- include gravity a bit differently in Newton, so that it's reflected in scene->forces and accounted in the unbalanced force definition.
modified:
pkg/dem/NewtonIntegrator.cpp
--
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 2011-09-20 10:58:18 +0000
+++ pkg/dem/NewtonIntegrator.cpp 2011-09-27 12:30:14 +0000
@@ -108,7 +108,7 @@
if(unlikely(!b || b->isClumpMember())) continue;
State* state=b->state.get(); const Body::id_t& id=b->getId();
- Vector3r f=Vector3r::Zero(), m=Vector3r::Zero();
+ Vector3r f=gravity, m=Vector3r::Zero();
// clumps forces
if(b->isClump()) {
b->shape->cast<Clump>().addForceTorqueFromMembers(state,scene,f,m);
@@ -122,7 +122,7 @@
#endif
}
//in most cases, the initial force on clumps will be zero and next line is not changing f and m, but make sure we don't miss something (e.g. user defined forces on clumps)
- f=scene->forces.getForce(id)+gravity; m=scene->forces.getTorque(id);
+ f=scene->forces.getForce(id); m=scene->forces.getTorque(id);
#ifdef YADE_DEBUG
if(isnan(f[0])||isnan(f[1])||isnan(f[2])) throw runtime_error(("NewtonIntegrator: NaN force acting on #"+lexical_cast<string>(id)+".").c_str());
if(isnan(m[0])||isnan(m[1])||isnan(m[2])) throw runtime_error(("NewtonIntegrator: NaN torque acting on #"+lexical_cast<string>(id)+".").c_str());