MCP로 연결 →

계산 입력

공식

Show calculation steps (3)
  1. Conjugate of q1

    Conjugate of q1: 사원수 계산기

    Negate the vector (i, j, k) part of q1.

  2. Norm of q1

    Norm of q1: 사원수 계산기

    Magnitude of q1.

  3. Norm of q2

    Norm of q2: 사원수 계산기

    Magnitude of q2.

광고

결과

Quaternion Product q1 × q2
-60 + 12i + 30j + 24k
(w, x, y, z)
q1의 켤레 1, -2, -3, -4
q1의 노름 5.4772
q2의 노름 13.1909

사원수 계산기란?

사원수(quaternion)는 \(q = w + xi + yj + zk\) 형태로 표현하는 4차원 수입니다. 여기서 w는 스칼라(실수) 부분이고 (x, y, z)는 벡터(허수) 부분입니다. 사원수는 오일러 각에서 발생하는 짐벌 락(gimbal lock) 문제 없이 회전을 표현할 수 있어 3D 컴퓨터 그래픽스, 로보틱스, 항공우주, 물리학 등에서 널리 활용됩니다. 이 계산기는 두 사원수를 곱하고, 각 입력값의 노름과 첫 번째 사원수의 켤레까지 함께 보여 줍니다.

하나의 실수 성분과 세 개의 허수 축 성분으로 표현된 사원수
사원수는 스칼라 부분 w와 i, j, k 축 방향의 3차원 벡터 부분을 결합합니다.

사용 방법

두 사원수 q1과 q2 각각에 대해 네 개의 성분(w, x, y, z)을 입력하세요. 계산기는 해밀턴 곱 q1 × q2를 새로운 사원수로, 두 입력값의 크기(노름), 그리고 q1의 켤레를 반환합니다. 사원수 곱셈은 교환법칙이 성립하지 않습니다. 일반적으로 q1 × q2 ≠ q2 × q1이므로 곱하는 순서가 중요합니다.

공식 풀이

해밀턴 곱은 스칼라 부분과 벡터 부분을 결합합니다. 스칼라 결과는 w₁w₂에서 두 벡터 부분의 내적(dot product)을 뺀 값입니다. 벡터 결과는 w₁v₂ + w₂v₁에 외적(cross product) v₁ × v₂를 더한 값입니다. 노름은 유클리드 길이 \(\sqrt{w^{2}+x^{2}+y^{2}+z^{2}}\)이며, 켤레는 단순히 벡터 성분의 부호를 바꾼 것입니다: \(q^{*} = (w, -x, -y, -z)\).

$$\begin{gathered} q_1 q_2 = (w_1 w_2 - x_1 x_2 - y_1 y_2 - z_1 z_2) + (w_1 x_2 + x_1 w_2 + y_1 z_2 - z_1 y_2)\,i \\ + (w_1 y_2 - x_1 z_2 + y_1 w_2 + z_1 x_2)\,j + (w_1 z_2 + x_1 y_2 - y_1 x_2 + z_1 w_2)\,k \\[1.5em] \text{where}\quad \left\{ \begin{aligned} q_1 &= \text{w}_1 + \text{x}_1\,i + \text{y}_1\,j + \text{z}_1\,k \\ q_2 &= \text{w}_2 + \text{x}_2\,i + \text{y}_2\,j + \text{z}_2\,k \end{aligned} \right. \end{gathered}$$

$$q_1^{*} = \text{w}_1 - \text{x}_1\,i - \text{y}_1\,j - \text{z}_1\,k$$

$$\lVert q_1 \rVert = \sqrt{\text{w}_1^{2} + \text{x}_1^{2} + \text{y}_1^{2} + \text{z}_1^{2}}$$

$$\lVert q_2 \rVert = \sqrt{\text{w}_2^{2} + \text{x}_2^{2} + \text{y}_2^{2} + \text{z}_2^{2}}$$

광고
해밀턴 곱을 스칼라 항과 벡터 항으로 분해한 다이어그램
해밀턴 곱은 스칼라 부분(내적)과 벡터 부분(외적과 스케일된 벡터)으로 나뉩니다.

계산 예시

q1 = (1, 2, 3, 4), q2 = (5, 6, 7, 8)이라고 하겠습니다. 스칼라 부분은 \(1\cdot5 - 2\cdot6 - 3\cdot7 - 4\cdot8 = 5 - 12 - 21 - 32 = -60\)입니다. i 부분은 \(1\cdot6 + 2\cdot5 + 3\cdot8 - 4\cdot7 = 6 + 10 + 24 - 28 = 12\)입니다. j 부분은 \(1\cdot7 - 2\cdot8 + 3\cdot5 + 4\cdot6 = 7 - 16 + 15 + 24 = 30\)입니다. k 부분은 \(1\cdot8 + 2\cdot7 - 3\cdot6 + 4\cdot5 = 8 + 14 - 18 + 20 = 24\)입니다. 따라서 \(q_1 \times q_2 = (-60, 12, 30, 24)\)가 됩니다.

자주 묻는 질문

사원수 곱셈은 교환법칙이 성립하나요? 아닙니다. 외적 항 때문에 q1 × q2는 일반적으로 q2 × q1과 다릅니다.

단위 사원수(unit quaternion)란 무엇인가요? 노름이 1인 사원수입니다. 단위 사원수는 3D 공간에서 순수한 회전을 나타냅니다.

벡터를 어떻게 회전시키나요? 벡터를 w = 0인 사원수로 두고 \(q \cdot v \cdot q^{*}\)를 계산하면 됩니다. 여기서 q는 회전을 인코딩한 단위 사원수입니다.

최종 업데이트: