[ODE] Re: Questions about QuickStep

Nguyen Binh ngbinh at gmail.com
Tue Aug 17 14:01:57 MST 2004


<snip>
(1) Why would you advocate for acceleration constraints? Velocity
constraints offer a simpler LCP formulation (the Bi terms are just a
dot product) and it resolves both collisions and contacts in a single
output from the LCP solver, there is no distinction. Do you think
constraints on accelerations are better because of friction (my
velocity based simulator is frictionless)?
 </snip>

Oh! My mistake!
Refer to http://www.ode.org/joints.pdf
You'll see that ODE uses velocity constraints.

I think one good source for acceleration constraint is "Linear-Time
Dynamics using Lagrange Multipliers" of David Barraft.

I might be wrong with this: acceleration constraint LCP suffers from
singularity (or inconsistency), the time stepping velocity constraint
LCP is free from these issues.

<snip>
(2) In ODE, contact constraints being on accelerations, does it deal
with collisions one at the time or simultaneuosly? Resolving
simultaneously implies solving one LCP to get impulses for collisions
and another LCP to get forces for contacts.
The classical approach is: resolve all collisions one by one by
applying impulses until there are no more contacts with normal
relative velocity below some threshold. The deal with resting contacts
by computing forces. Is this the approach used?
 </snip>
As I stated before, there are two new interative solver in ODE:
a) StepFast iterates all joints and try to satisfy each joint in one move
b) QuickStep tried to solve the velocity LCP system simultaneously for
the Lagrange multiplier (thus the impluse) and if we need force
feedback, it calculate the constraints forces:
        Fc = Transpose(Jc)*lambda

So, No! ODE doesn't use the classical approach. 

Hope that helps and feel free to correct me, I think we are really
suffer from ill-literature in physical simulation :)

Nguyen Binh.


More information about the ODE mailing list