从牛顿第二定律推出绕固定轴旋转的转动惯量,再用类似方法从牛顿第二定律推出绕固定点转动的惯性张量
角速度 ω \omega ω是一个三维向量,方向表示旋转轴,用右手定则代表旋转方向,长度代表旋转弧度的速度
线速度: v = ω × r v=\omega \times r v=ω×r ,其中 r r r代表旋转轴或旋转中心点到质点的垂直连线 r ⊥ ω r\perp \omega r⊥ω
角加速度为 α = d ω d t \alpha = \frac {d\omega} {dt} α=dtdω? ,加速度为 a = d v d t a = \frac {dv} {dt} a=dtdv?,可推出 a = α × r a=\alpha \times r a=α×r
牛顿第二定律 F = m a F=ma F=ma, m m m为质点质量
力矩: τ = r × F \tau=r\times F τ=r×F,可以相加
在旋转中,平动的力相当于旋转的力矩,平动的线加速度相当于角加速度,质量则代表平动的惯性,那么转动的惯性即为转动惯量
需要找到一个量乘以加速度为该质点所受总力矩
在固定转轴的旋转中,只有 F ⊥ r F\perp r F⊥r的分力有作用,故只考虑这种力
F = m a = m α × r τ = r × F = m ? ( r × α × r ) 因为 r ⊥ α ? , 则 r × α × r = ∣ ∣ r ∣ ∣ 2 α τ = m ∣ ∣ r ∣ ∣ 2 α \begin{align} F&=ma=m\alpha \times r \\ \tau&=r\times F=m\cdot(r\times\alpha\times r) \\ 因为&r\perp \alpha\ ,则r\times \alpha \times r=||r||^2\alpha \\ \tau &=m||r||^2\alpha \end{align} Fτ因为τ?=ma=mα×r=r×F=m?(r×α×r)r⊥α?,则r×α×r=∣∣r∣∣2α=m∣∣r∣∣2α??
将物体的每一个质点积分起来,则可定义转动惯量为
J
=
∫
∣
∣
r
∣
∣
2
d
m
J=\int||r||^2dm
J=∫∣∣r∣∣2dm,
τ
=
J
α
\tau=J\alpha
τ=Jα,与牛顿第二定律
F
=
m
a
F=ma
F=ma对应
物理模拟时可用力矩算出角速度变化量
对于任意刚体,施加在刚体上的力 F F F可以分解为重心到力作用点的方向 F 1 F_1 F1?和垂直于该方向的力 F 2 F_2 F2?,可以认为在这一瞬间,只有 F 1 F_1 F1?会移动该物体,没有旋转作用, F 2 F_2 F2?只对物体具有旋转作用
现在考虑旋转,故只考虑
F
2
F_2
F2?,假设
r
r
r为重心到力作用点连线,
m
m
m为该位置质点质量,
F
⊥
r
F\perp r
F⊥r
刚体最终的旋转由所有力矩加和决定,故对于单一的一个质点所对应的
r
r
r,不满足
r
⊥
α
r \perp \alpha
r⊥α
需要找到一个量乘以加速度为该刚体所受总力矩
F = m a = m α × r τ = r × F = m ? ( r × α × r ) \begin{align} F&=ma=m\alpha \times r \\ \tau&=r\times F=m\cdot(r\times\alpha\times r) \\ \end{align} Fτ?=ma=mα×r=r×F=m?(r×α×r)??
此时 r r r不垂直于 α \alpha α,则 ( r × α × r ) (r\times\alpha\times r) (r×α×r)需要中展开计算
r
×
α
×
r
=
[
r
2
α
3
?
r
3
α
2
r
3
α
1
?
r
1
α
3
r
1
α
2
?
r
2
α
1
]
×
[
r
1
r
2
r
3
]
=
[
r
3
2
α
1
?
r
1
r
3
α
3
?
r
1
r
2
α
2
+
r
2
2
α
1
r
3
2
α
2
?
r
1
r
2
α
1
?
r
2
r
3
α
3
+
r
1
2
α
2
r
2
2
α
3
?
r
2
r
3
α
2
?
r
1
r
3
α
1
+
r
1
2
α
3
]
=
[
r
2
2
+
r
3
2
?
r
1
r
2
?
r
1
r
3
?
r
1
r
2
r
1
2
+
r
3
2
?
r
2
r
3
?
r
1
r
3
?
r
2
r
3
r
1
2
+
r
2
2
]
?
[
α
1
α
2
α
3
]
=
I
α
r\times\alpha\times r= \left[\begin{matrix} r_2\alpha_3-r_3\alpha_2 \\ r_3\alpha_1-r_1\alpha_3 \\ r_1\alpha_2-r_2\alpha_1 \end{matrix}\right] \times \left[\begin{matrix} r_1 \\r_2 \\ r_3 \end{matrix}\right]= \left[\begin{matrix} r_3^2\alpha_1-r_1r_3\alpha_3-r_1r_2\alpha_2+r_2^2\alpha_1 \\ r_3^2\alpha_2-r_1r_2\alpha_1-r_2r_3\alpha_3+r_1^2\alpha_2 \\ r_2^2\alpha_3-r_2r_3\alpha_2-r_1r_3\alpha_1+r_1^2\alpha_3 \end{matrix}\right] \\ =\left[\begin{matrix} r_2^2+r_3^2 & -r_1r_2 & -r_1r_3 \\ -r_1r_2 & r_1^2+r_3^2 & -r_2r_3 \\ -r_1r_3 & -r_2r_3 & r_1^2+r_2^2 \\ \end{matrix}\right] \cdot \left[\begin{matrix} \alpha_1 \\ \alpha_2 \\ \alpha_3 \end{matrix}\right] = I\alpha
r×α×r=
?r2?α3??r3?α2?r3?α1??r1?α3?r1?α2??r2?α1??
?×
?r1?r2?r3??
?=
?r32?α1??r1?r3?α3??r1?r2?α2?+r22?α1?r32?α2??r1?r2?α1??r2?r3?α3?+r12?α2?r22?α3??r2?r3?α2??r1?r3?α1?+r12?α3??
?=
?r22?+r32??r1?r2??r1?r3???r1?r2?r12?+r32??r2?r3???r1?r3??r2?r3?r12?+r22??
??
?α1?α2?α3??
?=Iα
将每一个质点积分起来,可以得到惯性张量
令
I
=
∫
[
r
2
2
+
r
3
2
?
r
1
r
2
?
r
1
r
3
?
r
1
r
2
r
1
2
+
r
3
2
?
r
2
r
3
?
r
1
r
3
?
r
2
r
3
r
1
2
+
r
2
2
]
d
m
?为惯性张量
令I=\int\left[\begin{matrix} r_2^2+r_3^2 & -r_1r_2 & -r_1r_3 \\ -r_1r_2 & r_1^2+r_3^2 & -r_2r_3 \\ -r_1r_3 & -r_2r_3 & r_1^2+r_2^2 \\ \end{matrix}\right] dm \ 为惯性张量
令I=∫
?r22?+r32??r1?r2??r1?r3???r1?r2?r12?+r32??r2?r3???r1?r3??r2?r3?r12?+r22??
?dm?为惯性张量
则
τ
=
I
α
\tau = I\alpha
τ=Iα,与牛顿第二定律
F
=
m
a
F=ma
F=ma对应
令
r
=
(
x
?
y
?
z
)
T
r=(x\ y\ z)^T
r=(x?y?z)T,就可以得到惯性张量的经典定义
令
I
=
[
I
x
x
I
x
y
I
x
z
I
y
x
I
y
y
I
y
z
I
z
x
I
z
y
I
z
z
]
I
x
x
=
∫
(
y
2
+
z
2
)
d
m
I
x
y
=
I
y
x
=
?
∫
x
y
?
d
m
其余同理
令I=\left[\begin{matrix} I_{xx} & I_{xy} & I_{xz} \\ I_{yx} & I_{yy} & I_{yz} \\ I_{zx} & I_{zy} & I_{zz} \\ \end{matrix}\right] \\ I_{xx}=\int (y^2+z^2) dm \\ I_{xy}=I_{yx}=-\int xy\ dm \\ 其余同理
令I=
?Ixx?Iyx?Izx??Ixy?Iyy?Izy??Ixz?Iyz?Izz??
?Ixx?=∫(y2+z2)dmIxy?=Iyx?=?∫xy?dm其余同理
并且可以得到
I
=
∫
(
(
r
T
?
r
)
1
?
r
?
r
T
)
?
d
m
I=\int ((r^T\cdot r)1-r\cdot r^T)\ dm
I=∫((rT?r)1?r?rT)?dm,其中
1
1
1为单位矩阵
注意到 I I I会随着刚体的旋转而变化,不太好用,但是存在一个转换公式
假设物体最开始惯性张量为 I b o d y I_{body} Ibody?,在应用了旋转矩阵 R R R之后
惯性张量将变为
I
=
∫
(
(
r
T
R
T
?
R
r
)
1
?
R
r
?
r
T
R
T
)
?
d
m
=
∫
(
(
r
T
r
)
1
?
R
r
?
r
T
R
T
)
?
d
m
=
∫
(
(
r
T
r
)
R
?
1
?
R
T
?
R
r
?
r
T
R
T
)
?
d
m
=
R
(
∫
(
(
r
T
r
)
1
?
r
?
r
T
)
?
d
m
)
R
T
=
R
?
I
b
o
d
y
?
R
T
\begin{align} I&=\int((r^TR^T\cdot Rr)1-Rr\cdot r^TR^T) \ dm \\ &=\int((r^Tr)1-Rr\cdot r^TR^T) \ dm \\ &=\int((r^Tr)R\cdot 1\cdot R^T-Rr\cdot r^TR^T) \ dm \\ &=R\left(\int((r^Tr)1-r\cdot r^T) \ dm\right )R^T \\ &=R\ I_{body}\ R^T \end{align}
I?=∫((rTRT?Rr)1?Rr?rTRT)?dm=∫((rTr)1?Rr?rTRT)?dm=∫((rTr)R?1?RT?Rr?rTRT)?dm=R(∫((rTr)1?r?rT)?dm)RT=R?Ibody??RT??
如此就方便转换了,而惯性张量可以在刚体初始时计算出来
物理模拟时,可以统计作用在一个刚体上的力矩加和,再求惯性张量的逆,可以算出角速度变化量