「クォータニオン」の版間の差分
編集の要約なし |
|||
21行目: | 21行目: | ||
<math>q = a + \boldsymbol{x} \cdot \boldsymbol{i}</math> | <math>q = a + \boldsymbol{x} \cdot \boldsymbol{i}</math> | ||
と表示できる。 | と表示できる。 | ||
<math>a</math> をスカラー部、 <math>\boldsymbol{x}</math> をベクトル部と呼ぶ。 | |||
<math> | |||
q_1 = a_1 + \boldsymbol{x}_1 \cdot \boldsymbol{i} | |||
,~ | |||
q_2 = a_2 + \boldsymbol{x}_2 \cdot \boldsymbol{i} | |||
</math> | |||
として、積を計算すると、 | |||
<math> | |||
q_1 q_2 = | |||
a_1 a_2 - \boldsymbol{x}_1 \cdot \boldsymbol{x}_2 | |||
+ (a_1 \boldsymbol{x}_2 + a_2 \boldsymbol{x}_1 + \boldsymbol{x}_1 \times \boldsymbol{x}_2) \cdot \boldsymbol{i} | |||
</math> | |||
と、結構綺麗に書ける。 | |||
<!-- | |||
さらに、 | |||
<math>a_1 = 0</math> であれば、 | |||
<math> | |||
q_1 q_2 = | |||
- \boldsymbol{x}_1 \cdot \boldsymbol{x}_2 | |||
+ (a_2\boldsymbol{x}_1 + \boldsymbol{x}_1 \times \boldsymbol{x}_2) \cdot \boldsymbol{i} | |||
</math> | |||
また、 <math>a_2 = 0</math> であれば、 | |||
<math> | |||
q_1 q_2 = | |||
- \boldsymbol{x}_1 \cdot \boldsymbol{x}_2 | |||
+ (a_1\boldsymbol{x}_2 + \boldsymbol{x}_1 \times \boldsymbol{x}_2) \cdot \boldsymbol{i} | |||
</math> | |||
と、少しスッキリする。 | |||
ただ、無かったはずのスカラー部が出てきているのがちょっといやである。 | |||
--> | |||
ここでさらに、 | |||
<math> | |||
q_1 = a_1 + \boldsymbol{x}_1 \cdot \boldsymbol{i} ,~ | |||
q_2 = a_2 + \boldsymbol{x}_2 \cdot \boldsymbol{i} ,~ | |||
q_3 = a_3 + \boldsymbol{x}_3 \cdot \boldsymbol{i} | |||
</math> | |||
として3つの積を考える。上記に当てはめて計算して若干整理すると、 | |||
<math> | |||
q_1 q_2 q_3 = | |||
a_1 a_2 a_3 | |||
- a_1(\boldsymbol{x}_2 \cdot \boldsymbol{x}_3) | |||
- a_2(\boldsymbol{x}_3 \cdot \boldsymbol{x}_1) | |||
- a_3(\boldsymbol{x}_1 \cdot \boldsymbol{x}_2) | |||
- (\boldsymbol{x}_1 \times \boldsymbol{x}_2) \cdot \boldsymbol{x}_3 | |||
+ \{ | |||
a_2 a_3 \boldsymbol{x}_1 + a_3 a_1 \boldsymbol{x}_2 + a_1 a_2 \boldsymbol{x}_3 | |||
-(\boldsymbol{x}_1 \cdot \boldsymbol{x}_2) \boldsymbol{x}_3 | |||
+ a_1 (\boldsymbol{x}_2 \times \boldsymbol{x}_3) | |||
+ a_2 (\boldsymbol{x}_1 \times \boldsymbol{x}_3) | |||
+ a_3 (\boldsymbol{x}_1 \times \boldsymbol{x}_2) | |||
+ (\boldsymbol{x}_1 \times \boldsymbol{x}_2) \times \boldsymbol{x}_3 | |||
\}\cdot \boldsymbol{i} | |||
</math> | |||
整っているようだけど結構大変なことになってきた。合ってるんだろうか。 | |||
ここからちょっと天下り的になりながら、三次元ベクトルの回転に対応させていく。 | |||
<math>q_2 = p = \boldsymbol{p} \cdot \boldsymbol{i}</math> とする。 | |||
つまり、<math>a_2 = 0,~ \boldsymbol{x}_2 = \boldsymbol{p}</math> である。 | |||
<math> | |||
q_1 p q_3 = | |||
- a_1(\boldsymbol{p} \cdot \boldsymbol{x}_3) | |||
- a_3(\boldsymbol{x}_1 \cdot \boldsymbol{p}) | |||
- (\boldsymbol{x}_1 \times \boldsymbol{p}) \cdot \boldsymbol{x}_3 | |||
+ \{ | |||
a_3 a_1 \boldsymbol{p} | |||
-(\boldsymbol{x}_1 \cdot \boldsymbol{p}) \boldsymbol{x}_3 | |||
+ a_1 (\boldsymbol{p} \times \boldsymbol{x}_3) | |||
+ a_3 (\boldsymbol{x}_1 \times \boldsymbol{p}) | |||
+ (\boldsymbol{x}_1 \times \boldsymbol{p}) \times \boldsymbol{x}_3 | |||
\}\cdot \boldsymbol{i} | |||
</math> | |||
第1項と第2項を消したいことを考えると、<math>a_1 = a_3,~ \boldsymbol{x}_1 = -\boldsymbol{x}_3</math>であるとよさそうである。 | |||
そのとき、 | |||
<math>\boldsymbol{x}_1 \times \boldsymbol{x}_2</math> というのは <math>\boldsymbol{x}_1</math> や <math>\boldsymbol{x}_2</math> に垂直なベクトルであるから、 | |||
ちょうど<math>(\boldsymbol{x}_1 \times \boldsymbol{x}_2) \cdot \boldsymbol{x}_3</math> | |||
も0になってくれる。 | |||
そのようなクォータニオンの組は共役である。 | |||
<math>q_1 = q = a + \boldsymbol{x} \cdot \boldsymbol{i}</math>として、<math>q_3 = q^* = a - \boldsymbol{x} \cdot \boldsymbol{i}</math>とする。 | |||
<math> | |||
q p q^* = | |||
\{ | |||
a^2 \boldsymbol{p} | |||
+(\boldsymbol{x} \cdot \boldsymbol{p}) \boldsymbol{x} | |||
+ 2a (\boldsymbol{x} \times \boldsymbol{p}) | |||
- (\boldsymbol{x} \times \boldsymbol{p}) \times \boldsymbol{x} | |||
\}\cdot \boldsymbol{i} | |||
</math> | |||
こうして三次元ベクトル <math>\boldsymbol{p}</math> を別のベクトルに移す変換が得られた。 | |||
== 共役 == | == 共役 == |
2024年7月15日 (月) 02:25時点における版
四元数。
実数 [math]\displaystyle{ a,b,c,d }[/math] と虚数単位 [math]\displaystyle{ i,j,k }[/math] を用いて [math]\displaystyle{ a + bi + cj + dk }[/math] と表される。
ただし、[math]\displaystyle{ i^2=j^2=k^2=ijk=-1 }[/math] である。
積について非可換であることに注意する。
3次元ベクトルによる表現
[math]\displaystyle{ \boldsymbol{x}=\begin{bmatrix} x \\ y \\ z \end{bmatrix}, \boldsymbol{i}=\begin{bmatrix} i \\ j \\ k \end{bmatrix} }[/math] のようにすれば、 [math]\displaystyle{ q = a + \boldsymbol{x} \cdot \boldsymbol{i} }[/math] と表示できる。
[math]\displaystyle{ a }[/math] をスカラー部、 [math]\displaystyle{ \boldsymbol{x} }[/math] をベクトル部と呼ぶ。
[math]\displaystyle{ q_1 = a_1 + \boldsymbol{x}_1 \cdot \boldsymbol{i} ,~ q_2 = a_2 + \boldsymbol{x}_2 \cdot \boldsymbol{i} }[/math]
として、積を計算すると、
[math]\displaystyle{ q_1 q_2 = a_1 a_2 - \boldsymbol{x}_1 \cdot \boldsymbol{x}_2 + (a_1 \boldsymbol{x}_2 + a_2 \boldsymbol{x}_1 + \boldsymbol{x}_1 \times \boldsymbol{x}_2) \cdot \boldsymbol{i} }[/math]
と、結構綺麗に書ける。
ここでさらに、
[math]\displaystyle{ q_1 = a_1 + \boldsymbol{x}_1 \cdot \boldsymbol{i} ,~ q_2 = a_2 + \boldsymbol{x}_2 \cdot \boldsymbol{i} ,~ q_3 = a_3 + \boldsymbol{x}_3 \cdot \boldsymbol{i} }[/math]
として3つの積を考える。上記に当てはめて計算して若干整理すると、
[math]\displaystyle{ q_1 q_2 q_3 = a_1 a_2 a_3 - a_1(\boldsymbol{x}_2 \cdot \boldsymbol{x}_3) - a_2(\boldsymbol{x}_3 \cdot \boldsymbol{x}_1) - a_3(\boldsymbol{x}_1 \cdot \boldsymbol{x}_2) - (\boldsymbol{x}_1 \times \boldsymbol{x}_2) \cdot \boldsymbol{x}_3 + \{ a_2 a_3 \boldsymbol{x}_1 + a_3 a_1 \boldsymbol{x}_2 + a_1 a_2 \boldsymbol{x}_3 -(\boldsymbol{x}_1 \cdot \boldsymbol{x}_2) \boldsymbol{x}_3 + a_1 (\boldsymbol{x}_2 \times \boldsymbol{x}_3) + a_2 (\boldsymbol{x}_1 \times \boldsymbol{x}_3) + a_3 (\boldsymbol{x}_1 \times \boldsymbol{x}_2) + (\boldsymbol{x}_1 \times \boldsymbol{x}_2) \times \boldsymbol{x}_3 \}\cdot \boldsymbol{i} }[/math]
整っているようだけど結構大変なことになってきた。合ってるんだろうか。
ここからちょっと天下り的になりながら、三次元ベクトルの回転に対応させていく。
[math]\displaystyle{ q_2 = p = \boldsymbol{p} \cdot \boldsymbol{i} }[/math] とする。 つまり、[math]\displaystyle{ a_2 = 0,~ \boldsymbol{x}_2 = \boldsymbol{p} }[/math] である。
[math]\displaystyle{ q_1 p q_3 = - a_1(\boldsymbol{p} \cdot \boldsymbol{x}_3) - a_3(\boldsymbol{x}_1 \cdot \boldsymbol{p}) - (\boldsymbol{x}_1 \times \boldsymbol{p}) \cdot \boldsymbol{x}_3 + \{ a_3 a_1 \boldsymbol{p} -(\boldsymbol{x}_1 \cdot \boldsymbol{p}) \boldsymbol{x}_3 + a_1 (\boldsymbol{p} \times \boldsymbol{x}_3) + a_3 (\boldsymbol{x}_1 \times \boldsymbol{p}) + (\boldsymbol{x}_1 \times \boldsymbol{p}) \times \boldsymbol{x}_3 \}\cdot \boldsymbol{i} }[/math]
第1項と第2項を消したいことを考えると、[math]\displaystyle{ a_1 = a_3,~ \boldsymbol{x}_1 = -\boldsymbol{x}_3 }[/math]であるとよさそうである。
そのとき、 [math]\displaystyle{ \boldsymbol{x}_1 \times \boldsymbol{x}_2 }[/math] というのは [math]\displaystyle{ \boldsymbol{x}_1 }[/math] や [math]\displaystyle{ \boldsymbol{x}_2 }[/math] に垂直なベクトルであるから、 ちょうど[math]\displaystyle{ (\boldsymbol{x}_1 \times \boldsymbol{x}_2) \cdot \boldsymbol{x}_3 }[/math] も0になってくれる。
そのようなクォータニオンの組は共役である。
[math]\displaystyle{ q_1 = q = a + \boldsymbol{x} \cdot \boldsymbol{i} }[/math]として、[math]\displaystyle{ q_3 = q^* = a - \boldsymbol{x} \cdot \boldsymbol{i} }[/math]とする。
[math]\displaystyle{ q p q^* = \{ a^2 \boldsymbol{p} +(\boldsymbol{x} \cdot \boldsymbol{p}) \boldsymbol{x} + 2a (\boldsymbol{x} \times \boldsymbol{p}) - (\boldsymbol{x} \times \boldsymbol{p}) \times \boldsymbol{x} \}\cdot \boldsymbol{i} }[/math]
こうして三次元ベクトル [math]\displaystyle{ \boldsymbol{p} }[/math] を別のベクトルに移す変換が得られた。
共役
[math]\displaystyle{ q = a + bi + cj + dk }[/math] に対し [math]\displaystyle{ q^* = a - bi - cj - dk }[/math] を考える。
すると、
[math]\displaystyle{ qq^*=q^*q=a^2+b^2+c^2+d^2 }[/math]
となる。
特に、[math]\displaystyle{ ||q||=1 }[/math] のとき、[math]\displaystyle{ q^{-1}=q^* }[/math] である。
回転
そのうち書きたい
クォータニオンの積と内積・外積など
z軸まわりの回転
任意軸周りの回転