四元数系列 - 1 复数

复数的基本定义与性质.

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

复数 (Complex Number) 与二维旋转的关系, 四元数 (Quaternion) 与三维旋转的关系, 二者非常相似, 因此有必要首先就前者进行讨论.

1 定义

定义形如 (其中 ) 的数叫做复数, 其中 称为虚数单位, 称为这个复数的实部 (Real Part), 称为这个复数的虚部 (Imaginary Part). 全体复数的集合叫做复数集, 记作 .

复数 即为关于 (Basis) 线性组合, 因此可以用向量表示为:

进一步可以在复平面中表示为一个点. 复平面中, 横坐标 代表复数的实部, 纵坐标 表示复数的虚部.

2 性质

2.1 复数乘法

对于两个复数 , , 它们的乘积可通过乘法分配律来计算:

仔细观察可以发现, 复数相乘的结果也可以是一个矩阵与向量相乘的结果:

右侧的 是向量形式表示的 , 而左侧的 则定义为 矩阵形式, 这里记为 .

进一步, 若将复数乘法中的复数看作一种变换, 复数乘法便可在矩阵形式下转化为矩阵乘法.

注意, 复数乘法是满足交换律的. 容易验证, 以上矩阵与向量相乘的结果也可以写为:

在矩阵形式下, 两个复数的乘积 所代表的变换同样满足交换律:

因此, 我们可以将复数 与矩阵 建立等价关系. 进一步, 得到一些特殊复数的矩阵形式:

可以验证

即使在矩阵形式下, 也是等价的.

2.2 复数加减法与标量乘法

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

可以发现, 复数的矩阵形式在加减运算时也是成立的:

复数的标量乘法遵循交换律, 对任意标量 ,

进而可以得到更一般的形式:

2.3 复数的模长与共轭

对于复数 , 复数的模长 (Magnitude) 定义为

复数的共轭定义为

注意到

因此可以通过与共轭乘积的方式来计算复数的模长.

对于矩阵形式的复数 , 其行列式恰好也等于复数的模长的平方:

其转置也恰好对应复数共轭的矩阵形式:

进一步还能发现

3 复数乘法与二维旋转

对于一个复数 , 既然复数乘法等价于矩阵形式 所作出的变换, 那这种变换有什么更直观的几何意义呢?

将矩阵做变形

在复平面中, 复数模长为 , 若将复数与实数轴正方向的夹角记为 , 则恰有

因此原矩阵可变形为

原矩阵变形为两个矩阵的复合, 左边的 为缩放矩阵, 右边的 便是我们熟悉的二维旋转矩阵.

因此复数的乘法实际上是旋转与缩放变换的复合. 一个复数 与任意复数 相乘, 都会将 逆时针旋转 角度, 并将其缩放 倍. 这便是复数乘法所代表的几何意义.

注意, 这里的旋转矩阵 对应的复数形式为 .

根据欧拉公式 (Euler's Formula)

定义 , 可以将复数表示为极坐标形式

这样便可以通过一组缩放因子 和旋转角度 来定义一个复数, 而且更直观地体现了其旋转与缩放的性质.

因此, 若将平面中的向量 旋转 角度得到 , 有三种等价的旋转公式.

  1. 直接通过旋转矩阵进行变换

  2. 将向量看作一个复数 , 使用复数相乘

  3. 将向量看作一个复数 , 使用极坐标形式的复数相乘

参考文献

  1. Krasjet. 四元数与三维旋转. https://github.com/Krasjet/quaternion
  2. invo. 复数的矩阵表示. https://www.cnblogs.com/invo/p/18243532