
2次元回転の導き方の眺め方
2次元回転問題
2次元座標 $${ \bm{a} = \begin{pmatrix} a \\ b \end{pmatrix} }$$ を 左回り $${ \theta }$$ だけ回転した座標 $${ \bm{a'} = \begin{pmatrix} a' \\ b' \end{pmatrix} }$$ を計算する際、次の2つの方法で説明されるようだ。
1つ目は$${ \begin{pmatrix} a \\ b \end{pmatrix} = a \begin{pmatrix} 1 \\ 0 \end{pmatrix} + b \begin{pmatrix} 0 \\ 1 \end{pmatrix} }$$ に分解し、
$${ \begin{pmatrix} 1 \\ 0 \end{pmatrix} }$$を$${ \begin{pmatrix} \cos\theta \\ \sin\theta \end{pmatrix} }$$、$${ \begin{pmatrix} 0 \\ 1 \end{pmatrix} }$$を$${ \begin{pmatrix} -\sin\theta \\ \;\;\;\cos\theta \end{pmatrix} }$$に置換して、
$${ \begin{pmatrix} a' \\ b' \end{pmatrix} = a \begin{pmatrix} \cos\theta \\ \sin\theta \end{pmatrix} + b \begin{pmatrix} -\sin\theta \\ \;\;\;\cos\theta \end{pmatrix} = \begin{pmatrix} a \cos\theta - b \sin\theta \\ a \cos\theta + \!b \sin\theta \end{pmatrix} }$$ と解く。

2つ目は$${ \begin{pmatrix} \cos\theta \\ \sin\theta \end{pmatrix} = \cos\theta \begin{pmatrix} 1 \\ 0 \end{pmatrix} + \sin\theta \begin{pmatrix} 0 \\ 1 \end{pmatrix} }$$ に分解し、
$${ \begin{pmatrix} 1 \\ 0 \end{pmatrix} }$$を$${ \begin{pmatrix} a \\ b \end{pmatrix} }$$、$${ \begin{pmatrix} 0 \\ 1 \end{pmatrix} }$$を$${ \begin{pmatrix} -b \\ \;\;\;a \end{pmatrix} }$$に置換して、
$${ \begin{pmatrix} a' \\ b' \end{pmatrix} = \cos\theta \begin{pmatrix} a \\ b \end{pmatrix} + \sin\theta \begin{pmatrix} -b \\ \;\;\;a \end{pmatrix} = \begin{pmatrix} a \cos\theta - b \sin\theta \\ b \sin\theta + a \cos\theta \end{pmatrix} }$$ と解く。

結局 $${ \begin{pmatrix} a \cos\theta - b \sin\theta \\ a \cos\theta + \!b \sin\theta \end{pmatrix} = \begin{pmatrix} a \cos\theta - b \sin\theta \\ b \sin\theta + a \cos\theta \end{pmatrix} }$$ であるため、
両方の結果は一致する。
興味深いのは、途中に挟む置き換えは何を意味し、この2つの結果がどうして同じか。計算したら一致するのは事実として、もっと直感的に式を眺めただけで直観的に同じと見抜ける理屈が欲しい。
2つの式の類似性
2つ目の方法では $${ \sin\theta }$$と$${ \cos\theta }$$が繰り返し登場し、他の角度に変わることないため、$${ c }$$と$${ s }$$に置き換えてみると、2つの手法の式が同じ見えるようになる。
$${ \begin{array}{l} c = \cos\theta \\ s = \sin\theta \\ \end{array} \\ \begin{pmatrix} a \\ b \end{pmatrix} = a \begin{pmatrix} 1 \\ 0 \end{pmatrix} + b \begin{pmatrix} 0 \\ 1 \end{pmatrix} \rightarrow \begin{pmatrix} a' \\ b' \end{pmatrix} = a \begin{pmatrix} c \\ s \end{pmatrix} + b \begin{pmatrix} -c \\ \;\;\;c \end{pmatrix} \\ \begin{pmatrix} c \\ s \end{pmatrix} = c \begin{pmatrix} 1 \\ 0 \end{pmatrix} + s \begin{pmatrix} 0 \\ 1 \end{pmatrix} \rightarrow \begin{pmatrix} a' \\ b' \end{pmatrix} = c \begin{pmatrix} a \\ b \end{pmatrix} + s \begin{pmatrix} -b \\ \;\;\;a \end{pmatrix} }$$
$${ \begin{pmatrix} 1 \\ 0 \end{pmatrix} }$$を$${ \begin{pmatrix} c \\ s \end{pmatrix} }$$、$${ \begin{pmatrix} 0 \\ 1 \end{pmatrix} }$$を$${ \begin{pmatrix} -s \\ \;\;\;c \end{pmatrix} }$$に置換するのが回転ならば、
$${ \begin{pmatrix} 1 \\ 0 \end{pmatrix} }$$を$${ \begin{pmatrix} a \\ b \end{pmatrix} }$$、$${ \begin{pmatrix} 0 \\ 1 \end{pmatrix} }$$を$${ \begin{pmatrix} -b \\ \;\;\;a \end{pmatrix} }$$に置換するのも回転の類で、
$${ r = \sqrt{a^2 + b^2} = 1 }$$が保証されないため単なる回転ではなく、
正確には拡大が伴いうる回転と言える。
回転行列による表示
回転でも拡大が伴う回転でも、回転行列を用いて簡潔に表現できる。
変換前のベクトル$${ \bm{a} = \begin{pmatrix} a \\ b \end{pmatrix} }$$、
変換後のベクトル$${ \bm{a}' = \begin{pmatrix} a' \\ b' \end{pmatrix} }$$、
単位行列$${ E = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix} }$$、
回転行列$${ R = \begin{pmatrix} s & -c \\ c & \;\;\;s \end{pmatrix} = \begin{pmatrix} \sin\theta & -\cos\theta \\ \cos\theta & \;\;\;\sin\theta \end{pmatrix} }$$
係数行列$${ A = \begin{pmatrix} a & -b \\ b & \;\;\;a \end{pmatrix} }$$
回転行列を使うと、成分分解は単位行列を掛けていることに対応する。単位行列が基底を並べたものと見なせる。
$${ \begin{pmatrix} a \\ b \end{pmatrix} = a \begin{pmatrix} 1 \\ 0 \end{pmatrix} + b \begin{pmatrix} 0 \\ 1 \end{pmatrix} \sim \begin{pmatrix} a \\ b \end{pmatrix} = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix} \begin{pmatrix} a \\ b \end{pmatrix} }$$
基底を角度$${ \theta }$$の$${ \cos }$$と$${ \sin }$$に書き換えることは、掛ける単位行列を回転行列に書き換えることに対応する。
$${ \begin{pmatrix} a' \\ b' \end{pmatrix} = c \begin{pmatrix} a \\ b \end{pmatrix} + s \begin{pmatrix} -b \\ \;\;\;a \end{pmatrix} \sim \begin{pmatrix} a' \\ b' \end{pmatrix} = \begin{pmatrix} c & -s \\ s & \;\;\;c \end{pmatrix} \begin{pmatrix} a \\ b \end{pmatrix} }$$
方法1は単純に変換前のベクトル$${ \begin{pmatrix} a \\ b \end{pmatrix} }$$に回転行列$${ R }$$を掛けることで変換後のベクトル$${ \begin{pmatrix} a' \\ b' \end{pmatrix} }$$を得る考え方と言える。$${ \bm{a}' = R\,\bm{a} }$$と簡潔に書ける。
方法2も同様に考えると、$${ a }$$と$${ b }$$を回転行列のように並べた係数行列を掛けることになる。
$${ \begin{pmatrix} c \\ s \end{pmatrix} = c \begin{pmatrix} 1 \\ 0 \end{pmatrix} + s \begin{pmatrix} 0 \\ 1 \end{pmatrix} \quad\;\sim \begin{pmatrix} c \\ s \end{pmatrix} = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix} \begin{pmatrix} c \\ s \end{pmatrix} }$$
$${ \begin{pmatrix} a' \\ b' \end{pmatrix} = c \begin{pmatrix} a \\ b \end{pmatrix} + s \begin{pmatrix} -b \\ \;\;\;a \end{pmatrix} \sim \begin{pmatrix} a' \\ b' \end{pmatrix} = \begin{pmatrix} a & -b \\ b & \;\;\;a \end{pmatrix} \begin{pmatrix} c \\ s \end{pmatrix} }$$
ただし、回転量を表すベクトル$${ \bm{r} = \begin{pmatrix} c \\ s \end{pmatrix} }$$と置くと。$${ \bm{a}' = A\,\bm{c} }$$と書ける。
変換結果が一致するため、$${ R\,\bm{a} = A\,\bm{c} }$$である。これでは計算した結果一致するので等しいという説明でしかない。
この回転量を表すベクトル$${ \bm{c} = \begin{pmatrix} c \\ s \end{pmatrix} }$$というのが馴染無いので、回転行列に分解して考えてみる。これは単位ベクトル$${ \bm{u} = \begin{pmatrix} 1 \\ 0 \end{pmatrix} }$$に回転行列$${ R }$$を掛けて得られるベクトルであり、$${ \begin{pmatrix} c \\ s \end{pmatrix} = \begin{pmatrix} c & -s \\ s & \;\;\;c \end{pmatrix} \begin{pmatrix} 1 \\ 0 \end{pmatrix} }$$、$${ \bm{r} = R \bm{u} }$$と書ける。同様に、$${ \begin{pmatrix} a \\ b \end{pmatrix} = \begin{pmatrix} a & -b \\ b & \;\;\;a \end{pmatrix} \begin{pmatrix} 1 \\ 0 \end{pmatrix} }$$、$${ \bm{a} = A \bm{u} }$$となる。
この関係を使えば、方法1と方法2は単位ベクトル$${ \bm{u} }$$を先に係数行列$${ A }$$で回転拡大してから回転行列$${ R }$$で回転するか、先に$${ R }$$で回転してから$${ A }$$で回転拡大するかの違いでしかないから同じになる、と理解できる。
方法1:$${ \begin{pmatrix} a' \\ b' \end{pmatrix} = \begin{pmatrix} c & -s \\ s & \;\;\;c \end{pmatrix} \begin{pmatrix} a & -b \\ b & \;\;\;a \end{pmatrix} \begin{pmatrix} 1 \\ 0 \end{pmatrix} }$$
方法2:$${ \begin{pmatrix} a' \\ b' \end{pmatrix} = \begin{pmatrix} a & -b \\ b & \;\;\;a \end{pmatrix} \begin{pmatrix} c & -s \\ s & \;\;\;c \end{pmatrix} \begin{pmatrix} 1 \\ 0 \end{pmatrix} }$$
すなわち、
方法1:$${ \bm{a}' = R\, A\, \bm{u} }$$
方法2:$${ \bm{a}' = A\, R\, \bm{u} }$$

一般的な行列積は非可換ではあるが、2次元回転行列やそれに定数倍した係数行列であるため、これらの行列積は可換で、$${ R\,A = A\,R }$$が成り立つ。
正方行列による位置の表現
単位ベクトル$${ \bm{u} }$$に係数行列$${ A }$$を掛けて得られる回転と拡大を表すベクトル$${ \bm{a} }$$は必ず1対1対応が取れるため、同一視できる。これを利用すると、列ベクトル$${ \bm{a} }$$の代わりに係数行列$${ A }$$で位置を表すことが可能となる。
そうすると、変換後のベクトルに代わる係数行列$${ A' = \begin{pmatrix} a' & -b' \\ b' & \;\;\;a' \end{pmatrix} }$$を定義すれば、ベクトルを使わない、正方行列だけの表現が得られる。
方法1:$${ \begin{pmatrix} a' & -b' \\ b' & \;\;\;a' \end{pmatrix} = \begin{pmatrix} c & -s \\ s & \;\;\;c \end{pmatrix} \begin{pmatrix} a & -b \\ b & \;\;\;a \end{pmatrix} }$$
方法2:$${ \begin{pmatrix} a' & -b' \\ b' & \;\;\;a' \end{pmatrix} = \begin{pmatrix} a & -b \\ b & \;\;\;a \end{pmatrix} \begin{pmatrix} c & -s \\ s & \;\;\;c \end{pmatrix} }$$
すなわち、
方法1:$${ \bm{A}' = R\, A\ }$$
方法2:$${ \bm{A}' = A\, R\ }$$
列ベクトル表記は、この関係を単位ベクト$${ \bm{u} }$$に掛けることで得られる形と言える。
方法1:$${ \bm{A}' = R\, A \sim \bm{A}'\,\bm{u} = R\, A\,\bm{u} \sim \bm{a}' = R\, \bm{a} }$$
方法2:$${ \bm{A}' = A\, R \sim \bm{A}'\,\bm{u} = A\, R\,\bm{u} \sim \bm{a}' = A\, \bm{r} }$$
複素数による表現
正方行列で位置を表す手法は、位置も回転も同一表現をするために高い対称性を得ている。位置と回転の両方とも複素数で表しても同様に高い対称性を持つ表現が得られると予想できる。
変換前複素数$${ \dot{a} = a + b\bm{i} \sim \begin{pmatrix} a \\ b \end{pmatrix} }$$、
変換後複素数$${ \dot{a}' = a' + b'\bm{i} \sim \begin{pmatrix} a' \\ b' \end{pmatrix} }$$、
回転複素数$${ \dot{r} = c' + s'\bm{i} \sim \begin{pmatrix} c \\ s \end{pmatrix} }$$
方法1:$${ a' + b' \bm{i} = (c + s \bm{i})(a + b \bm{i}) }$$
方法2:$${ a' + b' \bm{i} = (a + b \bm{i})(c + s \bm{i}) }$$
すなわち、
方法1:$${ \dot{a}' = \dot{r}\,\dot{a} }$$
方法2:$${ \dot{a}' = \dot{a}\,\dot{r} }$$
複素数は一般的に可換なため、当然成り立つ。
$${ \begin{pmatrix} a & -b \\ b & \;\;\;a \end{pmatrix} }$$の形をした行列は、一般に複素数の行列表現として良く知られている。この複素数の表現行列は行列積が複素数積に対応していて、可換であるのも良く知られた事実である。
3次元に拡張する際の注意
挙げられた回転に関する2つの考え方は結局2次元における回転の可換性に由来しているのが分かった。2次元である限り可換性が成立するために両方とも正しいが、3次元では回転の合成は順番依存のために注意が必要である。
3次元回転行列とそれを定数倍した行列の積は非可換になるし、複素数の3次元回転版である四元数もまた非可換になる。3次元では全てが成立しなくなる。
3次元でも正しいのは方法1である。あくまでも変換前のベクトルに対し、回転を作用するのが基本となる回転の考え方である。このため、2次元でも先に片方で理解しておきたい場合は、1の考え方で理解した方が3次元にスムーズに繋がると思える。