← Back to team overview

yade-dev team mailing list archive

Re: normalizing quaternions. Rev 2266: 1. Tentative fix for the clumps bug

 

Václav Šmilauer said:     (by the date of Thu, 03 Jun 2010 21:50:52 +0200)

Oh sorry Vaclav - I didn't notice your reply!

(thread switching in ML perhaps is bad.... sorry if you feel that it
makes more mess, but now I will reply here).

> > I wish there was some flag telling the quaternion to be a UNIT
> > quaternion. The library should take care of all that normalizing.
> > After all inside its own routines it is calculating length quite
> > frequently.

> They are supposed to be unit quaternions. Exactly for that reason I
> guess Eigen _never_ computes the norm, as it is costly and it thinks it
> is more or less unit.

aha! good. It's faster!
 
> The case for clumps was only for for construction of quaternion
> construction from rotation matrix, normal quaternion operations (such as
> multiplication) preserve unit length, modulo numerical drift, which is
> the same for wm3.
> >  Just add a check if != 1.0 and if so, then perform
> > a .normalize action.
> Contact the Eigen guys, I am sure they will be very happy with that
> optimization ;-)

heh, so we agree. I said this at least 5 times today ;-)

-- 
Janek Kozicki                               http://janek.kozicki.pl/  |



References