5 直交行列が回転変換と反転の合成であること

本節では、直交行列 $A=[\mbox{\boldmath$a$},\mbox{\boldmath$b$},\mbox{\boldmath$c$}]$ による 一次変換が、$\vert A\vert=1$ の場合は 3 節で述べた回転変換となり、 $\vert A\vert=-1$ の場合は回転変換と反転の合成となることを示す。 そして、回転軸ベクトル $\mbox{\boldmath$n$}$ と回転角 $\psi$ の具体的な 計算方法についても考察する。

まず、$\vert A\vert=1$ の場合を考える。 補題 8 より、$A$ は固有値 1 を持ち、 その単位固有ベクトル (実数ベクトル) のひとつを $\mbox{\boldmath$n$}$ とする。

  $\displaystyle
A\mbox{\boldmath$n$}=\mbox{\boldmath$n$},\hspace{1zw}\vert\mbox{\boldmath$n$}\vert=1$ (30)
補題 1 よりこの $\mbox{\boldmath$n$}$ $\mbox{\boldmath$p$}(\phi ,\theta )$ の形で表すことができる。ここで、 $\vert\theta\vert\leq \pi/2$, $0\leq\phi<2\pi$ であるが、 $\theta<0$ の場合は、 $\mbox{\boldmath$n$}$ の代わりに $-\mbox{\boldmath$n$}$ と 取り直すことによって、$\theta\geq 0$ とできるので、 $0\leq\theta\leq\pi/2$ としてよい。 また、$\theta=\pi/2$ のとき ( $\mbox{\boldmath$n$}=\mbox{\boldmath$k$}$) は、$\phi = 0$ とする。

補題 3 より、 $\mbox{\boldmath$n$}$, $\mbox{\boldmath$\hat{n}$}=\mbox{\boldmath$\hat{p}$}(\phi,\theta)$, $\mbox{\boldmath$\check{n}$}=\mbox{\boldmath$\check{p}$}(\phi)$ は 右手系の正規直交系となる。 $\mbox{\boldmath$n$}$, $\mbox{\boldmath$\hat{n}$}$, $\mbox{\boldmath$\check{n}$}$$A$ による像 $A\mbox{\boldmath$n$}=\mbox{\boldmath$n$}$, $A\mbox{\boldmath$\hat{n}$}$, $A\mbox{\boldmath$\check{n}$}$ は、 補題 5 により やはり互いに直交する単位ベクトルとなり、 $\vert A\vert=1$ より

  $\displaystyle
(A\mbox{\boldmath$\hat{n}$})\times(A\mbox{\boldmath$\check{n}$})...
...\times\mbox{\boldmath$\check{n}$})
=A\mbox{\boldmath$n$}
=\mbox{\boldmath$n$}$ (31)
となるので、右手系の正規直交系となる。 すなわち、 $A\mbox{\boldmath$\hat{n}$}$, $A\mbox{\boldmath$\check{n}$}$ は、 $\mbox{\boldmath$n$}$ に垂直な面上で $\mbox{\boldmath$\hat{n}$}$, $\mbox{\boldmath$\check{n}$}$ を 回転したものになるので (図 4 と同様)、 その回転角を $\psi$ とすれば、
  $\displaystyle
\begin{array}{ll}
A\mbox{\boldmath$\hat{n}$} &= \mbox{\boldmath...
...check{n}$}\cos\psi\\
A\mbox{\boldmath$n$} &= \mbox{\boldmath$n$}
\end{array}$ (32)
と書けることになる。 すなわち、任意の 3 次元ベクトル $\mbox{\boldmath$x$}$ を 正規直交系 $\mbox{\boldmath$n$}$, $\mbox{\boldmath$\hat{n}$}$, $\mbox{\boldmath$\check{n}$}$ を用いて

$\displaystyle \mbox{\boldmath$x$}=\alpha\mbox{\boldmath$n$}+\beta\mbox{\boldmath$\hat{n}$}+\gamma\mbox{\boldmath$\check{n}$}
$

と表すと、その $A$ による像は、

$\displaystyle A\mbox{\boldmath$x$}
=\alpha A\mbox{\boldmath$n$}+\beta A\mbox{\b...
...\boldmath$\hat{n}$}
+(\beta\sin\psi+\gamma\cos\psi)\mbox{\boldmath$\check{n}$}
$

となり、 $\mbox{\boldmath$n$}$ 方向の成分は不変で、 $\mbox{\boldmath$\hat{n}$}$, $\mbox{\boldmath$\check{n}$}$ に関する回転となっていることがわかる。 これにより、$A$ $\mbox{\boldmath$n$}$ を回転軸ベクトルとする $\psi$ 回転を 表すことが示された。

$\vert A\vert=-1$ の場合は、固有値は $-1$ で、(30) が

  $\displaystyle
A\mbox{\boldmath$n$}=-\mbox{\boldmath$n$},\hspace{1zw}\vert\mbox{\boldmath$n$}\vert=1$ (33)
に変わり、(31) も
  $\displaystyle
(A\mbox{\boldmath$\hat{n}$})\times(A\mbox{\boldmath$\check{n}$})...
...imes\mbox{\boldmath$\check{n}$})
= -A\mbox{\boldmath$n$} = \mbox{\boldmath$n$}$ (34)
となるので、 $\mbox{\boldmath$n$}$, $\mbox{\boldmath$\hat{n}$}$, $\mbox{\boldmath$\check{n}$}$ の像 $A\mbox{\boldmath$n$}=-\mbox{\boldmath$n$}$, $A\mbox{\boldmath$\hat{n}$}$, $A\mbox{\boldmath$\check{n}$}$ は、 左手系の正規直交系となる。

$\mbox{\boldmath$n$}$ 方向の反転変換を $B$ とすると、$B$ は、

  $\displaystyle
B\mbox{\boldmath$n$}=-\mbox{\boldmath$n$},
\hspace{1zw}B\mbox{\...
...hat{n}$},
\hspace{1zw}B\mbox{\boldmath$\check{n}$}=\mbox{\boldmath$\check{n}$}$ (35)
となるので、合成変換 $BA$ を考えれば、

$\displaystyle BA\mbox{\boldmath$n$}=\mbox{\boldmath$n$},
\hspace{1zw}BA\mbox{\b...
...t{n}$},
\hspace{1zw}BA\mbox{\boldmath$\check{n}$}=A\mbox{\boldmath$\check{n}$}
$

となって、(34) により右手系の正規直交系となるから、 $\vert A\vert=1$ の場合と同様にして、 $BA$ は回転軸ベクトル $\mbox{\boldmath$n$}$ に関する $\psi$ の回転変換となる。 すなわち、$\vert A\vert=-1$ の場合は、$A=B^{-1}BA$ は、回転変換 $BA$ と、 $\mbox{\boldmath$n$}$ 方向の反転変換 $B^{-1}=B$ の合成変換であることがわかる。

これで本節の目的の前半部分が示されたことになる。 次は、具体的な回転軸ベクトルと回転角の計算方法について考える。 回転軸ベクトル $\mbox{\boldmath$n$}$ は、既に述べたように固有値 $\lambda=\vert A\vert$ に 対する単位固有ベクトルを取ればよいので $A$ から回転軸ベクトルを計算することは難しくない。

$\mbox{\boldmath$p$}(\phi ,\theta )$$\phi$, $\theta$ を確定する代わりに、 $\cos\phi$, $\sin\phi$ 等を求めることを考える。

$\mbox{\boldmath$p$}(\phi,\theta)=\mbox{\boldmath$n$}=\,{}^T\!{(n_1,n_2,n_3)}$ で、 上に述べたように $n_3\geq 0$ としてよいから、

$\displaystyle \sin\theta = n_3,
\hspace{1zw}\cos\theta = \sqrt{1-n_3^2} = \sqrt{n_1^2+n_2^2} \hspace{0.5zw}(=r\mbox{ とする})
$

であり、$n_3=1$ ならば $\theta=\pi/2$, $\phi = 0$ より $\cos\phi=1$, $\sin\phi=0$ で、 $n_3<1$ ならば $0\leq\theta<\pi/2$, $r>0$ で、

$\displaystyle \cos\phi=\frac{n_1}{\cos\theta}=\frac{n_1}{r},
\hspace{1zw}
\sin\phi=\frac{n_2}{\cos\theta}=\frac{n_2}{r}
$

となる。よって、$n_3=1$ ならば $\mbox{\boldmath$n$}=\mbox{\boldmath$k$}$, $\mbox{\boldmath$\hat{n}$}=\mbox{\boldmath$i$}$, $\mbox{\boldmath$\check{n}$}=\mbox{\boldmath$j$}$$0\leq n_3<1$ ならば

$\displaystyle \mbox{\boldmath$\hat{n}$}
=\left[\begin{array}{c}{\cos\phi\sin\th...
...rray}\right]
=\left[\begin{array}{c}{-n_2/r}\\ {n_1/r}\\ {0}\end{array}\right]
$

となり、いずれも固有ベクトル $\mbox{\boldmath$n$}$ の成分を使って表すことができるから、 間接的に $A$ の成分で表せることになる。

回転角 $\psi$ については、 $\mbox{\boldmath$\hat{n}$}$ $\mbox{\boldmath$\check{n}$}$ の像 (32) の右辺は、 丁度 (16), (17) の式に一致するので、 その $z$ 成分から計算できることがわかる。 すなわち、 $A\mbox{\boldmath$\hat{n}$}$$z$ 成分を $m_3$ $A\mbox{\boldmath$\check{n}$}$$z$ 成分を $\ell_3$ とすると、 これらは $\mbox{\boldmath$n$}$$A$ の成分で表すことができ、

$\displaystyle m_3 = -\cos\psi\cos\theta,
\hspace{1zw}\ell_3 = \sin\psi\cos\theta
$

より、$\theta<\pi/2$ のときは

$\displaystyle \cos\psi = -\,\frac{m_3}{\cos\theta}=-\,\frac{m_3}{r},
\hspace{1zw}
\sin\psi = \frac{\ell_3}{\cos\theta}=\frac{\ell_3}{r}
$

となる。これにより $\theta<\pi/2$ のときは回転角 $\psi$ が一意に決定する。

$\theta=\pi/2$ の場合は $\phi = 0$ より $\mbox{\boldmath$\hat{n}$}=\mbox{\boldmath$i$}$, $\mbox{\boldmath$\check{n}$}=\mbox{\boldmath$j$}$ で、

$\displaystyle A\mbox{\boldmath$\hat{n}$}=\left[\begin{array}{c}{\cos\psi}\\ {\sin\psi}\\ {0}\end{array}\right]
$

となるので、 $\mbox{\boldmath$\hat{n}$}$$A$ による像の $x$ 成分 $m_1$, $y$ 成分 $m_2$ から $\cos\psi$, $\sin\psi$ が計算できることになる。

なお、$\vert A\vert=-1$ の場合の反転変換 $B$ の行列表現であるが、 これは、(35) より、

  $\displaystyle
B[\mbox{\boldmath$n$},\mbox{\boldmath$\hat{n}$},\mbox{\boldmath$...
...
=[-\mbox{\boldmath$n$},\mbox{\boldmath$\hat{n}$},\mbox{\boldmath$\check{n}$}]$ (36)
であり、よって右から $[\mbox{\boldmath$n$},\mbox{\boldmath$\hat{n}$},\mbox{\boldmath$\check{n}$}]$ の 逆行列、すなわちその転置行列をかければ、
  $\displaystyle
B=[-\mbox{\boldmath$n$},\mbox{\boldmath$\hat{n}$},\mbox{\boldmat...
...\!{[\mbox{\boldmath$n$},\mbox{\boldmath$\hat{n}$},\mbox{\boldmath$\check{n}$}]}$ (37)
により得られる。 $\mbox{\boldmath$n$}=\mbox{\boldmath$p$}(\phi,\theta)$, $\mbox{\boldmath$\hat{n}$}=\mbox{\boldmath$\hat{p}$}(\phi,\theta)$, $\mbox{\boldmath$\check{n}$}=\mbox{\boldmath$\check{p}$}(\phi)$ を使って 実際に計算してみる。

\begin{eqnarray*}\lefteqn{B \ =\
[-\mbox{\boldmath$n$},\mbox{\boldmath$\hat{n}...
...ldmath$\alpha$},\mbox{\boldmath$\beta$},\mbox{\boldmath$\gamma$}]\end{eqnarray*}

と列ベクトル毎に分けて書き下すと、

\begin{eqnarray*}\mbox{\boldmath$\alpha$}
&=&
\left[\begin{array}{c}{-\cos^2\p...
...ght]
\ (=\ \mbox{\boldmath$k$}-(2\sin\theta)\mbox{\boldmath$n$})\end{eqnarray*}

となる。よって $B$ は対称行列となるので、 よって $B=\,{}^T\!{B}=B^{-1}$ より、$B$ も直交行列となる。 さらによく見ると、$E-B$ が少し易しい形になることがわかる。

$\displaystyle E-B
= [(2\cos\phi\cos\theta)\mbox{\boldmath$n$},
(2\sin\phi\cos\...
...theta)\mbox{\boldmath$n$}]
=
2\mbox{\boldmath$n$}\,{}^T\!{\mbox{\boldmath$n$}}
$

と変形できるので、よって
  $\displaystyle
B = E-2\mbox{\boldmath$n$}\,{}^T\!{\mbox{\boldmath$n$}}
=E-2\left[\begin{array}{c}{n_1}\\ {n_2}\\ {n_3}\end{array}\right][n_1\ n_2\ n_3]$ (38)
となって、これも固有ベクトル $\mbox{\boldmath$n$}$ から容易に計算できる。 なお、 $\mbox{\boldmath$n$}\,{}^T\!{\mbox{\boldmath$n$}}$$3\times 1$ 行列と $1\times 3$ 行列の積だから $3\times3$ 行列となっている ことに注意する。

この (38) が (35) を満たすことは、

\begin{eqnarray*}B\mbox{\boldmath$n$}
&=&
E\mbox{\boldmath$n$}-2(\mbox{\boldm...
...hop{・}\mbox{\boldmath$\check{n}$})
= \mbox{\boldmath$\check{n}$}\end{eqnarray*}

のように確認できる。

なお、(38) は別な方法でも導くことができる。 (37) より、

$\displaystyle B
=
[-\mbox{\boldmath$n$},\mbox{\boldmath$\hat{n}$},\mbox{\boldm...
...h$\hat{n}$}}
+\mbox{\boldmath$\check{n}$}\,{}^T\!{\mbox{\boldmath$\check{n}$}}
$

となる。 一方、 $N=[\mbox{\boldmath$n$},\mbox{\boldmath$\hat{n}$},\mbox{\boldmath$\check{n}$}]$ とすると、 これは直交行列となり、 $N\,{}^T\!{N}=E$ であるから、
  $\displaystyle
N\,{}^T\!{N}
= \mbox{\boldmath$n$}\,{}^T\!{\mbox{\boldmath$n$}...
...t{n}$}}
+\mbox{\boldmath$\check{n}$}\,{}^T\!{\mbox{\boldmath$\check{n}$}}
= E$ (39)
となる。これにより、$B$ は、

$\displaystyle B
= -\mbox{\boldmath$n$}\,{}^T\!{\mbox{\boldmath$n$}} + (E-\mbox{...
...\mbox{\boldmath$n$}})
= E - 2\mbox{\boldmath$n$}\,{}^T\!{\mbox{\boldmath$n$}}
$

となって (38) が得られる。

同様にして、$\vert A\vert=1$ の直交行列 $A$ を、(32) を用いて $\mbox{\boldmath$n$}$ で表すことを考えてみる。 (32) より、

\begin{eqnarray*}AN
&=&
A[\mbox{\boldmath$n$},\mbox{\boldmath$\hat{n}$},\mbox...
...},\mbox{\boldmath$\check{n}$},-\mbox{\boldmath$\hat{n}$}]\sin\psi\end{eqnarray*}

となるが、 $[\mbox{\boldmath$0$},\mbox{\boldmath$\check{n}$},-\mbox{\boldmath$\hat{n}$}]
= ...
...x{\boldmath$n$}\times\mbox{\boldmath$\check{n}$}]
=\mbox{\boldmath$n$}\times N
$ より

$\displaystyle AN = [\mbox{\boldmath$n$},\mbox{\boldmath$0$},\mbox{\boldmath$0$}](1-\cos\psi)
+N\cos\psi +(\mbox{\boldmath$n$}\times N)\sin\psi
$

と書ける。これに右から $N^{-1}=\,{}^T\!{N}$ をかけると、

$\displaystyle A
=
[\mbox{\boldmath$n$},\mbox{\boldmath$0$},\mbox{\boldmath$0$}]...
...os\psi)
+N\,{}^T\!{N}\cos\psi+(\mbox{\boldmath$n$}\times N)\,{}^T\!{N}\sin\psi
$

となるが、 $[\mbox{\boldmath$n$},\mbox{\boldmath$0$},\mbox{\boldmath$0$}]\,{}^T\!{N} = \mbox{\boldmath$n$}\,{}^T\!{\mbox{\boldmath$n$}}$, $N\,{}^T\!{N}=E$ で、補題 7 より

$\displaystyle (\mbox{\boldmath$n$}\times N)\,{}^T\!{N}
= \mbox{\boldmath$n$}\times (N\,{}^T\!{N})
= \mbox{\boldmath$n$}\times E
$

となるので、結局、
  $\displaystyle
A
= E\cos\psi + \mbox{\boldmath$n$}\,{}^T\!{\mbox{\boldmath$n$}}(1-\cos\psi)
+(\mbox{\boldmath$n$}\times E)\sin\psi$ (40)
が得られる。 これで、$A$ を回転軸ベクトル (1 の固有ベクトル) $\mbox{\boldmath$n$}$ と 回転角 $\psi$ で表すことができたことになる。 $\mbox{\boldmath$n$}=\,{}^T\!{(n_1,n_2,n_3)}$ の成分で表せば、

\begin{eqnarray*}\mbox{\boldmath$n$}\,{}^T\!{\mbox{\boldmath$n$}}
&=& [n_in_j]...
...{n_2}\\
{n_3}&{0}&{-n_1}\\
{-n_2}&{n_1}&{0}\end{array}\right]\end{eqnarray*}

より、

$\displaystyle A
=
(\cos\psi)E
+(1-\cos\psi)\mbox{\boldmath$n$}\,{}^T\!{\mbox{\b...
...th$n$}\times E
=
[\mbox{\boldmath$a$},\mbox{\boldmath$b$},\mbox{\boldmath$c$}]
$

と列ベクトル毎に分けて書き下すと、
$\displaystyle \mbox{\boldmath$a$}$ $\textstyle =$ $\displaystyle \left[\begin{array}{c}{\cos\psi+n_1^2(1-\cos\psi)}\\  {n_1n_2(1-\...
...s\psi+n_2^2(1-\cos\psi)}\\  {n_2n_3(1-\cos\psi)+n_1\sin\psi}\end{array}\right],$  
$\displaystyle \mbox{\boldmath$c$}$ $\textstyle =$ $\displaystyle \left[\begin{array}{c}{n_1n_3(1-\cos\psi)+n_2\sin\psi}\\  {n_2n_3(1-\cos\psi)-n_1\sin\psi}\\  {\cos\psi+n_3^2(1-\cos\psi)}\end{array}\right]$ (41)

となる。

竹野茂治@新潟工科大学
2021-09-01