[ODE] Constraint theorizing
Henri Hakl
henri at cs.sun.ac.za
Mon Feb 24 14:56:01 2003
Interesting...
if you can guarantee that the system is >allways< exactly 6x6, then it
should be possible to optimize the hell out of it. If it is smaller then you
should probably augment the matrix with zero-entries (and maybe 1's on the
main diagonal) or something.
Sounds intriguing.
----- Original Message -----
From: "Sergio Valverde" <svalverde@barcelona.ubisoft.es>
To: <ode@q12.org>
Sent: Monday, February 24, 2003 10:47 AM
Subject: RE: [ODE] Constraint theorizing
> There were some discussion about such things in this list
> (iterative schemes and the like) I have tested (succesfully)
> a straighforward iterative technique which solves *only*
> 1 constraint at each step (thanks Antonio). That is, if you
> have a system of say C= 10 constraints, then you solve
> every constraint separately without taking into account
> the other constraints. The idea is that the time step is
> subdivided into a sort of "microsimulations". Something
> like that:
>
> parameter: N substeps, C constraints, Dt (ODE timestep)
>
> for i=0..N-1 do
> for c = 0..C-1 do
> Solve constraint c-th
> Apply forces to constraint bodies
> next
> Integrate bodies by (Dt/N)
> next
>
> The idea is that as N->inf the movement of the bodies is
> very small so the effect of every constraint is very
> localized and this approach becomes exact just in the limit.
> In my tests a small number is iterations is enough to
> get decent results.
>
> Please note that the core of this scheme is to solve a
> very small (up to 6x6) LCP constraint system. I think
> this approach gives enough room to a lot of performance
> improvements. The next step should be to find a fast
> code able to solve the small system. Also, note that
> is no longer necessary to store a big matrix for the
> constraint coefficients.
>
> Sergi
>
> -----Original Message-----
> From: Adam D. Moss [mailto:adam@gimp.org]
> Sent: domingo, 23 de febrero de 2003 17:28
> To: ode@q12.org
> Subject: Re: [ODE] Constraint theorizing
>
>
> Henri Hakl wrote:
> > Hmmm... I think you are right there.
> >
> > However, I then still find it disturbing that 100x100 to 500x500
matrices
> > actually come into existence in practize for systems that aren't overly
> > complex.
>
> I'm inclined to agree, but ODE still represents outstanding
> value for money whichever way you slice it. :)
>
> There were tantalizing murmurings of a future iterative solution
> requiring significantly less space and somewhat less time. ODE's
> steady but near-glacial development history indicates that it's not
> a good idea to hold your breath waiting for any features that
> you aren't willing to implement yourself though... that's just
> how it is, AFAICT, due to the maintainer's limited time;
> WYSIWYG, and a lot of developers using ODE have to learn not to
> expect more than that unless they want to get their hands
> dirty themselves.
>
> --Adam
> --
> Adam D. Moss . ,,^^ adam@gimp.org http://www.foxbox.org/ co:3
> busting makes me feel good
> kthx bye
> _______________________________________________
> ODE mailing list
> ODE@q12.org
> http://q12.org/mailman/listinfo/ode
> _______________________________________________
> ODE mailing list
> ODE@q12.org
> http://q12.org/mailman/listinfo/ode