벡터 계산기 쉽게 이해하기 — 개념과 원리
이 계산기는 두 3차원 벡터 a, b의 내적, 외적, 각 벡터의 크기, 사잇각, 그리고 a의 b 위로의 정사영 벡터를 구해 줍니다. 이 연산들은 벡터 대수의 핵심으로, 물리(일, 돌림힘, 자기력), 컴퓨터 그래픽(조명 계산, 면의 법선), 머신러닝(코사인 유사도), 공학 정역학 등에 두루 쓰입니다. 2차원 벡터는 z 성분을 0으로 두거나 비워 두시면 됩니다.
계산 방법
- 내적: a·b = a₁b₁ + a₂b₂ + a₃b₃
- 외적: a×b = (a₂b₃ − a₃b₂, a₃b₁ − a₁b₃, a₁b₂ − a₂b₁)
- 크기: |a| = √(a₁² + a₂² + a₃²)
- 사잇각: θ = arccos(a·b ÷ (|a||b|))이며 0°~180°로 표시합니다.
- a의 b 위로의 정사영: (a·b ÷ |b|²) × b
원리
기하적으로 a·b = |a||b| cos θ이며, 두 벡터가 얼마나 같은 방향을 향하는지를 나타냅니다. 이 식과 성분 공식을 함께 쓰면 사잇각을 구할 수 있습니다. 정사영은 a가 b 방향에 드리우는 그림자이며, b에 a·b ÷ |b|²를 곱해 얻습니다. 외적은 a와 b 모두에 수직인 벡터이고, 크기는 |a||b| sin θ로 두 벡터가 만드는 평행사변형의 넓이와 같으며, 방향은 오른손 법칙을 따릅니다.
예제 풀이
- 기본 입력값은 a = (1, 2, 3), b = (4, 5, 6)입니다.
- a·b = 4 + 10 + 18 = 32입니다.
- a×b = (2·6 − 3·5, 3·4 − 1·6, 1·5 − 2·4) = (−3, 6, −3)입니다.
- |a| = √14 = 3.741657387, |b| = √77 = 8.774964387입니다.
- cos θ = 32 ÷ (3.741657 × 8.774964) = 0.974632이므로 θ = 12.93315449°입니다.
- 정사영은 32 ÷ 77 = 0.415584를 (4, 5, 6)에 곱한 (1.662337662, 2.077922078, 2.493506494)입니다.
결과 해석
내적이 양수이면 사잇각이 예각, 0이면 수직, 음수이면 둔각입니다. 두 벡터가 평행하면 외적은 (0, 0, 0)입니다. 예제의 θ ≈ 12.9°는 a와 b가 거의 같은 방향이라는 뜻이고, |a×b| = √54 ≈ 7.35는 평행사변형의 넓이입니다. (−3, 6, −3)·a = −3 + 12 − 9 = 0이므로 외적이 a에 수직인 것도 확인할 수 있습니다.
흔한 실수
- 외적에 교환법칙이 성립한다고 보는 경우입니다. b×a = −(a×b)입니다.
- 스칼라 정사영(a·b ÷ |b|)과 여기서 보여 주는 정사영 벡터를 혼동하는 경우입니다.
- 위와 같은 외적이 3차원에서만 정의된다는 점을 잊는 경우입니다.
자주 묻는 질문
두 벡터가 수직인지 어떻게 확인하나요?
내적이 0이면 수직입니다. (1, 0, 0)·(0, 3, 0) = 0이 그 예입니다.
코사인 유사도란 무엇인가요?
a·b ÷ (|a||b|), 즉 사잇각의 코사인 값으로 데이터 벡터를 비교할 때 자주 씁니다. 기본값에서는 0.9746입니다.
a와 b를 포함하는 평면에 수직인 벡터는 어떻게 구하나요?
a×b를 구하면 됩니다. 이 벡터가 두 벡터가 만드는 평면의 법선입니다.
출처: Gilbert Strang, Introduction to Linear Algebra, Chapter 1 (vectors, lengths and dot products) · James Stewart, Calculus: Early Transcendentals, sections on the dot product and the cross product