← Back to team overview

yade-users team mailing list archive

Re: Combining engines prescribing movement


OK, after some thinking and skyping w/ Chiara:

I will remove displacements and rotations in ForceContainer, and replace them by one-time velocity and angularVelocity: they will be added to state->vel and state->angVel in NewtonIntegrator, but reset by ForceResetter; and they can accumulate, just like forces do.

Further, Body::isDynamic will change its meaning to be simply state->blockedDOFs=State::DOF_ALL. Remembering that blockedDOFs block forces (not displacements per se), therefore, "non-dynamic" bodies _will_ be moved by NewtonIntegator if they will have non-zero velocity! That might break existing simulations, but now is the right period to do that (and see also shamefully long-lasting https://bugs.launchpad.net/yade/+bug/398089). I will also modify TranslationEngine accordingly, and will add regression tests to make sure two TranslationEngines can be combined and so on. That will ensure that the behavior will be consistent in the future.

Comments (besides that it should not change because it will break old simulations, please; run those with frozen version of yade)? (->yade-dev)

Cheers, v.

Follow ups