공학/동역학

[동역학] 오일러 파라미터(Euler parameters) - (2)

슬기나무 2022. 1. 13. 23:02
반응형

이번 포스팅에서는 이전 포스팅에서 못다한 이야기를 해보겠습니다.

 

이전 포스팅을 확인하시려면 아래를 눌러주세요.

 

[동역학] 오일러 파라미터(Euler parameters) - (1)

이번 포스팅에서는 오일러 파라미터에 대해 알아보겠습니다. (참고문헌: Computer-aided analysis of mechanical systems, Parviz E. Nikravesh)  오일러 파라미터(Euler parameters)란? 3차원 공간에서 구속되지..

study2give.tistory.com

 오일러 파라미터를 활용하여 좌표변환행렬 구하기

이전 포스팅에서 아래와 같은 결과를 도출했었습니다.

 

$$\overrightarrow{p}^T\overrightarrow{p}-1=0$$

 

이 때, $\overrightarrow{p}=[e_0, e_1, e_2, e_3]^T$ 입니다.

 

이걸 조금 바꿔볼건데요.

 

$$\overrightarrow{p}\overrightarrow{p}^T=\begin{bmatrix}e_0 \\e_1\\e_2\\e_3 \end{bmatrix}\begin{bmatrix}e_0 & e_1 & e_2 & e_3 \end{bmatrix}$$

$$=\begin{bmatrix}e_0^2 & e_0e^T \\e_0e & ee^T \end{bmatrix}$$

 

여기서 $e_0$는 스칼라이고, $e=\left[e_1,e_2,e_3\right]$인 벡터입니다.

 

그리고 

 

$$e\times e=\widetilde{e}e=0$$

 

임을 알 수 있고,

 

$$\widetilde{e}\widetilde{e}=ee^T-e^TeI$$

$$=ee^T-\left(1-e_0^2\right)I$$

 

위 관계에서 우리는 두 matrix $G$와 $L$을 정의할 수 있습니다.

 

$$G=\begin{bmatrix}-e_1 & e_0 & -e_3 & e_2 \\-e_2 & e_3 & e_0 & -e_1 \\ -e_3 & -e_2 & e_1 & e_0 \end{bmatrix}$$

$$=\left[-e, \widetilde{e}+e_0I\right]$$

 

$$L=\begin{bmatrix}-e_1 & e_0 & e_3 & -e_2 \\-e_2 & -e_3 & e_0 & e_1 \\ -e_3 & e_2 & -e_1 & e_0 \end{bmatrix}$$

$$=\left[-e, -\widetilde{e}+e_0I\right]$$

 

여기서, $G$와 $L$ matrix는 $p$와 orthogonal함을 알 수 있습니다. 즉,

 

$$Gp=\left[-e,\widetilde{e}+e_0 I\right]\left[e_0, e^T\right]^T$$

$$=\left[-e_0e+\widetilde{e}e+e_0e\right]=0$$

 

같은 방법으로 $L$에 대해서도 확인해보면 마찬가지로

 

$$Lp=\left[-e_0e-\widetilde{e}e+e_0e\right]=0$$

 

임을 알 수 있습니다.

 

그리고, matrlx $G$와 $L$의 각 행 또한 orthogonal합니다. 따라서

 

$$GG^T=I$$

$$LL^T=I$$

$$\left(GG^T\right)^T=G^TG=I^T=I$$

$$\left(LL^T\right)^T=L^TL=I^T=I$$

 

가 성립합니다.

 

그런데 여기서 앞선 포스팅에서 말씀드렸던

 

$$A=\left(2e_0^2-1)\right)I+2\left(ee^T+e_0\widetilde{e}\right)$$를 $G$와 $L$로 표현할 수 있습니다.

 

$$GL^T=\left[-e, \widetilde{e}+e_0I\right]\begin{bmatrix}-e^T\\e+e_0I \end{bmatrix}$$

$$=ee^T+\left(\widetilde{e}+e_0I\right)\left(\widetilde{e}+e_0I\right)$$

$$=\left(2e_0^2-1\right)I+2\left(ee^T+e_0\widetilde{e}\right)$$

 

즉,

 

$$A=GL^T$$

 

의 결과가 도출됩니다.

(사실 여기서 $G$와 $L^T$를 왜 곱해볼 생각을 했는지는 잘 모르겠습니다....)

 

그럼 속도, 가속도 분석을 위해 좌표변환행렬의 미분도 알아내야겠죠?

 

$$\dot{A}=\dot{G}L^T+G\dot{L}^T$$

 

인데, 여기서 우리는 이미 구해놓은 matrix를 이용해 연산을 해보면

 

$$G\dot{L}^T=\dot{G}L^T$$

 

임을 알 수 있습니다. 따라서

 

$$\dot{A}=2\dot{G}L^T$$

 

로 표현가능합니다.

 

두번 미분한 형태의 표현도 알아보면

 

$$\ddot{A}=2\dot{G}\dot{L}^T+2G\ddot{L}^T$$

 

여기서 또한 우리는 $\ddot{G}L^T=G\ddot{L}^T$임을 알 수 있기 때문에 아래와 같이 표현도 가능합니다.

 

$$\ddot{A} = 2\dot{G}\dot{L}^T+2\ddot{G}L^T$$

 

 

참고문헌이 있어 꾸역꾸역 따라서 공부를 해보기는 했지만...

 

matrix 연산이 너무 복잡하다보니 처음 유도해낸 사람의 의식의 흐름을 따라가기 힘드네요.

 

어찌됐든 오일러 파라미터를 이용한 좌표변환행렬과 그 미분표현에 대해 알아보았습니다.

 

잘못된 부분에 대한 지적은 언제나 환영하며, 더 자세한 설명이 가능하신 분은 댓글로 가르침 부탁드립니다!

반응형