Inertia Tensor(2)

물리 2012.02.19 17:19 Posted by 물리프로그래머
이번에는 이전 운동량, 각운동량, 질량중심의 내용을 바탕으로 Inertia Tensor에 대해 설명 드리겠습니다.

1) 힘F(Input)에 대한 질점(Particle)의 변화량(Output)
아래의 그림처럼 m1에 F라는 힘을 가하면,  m1의 운동량(각운동량)이 변하게 됩니다.
 

 

 

식으로 나타내면 아래와 같고, 결과적으로 가속도가 변하게 됩니다.

 



2) 힘F(Input)에 대한 물체(RigidBody)의 변화량(Output)
아래의 그림은 m1과 m2가 붙어있은 경우 입니다.
힘 F를 가하면, 붙어있기 때문에 m1과 m2의 운동량(각운동량)이 모두 변하게 된다.

  

식으로 나타내면 아래와 같습니다.



v2는 상대운동을 함으로, 식을 아래와 같이 바꿀 수 있습니다.


그러나 역시, 식은 하나인데 변수는 2개입니다.  이식으론  m1, m2의 변화량을 구할 수 없습니다.
질점(Particle)과 달리 물체(RigidBody)의 변화량은,  운동량 보존법칙 하나만으론 해석할 수 없습니다.

다음은 각운동량 법칙을 이용해서 m1, m2의 변화량을 해석해 보겠습니다.
아래는 p점을 기준으로 각운동량의 변화량을 측정한 그림입니다. 


식을로 나타내면, 아래와 같습니다.



v2는 상대운동을 함으로, 식을 아래와 같이 바꿀 수 있습니다.


역시, 변수가 두개이기 때문에 각운동량 보존법칙 하나만으로는 문제는 풀 수 없습니다.
그러나 앞의 운동량 보존법칙과 각운동량 보존법칙을 연립하면, 식이 2개 변수가 2개 이기 때문에 변화량을 구할 수 있습니다.  정리하면 아래와 같습니다.


그러나 위의 식은 너무 복잡합니다. 지금은 m1, m2두개의 물체가 있을때 지만,  아래의 그림과 같은 상황이 되면 식을 풀기가 어렵습니다.

 


3) Center of Mass의 특성을 이용해, 물체(RigidBody)의 운동량(각운동량)해석을 간소화함
아래의 그림처럼 물체(RigidBody)의 속도는 기준점의 속도(Linear Velocity)와 기준점에 대한 상대속도(Angular Velocity)의 합으로 나타낼 수 있습니다.


기준점을 Center of Mass로 잡으면 , 운동량 보존법칙은 아래 식과 같습니다.
r은 Center of Mass로 부터의 거리, w는 각속도, Vc는 Center of Mass의 속도를 나타냅니다.
 



외부힘에 대한, 운동량의 변화량을 식으로 나타내면 아래와 같습니다.


마찬가지로, 각운동량의 측정지점을 아래 그림과 같이 Center of Mass로 합니다.


각운동량을 식으로 나타내면 아래와 같습니다.


F힘이 위치 PF위치에서 작용했을때, 각운동량의 변화량을 식으로 나타내면 아래와 같습니다.



여기서 식을 아래와 같이 정리 할 수 있습니다.



그리고 Inertia Tensor를 아래와 같이 정의 하게 됩니다.



Inertia Tensor를 이용해 운동량을 해석하면 아래와 같습니다.



4) 박스의 Inertai Tensor
예로 박스의 Inertia Tensor를 구해 보겠습니다.

Inertia Tensor는 아래식과 같습니다.


식을 x, y, z순으로 적분하면 아래과 같이 됩니다.



최종 Inertia Tensor는 아래와 같이 됩니다.



5) Inertia Tensor의 대각화
Bullet이나 대부분의 물리엔진은 Inertia Tensor를 행렬이 아닌 백터의 형태로 가지고 있습니다.
이는 Inertia Tensor의 3x3행열을 대각화 시킨 것 입니다.
박스, 구, 실린더, 캡슐등의 Inertia Tensor는기본적으로 대각화가 되어 있습니다. 위의 박스의 Inertia Tensor도 대각화 되어 있는 걸 확인하실 수 있습니다. (대각화를 구하는 방법은 따로 언급하지 않겠습니다.)
대각화된 Inertia Tensor는 아래와 같은 특징을 가집니다.


Inertia Tensor가 대각화 됬을 경우, 운동량식을  정리하면 아래와 같습니다.



이상으로 Inertia Tensor에 대한 설명을 마치겠습니다.

신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'물리' 카테고리의 다른 글

Inertia Tensor(2)  (0) 2012.02.19
Inertia Tensor(1)  (0) 2012.02.13
RigidBody의 Restitution, Friction, Damping  (2) 2012.02.06
[Bullet Physics] RigidBody 만들기  (2) 2012.01.05
[Bullet Physics] Bullet 물리엔진의 설치  (2) 2011.12.22


 

티스토리 툴바