# [ODE] Possible solution to unstable rotating bodies problem

Erin Catto erincatto at sbcglobal.net
Fri Apr 8 23:16:47 MST 2005

```That's essentially how position projection works. Do a time step with no
external forces and use ERP to penalize position errors. Also set dt=1 since
the time scale is irrelevant. You will generate a pseudo velocity from which
positions are updated. The steps are:

1. normal time step with ERP = 0
2. update position and velocity
3. special time step with nonzero ERP, no external forces and zero initial
velocity
4. use the pseudo velocities from 3 to update the positions.

Erin
http://www.gphysics.com

-----Original Message-----
From: ode-bounces at q12.org [mailto:ode-bounces at q12.org] On Behalf Of SJS
Sent: Friday, April 08, 2005 3:10 AM
To: ode at q12.org
Subject: RE: [ODE] Possible solution to unstable rotating bodies problem

Ideally, wouldn't you do two solver passes with the same initial
conditions-- one with ERP, one without.  Apply the timestep using the
results using ERP, but set the masses' final velocities according to the
results without ERP.

Expensive? maybe, yes, but you'd only be running the solver twice--
collision detection, etc. would be done only once.  In fact you should be
able to do all of this by changing only the internal Step function of ODE
(LCP or quickstep, whichever you use).

Someone mentioned a paper a few weeks back that suggested using projection
rather than the velocity method used by ODE.  --probably better than doing 2
solver passes.

SJS

-----Original Message-----
From: ode-bounces at q12.org [mailto:ode-bounces at q12.org]On Behalf Of gl
Sent: Thursday, April 07, 2005 5:42 AM
To: ode at q12.org
Subject: Re: [ODE] Possible solution to unstable rotating bodies problem

> Alan, I agree it's a better solution than none at all, and it probably
> works

Sorry, 'Alen'.
--
gl

_______________________________________________
ODE mailing list
ODE at q12.org
http://q12.org/mailman/listinfo/ode

_______________________________________________
ODE mailing list
ODE at q12.org
http://q12.org/mailman/listinfo/ode

```