https://ug98gs7tbw.feishu.cn/docs/doccnXl1Z5Xc1MFUohDJ0Umwpfg#
四元数求导(四元数/时间)
- 四元数关于时间求导的推导 本质:
求导的定义是函数值的微增量关于自变量的微增量的极限。表示旋转的单位四元数作差后,其不再是单位四元数,也就不是旋转四元数了。单位四元数作差后,得到是被减四元数所在空间的切空间,得到的增量是切空间的微增量,因为是旋转,所以当取极限的时候,切空间的微增量就是函数的微增量,也即四元数对应的导数。
- 方式1
假设任何一个旋转,一定可以写成绕一个轴旋转若干角度的形式。则四元数可以写作
q=[cos(2θ),nsin(2θ)]
其中 θ是旋转角度, ω是旋转轴。我们假设 $ \overrightarrow n $是关于时间的函数,则四元数可以写成
q(t)=[cos(2wt),wwsin(2wt)].............................................(0)
为了书写方便,不带箭头为相应向量的模长。因为瞬时旋转中,ω的旋转轴和大小我们认为是不变的,则
q′(t)=[−2wsin(2wt),ww.2wcos(2wt)]
但常见四元数对时间的导数形式不一样,稍微调整一下:
q′(t)=[−2wsin(2wt),ww.2wcos(2wt)].............................................(1)
到此,其实四元数关于时间的导数就已经求解完毕。
设 两个四元数分别为q1=[a1,v1],q2=[a2,v2]..............................(2)
可得四元数乘法:
q1⨂q2=[a1a2−v1.v2,a1v2+a2v1+v1v2]............................(3)
对比式(1)(3),通过适凑的方式,可得,
v1=2wa1=0v2=ww.sin(2wt)a2=cos(2wt)..............................(4)
即:
q1=[0,2w],q2=[cos(2wt),ww.sin(2wt)]..............................(5)
所以可得,
q′(t)=[0,2w]⨂[cos(2wt),ww.sin(2wt)]=21[0,w]⨂q(t)
该方法通适凑的方式,巧妙的将四元数求导转化对应到四元数乘法,最后转化到四元数与自身导数的数值关系。