[ODE] Fwd: AMD x86_64 dMassCheck() and bNormalizationResult errors
Bram Stolk
b.stolk at gmail.com
Mon Nov 19 08:22:34 MST 2007
On Nov 19, 2007 12:18 AM, Funky Fred <funkyfredmale at hotmail.com> wrote:
>
> Ok, narrowed it down a bit more. Looks like the body->avel value in
> dxStepBody is NaN.
> I stepped through things a little bit more and narrowed it down to the
> dxQuickStepper call @868 in quickstep.cpp
> If I'm reading the gdb output right (it's getting late). It looks like the
> dMULTIPLYADD0_331 macro/function is doing it.
Looking at the code, a logical cause for this would be a zero mass, causing
a NaN body_invMass;
I expect that if you do an...
ASSERT(!dIsNan(body[i]->invMass));
...in that code, it will be triggered.
Bram
// compute the velocity update:
// add stepsize * invM * fe to the body velocity
IFTIMING (dTimerNow ("compute velocity update");)
for (i=0; i<nb; i++) {
dReal body_invMass = body[i]->invMass;
for (j=0; j<3; j++) body[i]->lvel[j] += stepsize *
body_invMass * body[i]->facc[j];
for (j=0; j<3; j++) body[i]->tacc[j] *= stepsize;
dMULTIPLYADD0_331 (body[i]->avel,invI + i*12,body[i]->tacc);
}
--
Zapp: Captain's log, stardate...er..
Kif: Ohhh. April 13th.
Zapp: April 13th. Point 2.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://ode.org/pipermail/ode/attachments/20071119/2b4a4851/attachment.htm
More information about the ODE
mailing list