b系:body坐标系
Cnb:从b系 转换到n系
Cbn:从n系 转换到b系
四元数q=[w,x,y,z]
矢量vb可以直接利用四元数将其在n系中表示为vn. 首先定义一个四元数vb′,它的虚部等于vb的相应分量,标量分量为0,即:
vb=xi+yj+zk
vb′=0+xi+yj+zk=[0 x y z]
则vn′可以表示为:
vn′=qvb′q∗
其中q∗=[w,−x,−y,−z],为q的复共轭.
vn′可以写成矩阵形式:
vn′=[000C]vb′(1)
其中
C=⎡⎣⎢⎢(w2+x2−y2−z2)2(xy+wz)2(xz−wy)2(xy−wz)(w2−x2+y2−z2)2(yz+wx)2(xz+wy)2(yz−wx)(w2−x2−y2+z2)⎤⎦⎥⎥
若满足|q|=1,则C可以进一步简化为:
C=⎡⎣⎢⎢(1−2y2−2z2)2(xy+wz)2(xz−wy)2(xy−wz)(1−2x2−2z2)2(yz+wx)2(xz+wy)2(yz−wx)(1−2x2−2y2)⎤⎦⎥⎥
(1)式等价为vn=Cvb,即
Cnb=C
根据vb′=q∗vn′q,类似可得vb=CTvn,即
Cbn=CT
CT=⎡⎣⎢⎢(1−2y2−2z2)2(xy−wz)2(xz+wy)2(xy+wz)(1−2x2−2z2)2(yz−wx)2(xz−wy)2(yz+wx)(1−2x2−2y2)⎤⎦⎥⎥