定义
其中是虚根,满足
即这里使用了Hamilton规范。由此可以推导出
\ 实部,虚部的四元数就等价为普通实数。
实部,虚部的四元数称为纯四元数。对于纯四元数,常常只使用一个三维矢量表示。
加法
对应项直接相加即可
乘法
利用定义,两个四元数相乘,并合并相同虚根的对应项,可以定义四元数的乘法。
用矢量表示形式,上式可以简化为
四元数乘法类似于矩阵乘法,不满足交换律
但满足结合律和分配律
\ \ 四元数乘法可以进一步表示为矩阵和矢量的线性相乘,即
其中分别为四元数的左乘矩阵和右乘矩阵,定义为
其中代表的叉乘矩阵,即
根据结合律可以推导出
幺元
共轭
实部不变,对虚部取逆
\ \ 与自己的共轭相乘得到纯实数,即
模
\ 模长等于1()的四元数称为单位四元数。
逆
交换子
四元数的幂
四元数的幂定义为
若是一个实部为0,虚部为的纯四元数,并令,其中是单位矢量,则有循环模式
指数映射
若是纯四元数,记为,则根据指数映射的定义,上一节中的指数循环模式,以及三角函数的泰勒展开式,可得
即纯四元数的指数映射是一个单位四元数。
上式也可以看做欧拉公式的推广。类似的有
由此可知单位四元数的幂(其中)的计算方法
另外还有
\ 普通四元数的指数映射可以将实部和虚部分开处理,即
对数映射
设四元数是单位四元数,则可以定义对数映射
即单位四元数的对数映射是一个纯四元数。
其中,。
\ 普通四元数的对数映射同样按照分离实部和虚部的思路,有
单位四元数与旋转
定义
单位四元数可用于表示旋转。
设旋转的轴为且,旋转角度为,则该旋转可用四元数表示为
要用四元数对某个三维矢量进行旋转,首先将变为纯四元数,即
然后
可以证明上式的结果也是一个纯四元数,虚部对应旋转后的矢量。
从上式也可得出,与表示同一个旋转。
与轴角的关系
单位四元数与轴角可以通过指数映射和对数映射建立联系。
设某个旋转通过轴角表示为三维矢量,其中是单位矢量。则
需要注意的是,一般而言
仅当旋转轴相同时,等式才成立,且满足交换律。
\ 当有轴角是小量()时,存在如下关系:
其中
需要指出的是,以上小量关系是正交群SO(3)的内在关系,与旋转的表示形式无关,即无论使用四元数还是旋转矩阵来表示旋转,上述关系都存在。使用旋转矩阵表示时,四元数乘法就变为普通矩阵乘法,上面的Exp映射就是罗德里格斯(Rodrigues)变换:
与旋转矩阵的关系
根据
可得
以及一些常用性质
四元数的导数
对时间求导
在动力学系统中,用四元数表示某个物体的姿态(旋转量)时,四元数是时间的函数,则其关于时间的变化率(导数)为
其中是局部(Body)坐标系下物体的角速度,是一个轴角表示的三维矢量,带入上式计算时要先变为纯四元数。
如果角速度表示在全局(global)坐标系下,上式变为
四元数的乘积对时间求导满足二元运算求导法则,即
对四元数求导
对四元数求导可以利用矢量求导法则,比如