I think my pure-math head is messing with me on the question below: my physics and CS friends both seemed to think it was a simple computational thing, and my program says the method works, but now I've confused myself about rotations vs. angular velocities.
The problem: you have data from gyroscopes on a rigid body that give you the angular speeds of the object around three orthogonal axes through the body. These measured angular speeds are constant, call them $\omega_x$, $\omega_y$, and $\omega_z$.
Sine the angular speeds are constant, the axis of rotation of the object is also constant, and it's not too much trouble to find it by considering the combined angular velocity vector $\Omega$ = ($\omega_x$,$\omega_y$,$\omega_z$).
I am then confused when I think about this in terms of rotations. There's a unique axis of rotation because every composition of rotations is equivalent to a single rotation about some axis. It seems, then that you should be able to determine this axis by determining the eigenvectors of the combined matrix ABC, where A, B, C each represent the rotation about one of the axes.
But of course, rotations in general don't commute. I'm forced to conclude that what makes the unique determination of an axis work is that infinitesimal rotations commute.
So, if I'm right about this, my question is -- how can I see that infinitesimal rotations commute? My intuition fails me here.
If they don't - what's the link between the rotation and angular velocity vector way of looking at this that removes the usual problems dealing with rotations that don't commute?