원문: 2005, Joel L. Weiner and George.R Wilkens, Quaternions and Rotations in E4
필요한 개념: 벡터공간, 내적, 외적, 오일러 공식, 선형변환.
(환(ring), 벡터 공간의 합, 불변부분공간, 직교여공간은 사용될 때에 주석으로 간단하게 설명)
논문의 순서는 다음과 같다. 여기서는 3번의 주제를 다룬다. 4,5는 추후 다룰 예정.
- Introduction
- 내적(inner product)을 포함한 사원수환(Quaternion algebra) H의 성질 정리
- 단위사원수(unit Quaternion) p,q로 회전변환 Cp,q:H⟶H 정의 및 3차원 공간에서의 회전변환 성질 정리
- 상미분방정식에서의 활용
- E4의 직교변환에서 변하지 않는 2차원 불변부분공간(2-dimensional subspace) 찾기
실제 사용하는 법 링크: 예시
들어가기 전에 오일러 회전의 문제점부터 짚고 가자.
짐벌 락(gimbal lock) 현상이란?
(이미지: By Drummyfish - Own work, CC0, 위키백과)

회전한다고 하면 흔히 x,y,z축 기준으로 회전하는 것을 생각할 것이다.
이 때 회전축을 짐벌이라고 한다.
문제는 회전하다보면 회전축 자체도 같이 회전하므로 회전축끼리 일치하게 되어
이를 풀어주지 않으면 원하는 회전을 못 시키게 된다는 것이다. (위 이미지 참고)
따라서 회전축끼리 묶이는 짐벌락 현상이 일어나면 회전할 때 최단거리로 움직이지 않고 이상한 모양으로 움직인다.
이 문제는 3D 그래픽 디자인 뿐만 아니라 항공기 등을 운항할 때 큰 문제가 될 수 있다.
이를 해결하려면 짐벌에 의존하지 않는 회전을 해야한다. 이를 위해선 3차원에 고정된 축이 아닌 새로운 축을 잡기 위해
차원을 하나 높일 필요가 있으며, 가장 적합한 것이 사원수를 활용한 회전이다.
R-선형변환*: H 에서의 왼쪽 및 오른쪽 곱으로 정의된 함수
q를 사원수라 하자. 그러면 두 선형변환 함수 Lq:H⟶H,Rq:H⟶H를 다음과 같이 정의할 수 있다.
Lq(x)=qx,Rq(x)=xq
q를 단위사원수라고 하면 Lq,Rq는 H 직교 변환(orthogonal transformation)임을 알 수 있다. 이 사실이 왜 중요하냐면 직교 변환은 내적을 보존하는 변환이기 때문이다. 내적을 보존하는 변환은 길이와 각도를 보존하므로 회전변환이 이와 관련이 있다. 이를 다음의 식을 통해 간단히 보일 수 있다.(이전 포스트에서 보였던 식을 기억하자.)
|Lq(x)|=|qx|=|q||x|=|x|
단위 사원수 p, q에 대해 함수(mapping) Cp,q:H⟶H를 아래와 같이 함수의 합성으로 정의하면, 순서를 바꿔 합성해도 같으며 직교 변환임을 쉽게 알 수 있다.
Cp,q=Lp∘Rq=Rq∘Lp
5번째 주제에서 사용하게 될 간단한 공식이다. 성립은 함수식에 대입해보면 간단히 보일 수 있다.
Cp1,q1∘Cp2,q2=Cp1p2,q1q2
*선형변환은 덧셈, 상수배 연산을 유지하는 함수이다.
E3에서의 사원수(Quaternion)를 이용한 회전변환
이제 본격적으로 단위사원수 q에 대한 선형변환 Cq,¯q 에 대해서 살펴보자. 이것을 간단하게 C라고 할 것이다.
앞서서 정리했듯 순단위사원수u에 대해 q=euθ 라고 쓸 수 있다. 그러면
C(x)=qx¯q=euθxe−uθ
이다. C(1)=q1¯q=q¯q1=11=1 이므로 스칼라 사원수인 1은 보존하는 것을 알 수 있다. 즉 E3에 대응되는 순사원수(q0=0인 사원수)만 직교변환되므로 선형변환 C를 E3에 국한된 선형변환이라고 할 수 있다. u=→u∈E3임을 주목하자.
드디어 회전변환에 대한 정리는 다음과 같다.
Proposition1. 만약 q이 단위사원수라면, 순단위사원수 u와 실수 스칼라 θ가 존재하여 q=euθ이며, C(x)=qx¯q으로 정의된 선형변환 C:E3⟶E3 은 u에 수직인 평면을 기준으로 2θ 만큼 회전하는 변환이다.
Proof. 앞의 포스팅에서 q=euθ임은 오일러 공식으로 간단하게 이미 보였다.
ddθeuθ=−1sinθ+ucosθ=ueuθ=euθu
이므로 u=→u 은 euθ 와 곱셈에서 교환가능하다.(사원수 곱은 교환법칙이 안된다.)
이를 통해 C(→u)=euθue−uθ=→u 임을 관찰할 수 있다.
그러므로 C는 u=→u으로 생성(span)되는 부분공간(subspace)** L을 고정하고 움직이는 변환을 알 수 있다.
쉽게 말하면 →u를 방향벡터로 하고 원점을 지나는 직선 L은 선형변환 C에 의해 변하지 않으므로 축의 역할임을 알 수 있다.
(선형변환에서 배운 eigenvector와 유사한 역할을 하고 있다.여기서는 심지어 길이도 변하지 않는다.)
그러므로 직교여공간***(orthogonal complement)인 L⊥⊂E3 또한 잘 정의된다.
v=→v를 L⊥ 위의 단위벡터(순단위사원수)라고 하고, w=uv=→u×→v라고 하자. (사원수 곱임을 기억하자)
또한, 앞의 포스팅에서 u,v은 서로 수직인 순단위사원수이므로 uv=−vu 임을 보였다.
따라서 등식 ve−uθ=euθv 을 만족시킨다.
(euθ=1cosθ+usinθ을 대입해보면 알 수 있다.)
그러므로,
C(→v)=euθve−uθ =e2uθv =cos(2θ)→v+sin(2θ)→w
이다.
다시 말해 이것은 u을 축으로 하고 u와 수직인 L⊥ 공간(서로 수직인 →v,→w 벡터를 기저로 갖는 공간) 을 2θ만큼 회전시킨 변환임을 알 수 있다.

**부분공간은 벡터 공간의 부분집합으로 벡터의 합, 스칼라배를 했을 때 다시 그 부분공간에 존재하면 (연산에 대해 닫혀있는 경우) 부분공간이라고 한다. 예를 들면 평면 벡터공간의 부분공간에는 직선이 있다. 직선 위의 어떤 벡터를 더하거나 실수배하든지 다시 직선 위의 점이 되기 때문이다.
***어떤 부분공간의 수직인 벡터들로 이루어진 부분공간을 의미한다. 예를 들면 직선의 직교여공간은 그 직선의 방향벡터를 법선벡터로 하는 평면이 된다.
'수학 > 수학 논문 정리' 카테고리의 다른 글
Quaternion으로 E3 공간에서 회전 예시 (0) | 2020.11.15 |
---|---|
A Fresh Approach to the Singular Value Decomposition 마지막 (0) | 2020.11.12 |
A Fresh Approach to the Singular Value Decomposition 두 번째 (0) | 2020.11.11 |
A Fresh Approach to the Singular Value Decomposition 첫 번째 (0) | 2020.11.11 |
Quaternions and Rotations in E4 첫 번째 (2) | 2020.11.08 |