This topic is now archived and is closed to further replies.


inertia tensor question

Recommended Posts

russian-bear    122
Lets asume i have a rigid body represented as a solid rectangle with principal moments of inertia Ip = [(Ixx,0,0) (0,Iyy,0) (0,0,Izz)]. A local orthogonal coordinate frame ''R'' is asociated with the body. The orientation of my rigid body in world coordinates is represented by a rotation quaternion and a origin. I understand the formula I = R*Ip*R'' where R is the orthogonal coordinate frame ant I is the inertia tensor in world coordinate frame. But how do i calculate a inertia tensor in local coordinate frame? Isnt ''Ip'' the inertia tensor in local frame?

Share this post

Link to post
Share on other sites
oliii    2196
You inverted everything As far as I am concerned, I tranform the local inertia tensor to world coordinates, to apply contact forces and external forces from the world.

If you do have an orientation within the rigid body (like the rigid body is oriented some way, and the rectangle another within the rigid body), then I guess

I = R * Ip * R''

then to convert the rigid body inertia to world coordinates, you apply the same formula, but using the rotation quaternion on top of it.

Matrix S = Quaternion

Iworld = S * I * S''

So I is relative to the rigid body, Iworld is relative to the world, and Ip is relative to the rectangle.

to convert the Iworld back to the rigid body orientation,

Iworld = S * I * S''

=> IWorld * S = S * I * S'' * S

=> Iworld * S =S * I * Identity

=> Iworld * S = S * I

=> S'' * Iworld * S = S'' * S * I

=> S'' * Iworld * S = I

and you do the same to get Ip

Share this post

Link to post
Share on other sites