回転ベクトルで表現する回転
三次元回転とその表現 は回転軸$ {\boldsymbol n}と回転角度$ \thetaの組,あるいは回転ベクトル$ \omega = \theta {\boldsymbol n}で表せる(オイラーの回転定理の導出). 注意:ある回転を表す回転ベクトルは一意ではない
$ {\boldsymbol R} = {\boldsymbol I}のとき,固有値1に対応する固有ベクトルは自由に選択できる.回転角は$ 2\piの整数倍.
$ {\boldsymbol R} \neq {\boldsymbol I}のとき,軸の選択は2通りある.$ {\boldsymbol n}が回転の軸のとき,$ -{\boldsymbol n}も固有値1の固有ベクトルなのでこれも回転軸である.このとき,回転方向が逆になるため回転角は($ {\boldsymbol n}を軸として選択したときの角度を$ \theta とすると)$ 2 \pi - \thetaとなる.また,回転角に$ 2\piの整数倍を足しても同じ回転を表す. 逆に,これ以外の回転軸と回転角がその回転を表すことはない.
回転ベクトルから回転行列を計算する方法
ロドリゲスの公式 Rodrigues formula:
三次元回転は回転軸$ {\boldsymbol n}と回転角 $ \theta を用いて
$ \begin{aligned} {\boldsymbol R} & = \cos \theta {\boldsymbol I} + \left( 1 - \cos \theta \right) {\boldsymbol n} {\boldsymbol n}^\top + \sin \theta ~ {\rm skew} \left( {\boldsymbol n} \right) \\ & = \cos \theta \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{pmatrix} + \left(1 - \cos \theta \right) \begin{pmatrix} n_1 n_1 & n_1 n_2 & n_1 n_3 \\ n_2 n_2 & n_2 n_2 & n_2 n_3 \\ n_3 n_3 & n_3 n_2 & n_3 n_3 \end{pmatrix} + \sin \theta \begin{pmatrix} 0 & -n_3 & n_2 \\ n_3 & 0 & -n_1 \\ -n_2 & n_1 & 0 \end{pmatrix} \end{aligned}
また,回転ベクトル$ \omega = \theta {\boldsymbol n}を用いて
$ {\boldsymbol R} = \cos \left\| {\boldsymbol \omega} \right\| {\boldsymbol I} + \frac{ 1 - \cos \left\| {\boldsymbol \omega} \right\| }{\left\| {\boldsymbol \omega} \right\|^2} {\boldsymbol \omega} {\boldsymbol \omega}^\top + \frac{ \sin \left\| {\boldsymbol \omega} \right\| }{ \left\| {\boldsymbol \omega} \right\| }~ {\rm skew} \left( {\boldsymbol \omega} \right)
回転軸$ {\boldsymbol n}まわりの$ \theta回転は,$ -{\boldsymbol n}まわりの$ 2 \pi - \theta回転と等しく,回転角度に$ 2\piの整数倍を足しても同じ回転になると書いたが,実際にロドリゲスの式に代入すると同じ回転行列が得られる.
回転軸は回転行列の固有値1に対応する固有ベクトルであるが,固有ベクトルとしての計算をする必要はなく,ロドリゲスの回転公式から逆算して,回転軸と回転角度が得ることができる:
$ \frac{1}{2} \epsilon_{ijk} R_{jk} = \frac{1}{2} \begin{pmatrix}R_{23} - R_{32} \\ R_{31} - R_{13} \\ R_{12} - R_{21} \\ \end{pmatrix} = \frac{1}{2} \begin{pmatrix}-2 n_1 \sin \theta \\ -2 n_2 \sin \theta \\ -2 n_3 \sin \theta \\ \end{pmatrix} = - \sin \theta {\boldsymbol n}
$ {\rm tr} {\boldsymbol R} = 3 \cos \theta + \| {\boldsymbol n} \|^2 ( 1 - \cos \theta ) = 1 + 2 \cos \theta,$ \therefore \theta = \cos^{-1} \left( \frac{ {\rm tr} {\boldsymbol R} - 1 }{2} \right).
回転角の範囲を$ 0 \leq \theta \leq \pi とすると一意,$ 0 \leq \theta \leq 2 \piのときは2組の回転軸と回転角が求まる(一方を$ ({\boldsymbol n}, \phi)とするともう一方は$ (-{\boldsymbol n}, 2\pi - \phi)).繰り返すが,このふたつの回転軸と回転角の組は同じ回転を表す.
回転行列が恒等行列に近いとき,つまり$ \thetaが0に近いとき,$ {\boldsymbol n}の計算は0に近いベクトルを正規化して得られるため不安定になる(回転がないときは軸が不定になる).