オイラー角(受動的回転)

 前回は各座標軸を回転軸とする回転を考えたが,今回は空間内の任意の回転を表すオイラー角を扱う.まず受動的回転,すなわち物体を固定して座標系(座標軸)を回転させる場合を考える.


1. 座標系を  z 軸のまわりに角度  \alpha 回転させる.これにより  y 軸は  y' 軸に移る.

2. 座標系を  y' 軸のまわりに角度  \beta 回転させる.これにより  z 軸は  z' 軸に移る.

3. 座標系を  z' 軸のまわりに角度  \gamma 回転させる.これにより  y' 軸は  y'' 軸に移る.


 これらを式で表せば,空間の回転行列 で定義した行列


 \begin{align}
R_x(\theta) &= \begin{pmatrix} 1 & 0 & 0 \\ 0 & \cos\theta & -\sin\theta  \\ 0 & \sin\theta &  \cos\theta  \end{pmatrix} \\\\
R_y(\theta) &= \begin{pmatrix} \cos\theta & 0 & \sin\theta  \\  0 & 1 & 0 \\  -\sin\theta & 0 &  \cos\theta  \end{pmatrix} \\\\
R_z(\theta) &= \begin{pmatrix} \cos\theta & -\sin\theta & 0 \\ \sin\theta &  \cos\theta  & 0 \\ 0& 0& 1\end{pmatrix} 
\end{align}


を使って


 \begin{align}
  R_p(\alpha, \beta, \gamma) &\equiv R_{z'}(-\gamma) R_{y'}(-\beta) R_{z}(-\alpha) \tag{1} \label{1} \\\\
 &= \begin{pmatrix} \cos\gamma & \sin\gamma & 0 \\ -\sin\gamma & \cos\gamma  &0 \\  0 & 0 & 1\end{pmatrix} 
  \begin{pmatrix}  \cos\beta &0 &-\sin\beta  \\ 0 & 1 & 0 \\ \sin\beta & 0 & \cos\beta\\  \end{pmatrix} 
  \begin{pmatrix} \cos\alpha & \sin\alpha & 0 \\ -\sin\alpha & \cos\alpha  &0 \\  0 & 0 & 1\end{pmatrix} \\\\
  &= \begin{pmatrix}  -s_\alpha s_\gamma+c_\alpha c_\beta c_\gamma &  c_\alpha s_\gamma+s_\alpha c_\beta c_\gamma  & -s_\beta c_\gamma \\
  -s_\alpha c_\gamma -c_\alpha c_\beta s_\gamma & c_\alpha c_\gamma- s_\alpha c_\beta s_\gamma & s_\beta s_\gamma \\
  c_\alpha s_\beta & s_\alpha s_\beta & c_\beta \end{pmatrix}  
\end{align}


になる.ここで  s_\alpha=\sin\alpha,\ c_\beta=\cos\beta などとした.  R_p p は受動的回転を表す.  R_z(\theta) は能動的回転として定義されているので  R_z(-\alpha) などと引数に負号がついている(これで座標軸が正方向に回転する).2番目の  R R_y(-\beta) ではなく  R_{y'}(-\beta) であるのは,  R_z(-\alpha) によって座標系が  x' y' z 系に移っており,その座標系に対する回転であるためである.  R_{z'}(-\gamma) も同じ.


f:id:haul3740:20201104100854p:plain:w250


  R_{y'}(-\beta) R_{z'}(-\gamma) を,回転前の座標軸のまわりの回転  R_x, R_y, R_z で表したい場合もある(例えば量子力学の回転演算子).これは以下のように行う.図のように,ベクトル  \mathbf{n} のまわりの角度  \theta の回転は, \mathbf{n}\to\mathbf{m} とベクトル自身を(別の回転軸により)回転させてから  \mathbf{m} のまわりに角度  \theta 回転させ,最後に  \mathbf{m}\to\mathbf{n} とベクトル自身を回転させることで実現できる.このことから,  R_{y'}(-\beta) は,まず  z 軸のまわりに角度  +\alpha だけ回転して  y' 軸を  y 軸に一致させ, y 軸のまわりに角度  -\beta だけ回転してから,再び  z 軸のまわりに角度  -\alpha だけ回転させることで得られる.


 \begin{align}
  R_{y'}(-\beta)= R_z(-\alpha) R_y(-\beta) R_z(\alpha) = R_z(-\alpha) R_y(-\beta) R^{-1}_z(-\alpha) \tag{2} \label{2}
\end{align}


 R_{z'}(-\gamma) も同じ方法により,  y' 軸のまわりに角度  +\beta 回転させて  z'\to z としてから  z 軸のまわりに角度  -\gamma 回転させ,再び  y' 軸のまわりに角度  -\beta 回転させて  z\to z' とする.


\begin{align}
  R_{z'}(-\gamma) &= R_{y'}(-\beta) R_z(-\gamma) R^{-1}_{y'}(-\beta) \\\\
  &= [R_{z}(-\alpha) R_y(-\beta) R^{-1}_z(-\alpha) ]\ R_z(-\gamma) \  [ R_z(-\alpha)R^{-1}_y(-\beta)R^{-1}_{z}(-\alpha)] \\\\
  &= R_{z}(-\alpha) R_y(-\beta) R_z(-\gamma)R^{-1}_y(-\beta)R^{-1}_{z}(-\alpha)
\tag{3} \label{3}
\end{align}


\eqref{2}, \eqref{3}を\eqref{1}を代入すると


 \begin{align}
  R_p(\alpha, \beta, \gamma) &\equiv R_{z'}(-\gamma) R_{y'}(-\beta) R_{z}(-\alpha) \\\\
  &= [R_{z}(-\alpha) R_y(-\beta) R_z(-\gamma)R^{-1}_y(-\beta)R^{-1}_{z}(-\alpha)] \\\\
 &\ \times  [R_z(-\alpha) R_y(-\beta) R^{-1}_z(-\alpha)]\   R_{z}(-\alpha) \\\\
 &=  R_{z}(-\alpha) R_y(-\beta) R_z(-\gamma) \tag{4} \label{4}
\end{align}


になる.回転の順序は  -\alpha\to-\beta\to-\gamma であるが,回転行列を作用させる順序が逆になる.


 上のオイラー角は  z\to y' \to z' の順で回転したが, z\to x' \to z' の順で回転してもよい.この場合もオイラー角と呼ばれ,主に力学で使われる. z\to y' \to z'オイラー角は主に量子力学で使われる.理由はウィグナーの  d 関数と呼ばれる関数が実数関数になるからである.