2019年11月12日 星期二

Global space 的轉動慣量

看到cyclone-physics
用下面的方式算出w(角速度)

I = R * I' * R-1
τ = I α
w = w + αΔt

I' 是Local space 的轉動慣量
(它是一個矩陣)
R 是物件當下的旋轉矩陣
(用來變換到Global space)

R-1是旋轉矩陣的逆
(用來變換到Local space)
 

衝量F Δt造成動量 ΔP的變化

Δt = ΔP = m ΔV
左右同除Δt,得到
F = m (ΔV / Δt) =m a

τ Δt造成角動量ΔL的變化

τ = R X F
τ Δt = R X Δt = ΔL = I Δw

Global space
旋轉中的物體,每個時間點 I 都在不停變化

但在Local space
I' 是定值

τ' Δt = I' Δw
左右同除Δt,得到
τ' = I' α'

Global space的轉動慣量

τ 是Global space 的力矩
α 是Global space 的角加速度

透過座標變換得到
Local 和 Global的關系
τ' = R-1 * τ
α' = R-1 * α
代入下式
τ' = I' α'

可以得到
(R-1 * τ) = I' * (R-1 * α)

左右同乘R
R * (R-1 * τ) = R * I' * (R-1* α)
τ = R * I' * R-1 * α
τ = I * α

可知
I = R * I' * R-1
是Globalspace 的轉動慣量

計算w的方法

使用
τ = α
w = w + αΔt
如果τ = | 0,0,0 |Tα 也會是 | 0,0,0 |T
那麼 w就不會改變

如果改用
L= L+ΔL
L = I w
只要有初始動量,就算之後ΔL = | 0,0,0 |Tw還是會不停的改變

備註:

I = R * I' * R-1 是在Ben的教學裡看到的

沒有留言:

張貼留言