罗德里格旋转公式、定轴旋转矩阵

                     

贡献者: addis

预备知识 三维旋转矩阵,圆周运动的速度矢量叉乘

  1三维空间中,某点 r=(x,y,z)T 以单位矢量 A^=(Ax,Ay,Az)T 为轴按右手定则转动 θ 角的得到的点 r=(x,y,z)T 可用罗德里格斯旋转公式(Rodrigues' rotation formula)计算:

(1)r=rcosθ+A^×rsinθ+A^(A^r)(1cosθ) ,
其中 表示点乘。令该旋转的三维旋转矩阵 Rθ,则
(2)r=Rθr .
式 1 可得
(3)Rθ=(aAx2+caAxAysAzaAxAz+sAyaAyAx+sAzaAy2+caAyAzsAxaAzAxsAyaAzAy+sAxaAz2+c) .
其中
(4)c=cosθ ,s=sinθ ,a=1cosθ .
另外也可以用四元数表示该矩阵。

1. 推导

   推导的思路是用 A^ , rθ 三个已知量经过数乘,内积叉乘三种运算,表示出旋转后的矢量 r,再拆成三个分量,即可得到线性变换,进而写出矩阵。注意该思路与推导平面旋转矩阵的思路不一样。

图
图 1:定轴旋转矩阵的推导

   如图,r 绕单位矢量 A^ 旋转 θ 角后得到 rrA^ 方向投影得到的矢量为

(5)r3=(A^r)A^ ,
在与 A^ 垂直方向的分量为
(6)r1=rr3 .
为了构成一组正交基底,令
(7)r2=A^×r1 ,
r2 相当于 r1A^ 旋转 90。现在有了正交的 r1 , r2 就可以表示出 r1A^ 旋转 θ 角后的结果
(8)rr3=r1cosθ+r2sinθ ,
(9)r=r1cosθ+r2sinθ+r3 .
式 5 式 6 式 7 代入式 9 ,即可求出式 1 。把结果写成分量的形式,化简可得到式 2

2. 由旋转矩阵推导出匀速圆周运动的线速度

   我们可以用旋转矩阵得到 v=ω×r式 5 ),这也验证了旋转矩阵的正确性。

   在无穷小的时间 t 内,点 P 绕轴转过 θ 角,则 θ=ωt0,此时有 sinθθcosθ1。旋转矩阵变为

(10)Rθ=(1AzθAyθAzθ1AxθAyθAxθ1) .
下面 Rθ 乘以某点的列矢量,得到变换后的坐标,再减掉变换前的坐标,得位移矢量 s
(11)s=vt=(1AzθAyθAzθ1AxθAyθAxθ1)(xyz)I(xyz)=θ(0AzAyAz0AxAyAx0)(xyz)=θA^×r=(ωt)×r .
两边除以 t,得 v=ω×r。另见 “旋转矩阵的导数” 的 习题 1


1. ^ 参考 Wikipedia 相关页面

                     

© 小时科技 保留一切权利