クォータニオン(四元数)

一覧

比較 加算 減算 外積
共役 実部の設定 虚部の設定

クォータニオン生成 Quaternion

Quaternion
クォータニオンの生成
\begin{align} q=q_w+q_xi+q_yj+q_zk=& \begin{bmatrix} q_w \\ q_x \\ q_y \\ q_z \\ \end{bmatrix} \\ i^2+j^2+k^2=&-1 \\ ij=&k \\ jk=&i \\ ki=&j \end{align}
入力
w LREAL スカラー部(実部)
x LREAL ベクトル部x(虚部)
y LREAL ベクトル部y(虚部)
z LREAL ベクトル部z(虚部)
出力
out keisan\sQuaternion クォータニオン

【 例 】
入力
w 1.0
x 1.0
y 1.0
z 1.0
出力
out \[ \begin{bmatrix} q_w \\ q_x \\ q_y \\ q_z \\ \end{bmatrix} = \begin{bmatrix} 1 \\ 1 \\ 1 \\ 1 \\ \end{bmatrix} \]


比較 qtEQ

qtEQ
クォータニオンの比較
【 例 】


加算 qtADD

qtADD
クォータニオンの加算
\[ Q1+Q2 = \begin{bmatrix} a_{w} \\ a_{x} \\ a_{y} \\ a_{z} \\ \end{bmatrix} + \begin{bmatrix} b_{w} \\ b_{x} \\ b_{y} \\ b_{z} \\ \end{bmatrix} = out \]
表記 シンボル
【 例 】
入力
Q1 \begin{bmatrix} 1 \\ 1 \\ 1 \\ 1 \\ \end{bmatrix}
Q2 \begin{bmatrix} 0.5 \\ 2.0 \\ 1.0 \\ 0.0 \\ \end{bmatrix}
出力
out \begin{bmatrix} 1.5 \\ 3.0 \\ 2.0 \\ 1.0 \\ \end{bmatrix}


減算 qtSUB

qtSUB
クォータニオンの減算
\[ Q1-Q2 = \begin{bmatrix} a_{w} \\ a_{x} \\ a_{y} \\ a_{z} \\ \end{bmatrix} - \begin{bmatrix} b_{w} \\ b_{x} \\ b_{y} \\ b_{z} \\ \end{bmatrix} = out \]
表記 シンボル
【 例 】
入力
Q1 \begin{bmatrix} 1 \\ 1 \\ 1 \\ 1 \\ \end{bmatrix}
Q2 \begin{bmatrix} 0.5 \\ 2.0 \\ 1.0 \\ 0.0 \\ \end{bmatrix}
出力
out \begin{bmatrix} 0.5 \\ -1 \\ 0 \\ 1 \\ \end{bmatrix}


外積 qtCross

qtCross
クォータニオンの外積
\[ Q1\times Q2 = \begin{bmatrix} a_{w} \\ a_{x} \\ a_{y} \\ a_{z} \\ \end{bmatrix} \times \begin{bmatrix} b_{w} \\ b_{x} \\ b_{y} \\ b_{z} \\ \end{bmatrix} = out \]
表記 シンボル
【 例 】
入力
Q1 \begin{bmatrix} 1 \\ 1 \\ 1 \\ 1 \\ \end{bmatrix}
Q2 \begin{bmatrix} 0.5 \\ 2.0 \\ 1.0 \\ 0.0 \\ \end{bmatrix}
出力
out \begin{bmatrix} -2.5 \\ 1.5 \\ 3.5 \\ -0.5 \\ \end{bmatrix}


共役 qtCQ

qtCQ
クォータニオンの共役
\[ \bar{Q1} = \begin{bmatrix} a_{w} \\ a_{x} \\ a_{y} \\ a_{z} \\ \end{bmatrix} = out \]
表記 シンボル
【 例 】
入力
Q2 \begin{bmatrix} 0.5 \\ 2.0 \\ 1.0 \\ 0.0 \\ \end{bmatrix}
出力
out \begin{bmatrix} 0.5 \\ -2.0 \\ -1.0 \\ 0.0 \\ \end{bmatrix}


実部の設定 qtSetReal

qtSetReal
クォータニオンの実部の設定
シンボル
【 例 】
入力
w1 0.5
Q1 \begin{bmatrix} 0.0 \\ 1.0 \\ 1.0 \\ 1.0 \\ \end{bmatrix}
出力
Q1 \begin{bmatrix} 0.5 \\ 1.0 \\ 1.0 \\ 1.0 \\ \end{bmatrix}


虚部の設定 qtSetImag

qtSetImag
クォータニオンの虚部の設定
シンボル
【 例 】
入力
vector \begin{bmatrix} 1.0 \\ 2.0 \\ 3.0 \\ \end{bmatrix}
Q1 \begin{bmatrix} 0.5 \\ 0.0 \\ 0.0 \\ 0.0 \\ \end{bmatrix}
出力
Q1 \begin{bmatrix} 0.5 \\ 1.0 \\ 2.0 \\ 3.0 \\ \end{bmatrix}