Thread Previous • Date Previous • Date Next • Thread Next |
BrunoNaN angle found in angleAxisr(q), for quaternion 1 -1.56132e-11 7.47311e-11 -1.7066e-10, after quaternion product rbp1.ori * (initialOrientation1.conjugate())) * (initialOrientation2 * (rbp2.ori.conjugate()) is: 0.745315 -0.0308916 -0.665997 -1.14489e-10 * 0.745315 0.0308916 0.665997 -0 * 0.746671 -0.166278 -0.644077 0 * 0.746671 0.166278 0.644077 -1.47527e-18
with sub-products : 1 -1.56132e-11 7.47311e-11 -1.7066e-10 * 1 9.50188e-19 -2.45305e-19 0 On 26/10/10 15:17, Václav Šmilauer wrote:
If I'm the author of this comment in the sources (I am, probably), "close to identity" means close to null rotation. In other words the corresponding rotation matrix is very close to identity matrix. So, let M be a rotation matrix defining a rotation of 10^-8 degrees. Theoretically, M*M^(-1)=Id. Now, do the same numerically with quaternions : let q be the quaternion representing the same rotation as matrix M, and compute q*q.conjugate(). It seems, sometimes in Eigen, the result will be NaN. As a workaround, I set angle=0 when angle=NaN.Bruno, could you post that issue to eigen's forums http://eigen.tuxfamily.org/index.php?title=Main_Page#Get_support? They are very responsive as far as my experience goes and will give us proper mathematical explanation about the cause. v _______________________________________________ Mailing list: https://launchpad.net/~yade-dev Post to : yade-dev@xxxxxxxxxxxxxxxxxxx Unsubscribe : https://launchpad.net/~yade-dev More help : https://help.launchpad.net/ListHelp
-- _______________ Bruno Chareyre Associate Professor ENSE³ - Grenoble INP Lab. 3SR BP 53 - 38041, Grenoble cedex 9 - France Tél : +33 4 56 52 86 21 Fax : +33 4 76 82 70 43 ________________
Thread Previous • Date Previous • Date Next • Thread Next |