[ODE] Contacts/constraints?

Russ Smith russ at q12.org
Wed Nov 7 20:21:02 MST 2001


nlin at nlin.net wrote:
> What do you mean by this? Manually adding externally computed penalty
> forces or impulses to the model?

yes.

> - ODE doesn't use any impulses, right?

ODE implicitly uses impulses - it calculates forces that are scaled by
the timestep value so that they will have a constant effect per
timestep.

> What I am really asking is, how does all the proper rigid body motion
> get imparted to the body after collision?   Is there some magic in
> the contact joint, or is it inherent in the constraint based method
> that satisfaction of non-penetration constraints automatically
> imparts the correct post-collision momenta to the system state?

the contact joint asks ODE to make the relative velocity of two bodies
along the contact normal equal to some value 'c'. if there's no bounce,
c=0. if there's bounce, c is computed from the relative velocity.
the resulting constraint forces (which are applied to the bodies just
like any other force) are specially computed to enforce the constraint.
note that the constraint equations deal with velocities, not
accelerations, so the whole thing is fairly simple maths-wise.

> - As far as I understand it constraints can be classified as
> holonomic or non-holonomic. Does ODE support both kinds of
> constraints?

yes. but this distinction is not that important for ODE, in fact
there's nowhere in the code where the distinction is made.
the distinction is more important in theoretical lagrangian mechanics.

russ.

--
Russell Smith
http://www.q12.org



More information about the ODE mailing list