四元数

実数は直線上の一点を,虚数は平面上の一点を表すものです. しかし,残念ながら3次元以上の一点を表すような数を美しく定義することは出来ません. それでも,乗法の交換則を犠牲にすればなんとか四元数というものを定義することが出来ます. 高校や大学でも四元数の話を少し習うかもしれませんが, 物理学で実際に四元数をどのように応用できるかというと,勉強する機会はあまり多くないかもしれません. 実は,四元数を使うと剛体の回転が美しく記述できるのです. 剛体の回転運動や,結晶構造の解析などに役立ちますし, 実際にスペースシャトルの姿勢を制御する計算にも四元数が使われています.

四元数の基礎

あまり数学的な内容には立ち入らずに,必要事項だけを簡単に書きます. (興味のある人はもっと詳しい本を読んでみてください.)

四元数の生い立ち

四元数はアイルランドの数学者ハミルトン( \text{(Sir William Rowan Hamilton (1806-1871))} )によって考案されました. 18431016 日の夕方, ハミルトンがアイルランド科学アカデミーの会合に参加するため ダブリン市内のロイヤル運河沿いを歩いていたとき, 突如として四元数の原理がひらめいたということです. ハミルトンはとっさに運河にかかるブロハム橋に, i^{2}=j^{2}=k^{2}=ijk=-1 と書き込みました.

いまではハミルトンを記念して,その橋はウィリアム・ローアン・ハミルトン橋と呼ばれている, という噂だったのですが,現地ではそのような様子はまったくなく,Broom Bridge と呼ばれていました. ハミルトンの当時は,Brougham Bridge と呼ばれていたそうで,名前がよく変わっているようですが, Broughamの現地での発音が,ブルームなのだそうで,音に準じて今ではBroom Bridge と綴られているとのことです.(普通の英語だと,Broughamは,ブラムという 感じに読むと思いますので,アイルランド弁でしょうか.地名の読み方は分かりません.)

Joh-4dim-bridge1.jpg

ウィリアム・ローアン・ハミルトン橋( 2005 年Joh撮影)

四元数を記念するプレートも付いています.プレートの内容は,訳すとこんな感じです. 『 18431016 日,ウィリアム・ローアン・ハミルトン卿はこの場所を 歩いている際,天才的な閃きによって四元数の基本となる演算規則 i^2=j^2=k^2=ijk=-1 を発見し,この橋の石に書き込んだのであった(Joh訳)』.

Joh-4dim-bridge2.jpg

四元数を記念したプレート

アイルランド旅行の際には,是非行ってみたい場所ですね.

四元数の定義

四元数とは次のような数です.

q=s+iu+jv+kw

ここで s , u , v , w は実数で, i , j , k は次のような演算規則を満たす虚数の「ような」数です.しかし, i , j , k の間には交換則が成り立っていないことに注意して下さい.

i^{2}=j^{2}=k^{2}=-1
ij=k,\  jk=i,\  ki=j
ji=-k,\  kj=-i,\  ik=-j

四元数の積

二つの四元数の積を考えてみます.

qq' &=(s+iu+jv+kw)(s'+iu'+jv'+kw')\\&=ss'+isu'+jsv'+ksw'+ius'-uu'+kuv'-juw'\\&+jvs'-kvu'-vv'+ivw'+kws'+jwu'-iwv'-ww'\\&=(ss'-uu'-vv'-ww')+i(su'+ us'+vw'-wv')+j(sv'-uw'+vs'+wu')\\&+k(sw'+uv'-vu'+ws')

この結果はダッシュのついた記号とつかない記号とに関して対称ではないので,積の交換則は成り立たないということが分かります.四元数の掛け算では順番は変えられないのです.

qq'\ne q'q

分配則や結合則は成り立ちます.

補足: 四元数をスカラー部分とベクトル部分に分けて,次のように書いてしまうと計算が楽になります.

q=s+\bm{v}

ここで \bm{v}=iu+jv+kw です.この表式を用いると,四元数の乗法は次のように書けます.

qq'=(ss'-\bm{v}\cdot \bm{v}')+(sv'+s'\bm{v}+\bm{v}\times \bm{v}')

共役四元数

四元数 q=s+iu+jv+kw の共役というものを次のように定義します.

\overline {q}=s-iu-jv-kw

このとき,次の関係が成り立つことは計算してみればすぐに分かりますね.

q\overline {q}=\overline {q}q=s^{2}+u^{2}+v^{2}+w^{2}

四元数の絶対値

共役四元数を用いて,四元数の絶対値を次のように定義します.

|q| =\sqrt{q\overline {q}}=\sqrt{s^{2}+u^{2}+v^{2}+w^{2}}

これより, |q| =0 となるのは, s=u=v=w=0 のときだけであることがわかります.

四元数の逆数

逆数は次のように定義します.

\displaystyle q^{-1}={\overline {q}\over \big\arrowvert q\big\arrowvert ^{2}}

四元数には乗法の交換則を除いて(零による除算はもちろん除く),加減乗除が定義されているので,数学的には体(field)に準じる集合であると言えます.

四元数の積を三次元の回転の表現に応用する

三次元での剛体の有限回転は,一般に交換則には従いません.回転を表す行列の積が交換則に従わないのと,四元数の乗法が交換則に従わないのは物理的には同じことを意味しています.一般に,行列によって回転を表現すると,回転軸の方向や回転角は固有ベクトルを求めるなどの面倒な計算を経なければ見えてこないし,逆に,回転の方向と回転角が与えられた場合にこの回転を表現する行列を求めるのもなかなか面倒なものですが,四元数によって回転を表現すると,このあたりの見通しが大変よくなります.

「ベクトル \bm{x} を,原点を通る単位ベクトル \bm{u} を回転軸として,右ねじが進む方向に角 \theta だけ回転させる」と,回した先のベクトル \bm{x}' は四元数を使って次のように表現できます.

\bm{x}'=q \bm{x} \overline {q}
\displaystyle q=\cos {\theta \over 2} + \bm{u} \sin {\theta \over 2}

ここで, \bm{u}=iu_{1}+ju_{2}+ku_{3} です.

また,回転 q_{1} に引き続いて回転 q_{2} を行う場合は次のように書けばよいのです.

x'=(q_{2}q_{1})x(\overline {q_{1}}\  \overline {q_{2}})

なんて簡単なんでしょう!

例題

実際に計算して確かめてみましょう. 「ベクトル (0,0,1)y 軸の回りに90度回転させる」という問題を考えてみます.ちょっと考えてみれば,これは (1,0,0) になることが分かりますね.では,計算して確かめてみましょう.

Joh-4dim.png

ベクトル \bm{x}=(0,0,1) は,四元数表示で次のようになります.

\bm{x}=k

また, y 軸の回りに90度回転させることを四元数で表現すると次のようになります.

q= \cos \frac{\pi}{4} + j\sin \frac{\pi}{4}= \frac{1}{\sqrt{2}} + j\frac{1}{\sqrt{2}}

先ほどの公式を使って,求めるベクトルは次のように計算できます.

\bm{x}'=&q \bm{x} \overline{q}\\&=(\frac{1}{\sqrt{2}} + j\frac{1}{\sqrt{2}})k(\frac{1}{\sqrt{2}} - j\frac{1}{\sqrt{2}})\\&=(\frac{1}{\sqrt{2}} + j\frac{1}{\sqrt{2}})(k\frac{1}{\sqrt{2}} +i\frac{1}{\sqrt{2}})\\ &=k\frac{1}{2}+i\frac{1}{2}+i\frac{1}{2}-k\frac{1}{2}\\&=i

四元数表示では \bm{x}'=i はベクトル (1,0,0) を意味するのですから,ちゃんと答えが出ました.