Why isn’t the rotation matrix from axis and angle an orthogonal matrix

linear algebramatricesrotations

I know how to prove the rotation matrix that from axis and angle by vector transform. But I have other thought about rotate the vector by coordinate transform. But this thought have some wrong.
First have a vector $a$ and two orthogonal coordinate $X$ and $X'$ .These coordinate bases is $B$ and $B'$
and The relation is\begin{gathered}a=Bx=B'x' \\
BT=B'\quad \{B,B',T\in \mathbb{R}^{3\times 3};B,B',T\text{ are orthogonal matrices}\}.
\end{gathered}
So the coordinate value transform is$$T^{-1}x=T^{t}x=x'.$$Then rotate the $x'$ along $B'$'s first column vector $B'_{c1}$. Obviously, the operation is equal to $x'_{r_{c1}}=Rx'$ ($R$ is an orthogonal matrix).

Finally, exchange coordinate value form $X'$ to $X$\begin{split}Tx'_{r_{c1}} & =TRT^{t}x \\
& =(TRT^{t})x \\
& =R_{B'_{c1}}x.
\end{split}
I find $(R_{B'_{c1}})^tR_{B'_{c1}}=I$, so $R_{B'_{c1}} $ is an orthogonal matrix.
But the rotation matrix from axis and angle is not orthogonal matrix. Why and what's wrong with my thought?

Best Answer

The rotation matrix from axis $u$ and angle $\theta$, also known as the Rodrigues' rotation matrix formula is given by

$ R = {u u}^T + (I - {u u}^T) \cos(\theta) + S_u \sin(\theta) $

where

$S_u = \begin{bmatrix} 0 && - u_z && u_y \\ u_z && 0 && - u_x \\ - u_y && u_x && 0 \end{bmatrix} $

which is the form

$ R = A + B $

with $ A = {u u}^T + (I - {u u}^T) \cos(\theta) $ is symmetric

and $ B = S_u \sin(\theta) $ is skew-symmetric

From which, taking the transpose, gives us

$ R^T = A^T + B^T = A - B $

Now

$ R^T R = (A - B)(A + B) = A^2 - B^2 + A B - B A$

we have

$A^2 = \big( {u u}^T + (I - {u u}^T ) \cos(\theta) \big) \big({u u}^T + (I - {u u}^T ) \cos(\theta) \big) \\ = {u u}^T + (I - {u u}^T ) \cos^2(\theta) $

$ B^2 = \big( S_u \sin(\theta) \big) \big( S_u \sin(\theta) \big)\\ = S_u^2 \sin^2(\theta) $

Now $S_u v = u \times v$, therfore, $S_u^2 v = u \times (u \times v) = u (u \cdot v ) - v (u \cdot u) = ( {u u}^T - I ) v $

So $ B^2 = \big( {u u}^T - I \big) \sin^2(\theta) $

$A B = \big( {u u}^T + (I - {u u}^T ) \cos(\theta) \big) \big( S_u \sin(\theta) \big) = S_u \cos(\theta) \sin(\theta)$

$BA = \big( S_u \sin(\theta) \big)\big( {u u}^T + (I - {u u}^T ) \cos(\theta) \big) = S_u \sin(\theta ) \cos(\theta) $

Hence,

$R^T R = {u u}^T + (I - {u u}^T ) \cos^2(\theta) - \big( {u u}^T - I \big) \sin^2(\theta) = I $

Hence, $R$ is an orthogonal matrix.