四元数系列 - 3 四元数

四元数的基本定义与性质.

本文主要整理自 Krasjet 的 "四元数与三维旋转" 第三章.

四元数 (Quaternion) 的定义与复数非常类似, 唯一的区别是: 四元数有三个虚部, 而复数只有一个虚部.

1 定义

定义形如 (其中 ) 的数叫做四元数, 全体四元数的集合记作 (H 代表四元数的发现者 William Rowan Hamilton).

与复数类似, 四元数为关于 (Basis) 线性组合, 因此可以用向量表示为:

我们经常将四元数的实部与虚部分开, 并用一个三维向量表示虚部,

其中 称为四元数 标量部分 (scalar part), 称为四元数 向量部分 (vector part).

2 性质

2.1 四元数模长 (范数)

对于四元数 , 其模长 (范数 (Norm)) 定义为:

对于标量向量有序对形式的表示, 的模长为:

其中 .

2.2 四元数加减法

对于两个四元数 , , 它们的和差即为对应分量相加减的结果:

同理, 对于标量向量有序对形式, 如 , , 则有

2.3 标量乘法

对于四元数 及标量 , 它们的乘积满足交换律:

2.4 四元数乘法

与复数不同, 由于四元数有三个虚部, 因此存在虚部之间相乘的特殊情况. 利用已知条件 可推导出所有乘积情况, 这里通过表格形式展示结果.

表格最左列中一个元素右乘以顶行中一个元素的结果就位于这两个元素的行列交叉处. 例如 . 从有颜色标记的格子中可以看出, 四元数乘法不成立交换律.

记四元数乘法运算符为 , 对于两个四元数 , , 它们的乘积可通过乘法分配律和结合律来计算, 并对照表格进行化简:

2.5 四元数的矩阵形式

可以发现, 与复数类似, 四元数相乘也可以写成矩阵形式:

其中, 右侧的 是向量形式表示的 , 而左侧的 则定义为 矩阵形式, 这里用粗体大写字母记为 .

另外, 也可以将右乘的四元数表示为左乘的矩阵形式, 有少数情况会用到.

进一步, 若将四元数乘法中的四元数看作一种变换, 四元数乘法便可在矩阵形式下转化为矩阵乘法. 注意, 与复数乘法不同, 四元数乘法不满足交换律.

因此, 我们可以将四元数 与矩阵 建立等价关系. 进一步, 得到关于基向量 的矩阵形式:

2.6 Graßmann 积

在四元数乘法中, 换个角度观察乘积可以发现

, , 那么

因此, 四元数乘法的结果也可以用向量点乘和叉乘的形式表示出来:

对任意四元数 , , 有

这个结果叫做 Graßmann 积, 它是将四元数与旋转联系起来的关键.

2.7 纯四元数

这里单独讨论四元数的一种特殊形式, 即仅有虚部的四元数:

我们称 纯四元数 (Pure Quaternion). 若一个三维向量为 , 我们将没有不加粗且没有上标的 记为它对应的纯四元数 . 任意三维向量都可以转换为一个纯四元数.

若有两个纯四元数 , , 那么

纯四元数 的矩阵形式为

显然, , 说明 反对称矩阵 (Skew Symmetric Matrix).

2.8 四元数的共轭和逆

四元数 共轭 (Conjugate) 定义为

与复数类似, 四元数共轭在矩阵形式下对应为转置运算

对于标量向量有序对形式, 的共轭为 .

注意到

得到的结果是一个实数, 而它正是四元数模长的平方:

对应的矩阵形式结果为

由于 , 容易推导出 , 因此四元数与自身共轭之间的乘法满足交换律.

四元数的 (Inverse) 记为 , 规定:

与矩阵类似, 右乘 的逆运算为右乘 , 左乘 的逆运算为左乘 .

四元数的求逆运算对应到矩阵形式上也是矩阵求逆运算:

利用共轭的性质, 可以计算四元数的逆:

, 即 单位四元数 (Unit Quaternion), 那么

单位四元数对应到矩阵形式为

这表示单位四元数的矩阵形式为正交矩阵 (Orthogonal Matrix).

参考文献

  1. Krasjet. 四元数与三维旋转[OL]. https://github.com/Krasjet/quaternion
  2. Andrew J. Hanson. Visualizing Quaternions[M]. Elsevier. 2004.