벡터 계산기(내적・외적・크기・단위벡터・이루는 각)

2차원・3차원 벡터를 입력하면 내적(스칼라곱)・외적(벡터곱)・크기(노름)・단위벡터・두 벡터가 이루는 각을 자동으로 계산해주는 무료 벡터 계산 도구입니다.

벡터 계산기로 할 수 있는 것

두 벡터의 성분을 넣기만 하면 이 도구가 내적(도트 곱)·외적(크로스 곱)·각각의 크기·단위 벡터·두 벡터가 이루는 각을 한 번에 계산합니다. 2차원과 3차원을 전환할 수 있으며, 2차원을 고르면 외적 칸은 비어 있습니다. 외적은 3차원에서만 정의되는 연산이기 때문입니다. 때때로 「2차원 외적」이라 불리는 ax·by − ay·bx는 사실 스칼라로, 3차원 외적의 z 성분만 꺼낸 값이지 벡터가 아닙니다.

모든 계산은 성분의 사칙연산에 제곱근과 역코사인을 더한 것으로 끝납니다. 내적은 a·b = axbx + ayby + azbz, 크기는 √(x² + y² + z²), 단위 벡터는 각 성분을 크기로 나눈 것이며, 이루는 각은 cos θ = a·b ÷(|a||b|)에 역코사인을 취해 얻습니다. 영벡터는 방향을 갖지 않으므로 단위 벡터도 이루는 각도 만들 수 없으며, 이 경우 도구는 오해를 부를 숫자를 돌려주는 대신 오류로 알려 줍니다.

벡터 계산기 사용법

  1. 차원을 고릅니다 2차원인지 3차원인지를 먼저 정합니다. 3차원을 고르면 z 성분 입력란이 나타나고 외적도 계산됩니다.
  2. 벡터 a와 b의 성분을 넣습니다 x·y(3차원이면 z까지)의 각 성분을 입력합니다. 음수와 소수도 그대로 다룰 수 있습니다.
  3. 결과를 읽습니다 내적·외적·크기·단위 벡터·이루는 각이 함께 표시됩니다. 2차원에서는 외적 칸에 3차원이 필요하다는 안내가 나옵니다.
  4. 그림으로 방향을 확인합니다 2차원에서는 벡터 그림이 그려집니다. 숫자만으로는 판단하기 어려운 방향과 각도의 관계를 눈으로 확인할 수 있습니다.

더 잘 활용하기 위한 팁

  • 2차원・3차원은 탭으로 전환할 수 있습니다. 3차원을 선택하면 z 성분 입력란과 외적 결과가 표시됩니다.
  • 내적이 0일 때 두 벡터는 직교(수직)합니다. 부호가 양수면 예각, 음수면 둔각 관계입니다.
  • 외적의 결과 벡터는 입력한 두 벡터 모두에 수직인 방향이 됩니다(오른손 좌표계).
  • 단위벡터는 원래 벡터를 크기(노름)로 나눈, 길이가 1이고 방향만을 나타내는 벡터입니다. 방향만 다루고 싶을 때 사용합니다.
  • 영벡터(모든 성분이 0)를 입력하면 크기가 0이 되어 단위벡터와 이루는 각을 계산할 수 없습니다.

벡터 계산이 필요한 장면

고등학교·대학 문제의 답 맞추기

내적이나 이루는 각은 부호 하나, 나눗셈 한 번만 틀려도 답이 달라집니다. 손계산 결과를 그대로 대조할 수 있습니다.

3D 그래픽스·게임 개발의 좌표 계산

면의 법선은 외적으로, 시선과 면이 향한 방향의 관계는 내적으로 구합니다. 셰이더를 디버깅하기 전에 여기서 숫자로 확인하는 편이 빠릅니다.

물리에서 힘의 분해와 일의 계산

일은 힘과 변위의 내적이고, 토크는 위치 벡터와 힘의 외적입니다. 방향만 필요할 때는 단위 벡터를 씁니다.

두 방향이 얼마나 일치하는지 재기

단위 벡터끼리의 내적은 그대로 cos θ가 됩니다. 기계학습에서 널리 쓰이는 코사인 유사도도 여기서 하는 계산과 같은 것입니다.

벡터 관련 용어

내적(도트 곱)
대응하는 성분끼리 곱해서 더한 값으로, 결과는 스칼라입니다. a·b = |a||b|cos θ가 성립하므로 값이 0이면 두 벡터는 서로 수직입니다.
외적(크로스 곱)
3차원에서만 정의되는 연산으로, 결과는 두 입력 벡터 모두에 수직인 벡터입니다. 크기는 두 벡터가 이루는 평행사변형의 넓이와 같고, 방향은 오른손 법칙으로 정해집니다.
크기(노름)
벡터의 길이로 √(x² + y² + z²)로 구합니다. 피타고라스 정리를 3차원으로 확장한 것입니다.
단위 벡터
크기를 1로 맞춘 벡터로, 크기를 버리고 방향만 남기고 싶을 때 씁니다. 각 성분을 크기로 나누어 만듭니다.
이루는 각
두 벡터 사이의 각도로 항상 0°에서 180° 사이에 들어갑니다. 내적을 두 크기의 곱으로 나눈 뒤 역코사인을 취해 구합니다.
영벡터
모든 성분이 0인 벡터입니다. 길이가 0이고 방향이 없으므로 단위 벡터도 이루는 각도 정의할 수 없습니다.

자주 묻는 질문

내적(스칼라곱)은 두 벡터로부터 하나의 수(스칼라)를 구하는 연산으로, 벡터의 유사도나 이루는 각 계산에 사용됩니다. 외적(벡터곱)은 두 벡터로부터 그 둘 모두에 수직인 새로운 벡터를 구하는 연산으로, 3차원에서만 정의됩니다.

외적의 결과가 "두 벡터에 수직인 방향"을 유일하게 결정할 수 있는 것은 3차원 특유의 성질이기 때문입니다. 2차원에서는 수직인 방향이 정해지지 않고, 4차원 이상에서는 수직인 방향이 무수히 존재하므로, 일반적인 외적은 3차원에서만 자연스럽게 정의됩니다.

cosθ = (a·b) / (|a||b|) 라는 공식을 사용합니다. 내적을 두 벡터 크기의 곱으로 나누면 cosθ를 구할 수 있고, 그 역코사인(arccos)을 계산하면 이루는 각 θ를 도(degree)나 라디안으로 구할 수 있습니다.

원래 벡터와 같은 방향을 가지며 크기(길이)가 정확히 1인 벡터입니다. 벡터를 크기로 나누어 구하며, 컴퓨터 그래픽스의 법선벡터나 물리학에서 방향만을 나타내고 싶을 때 자주 사용됩니다.

내적을 계산하여 그 값이 0이면 두 벡터는 직교(수직)합니다. 이 도구는 입력한 벡터의 내적을 자동으로 계산하므로, 그 값이 0인지 확인하기만 하면 됩니다.
툴군

여담이지만 ― 벡터는 해밀턴의 사원수에서 태어났다

오늘날 우리가 사용하는 "벡터"라는 개념과 표기법은, 19세기 아일랜드의 수학자 윌리엄 로원 해밀턴이 고안한 "사원수(쿼터니언)"에서 파생된 것입니다. 해밀턴은 3차원 회전을 표현하기 위해 4개의 수로 이루어진 사원수를 발명했는데, 그중 "순허수부"의 3개 성분이 훗날 벡터의 원형이 되었습니다.

사원수에서 벡터를 독립시켜 내적・외적이라는 현재의 형태로 정리한 사람은 미국의 물리학자 조사이아 윌러드 깁스와 영국의 기술자 올리버 헤비사이드입니다. 19세기 말, 이들은 물리학(특히 전자기학)의 계산을 간결하게 하기 위해 사원수의 복잡한 연산 규칙에서 필요한 부분만을 추려내어 오늘날의 벡터 해석 체계를 만들어냈습니다.

외적이 일반적으로 3차원 벡터에서만 정의되는 이유는, 외적의 결과가 "두 벡터에 수직인 방향"을 유일하게 결정할 수 있는 차원이 3차원 특유의 성질이기 때문입니다. 이러한 성질 덕분에 외적은 물리학에서 토크(회전력)나 각운동량, 컴퓨터 그래픽스에서 면의 법선벡터 계산 등 폭넓은 분야에서 응용되고 있습니다.