본문으로 건너뛰기
CalcMax

벡터 투영 계산기

계산 결과

3.0000

스칼라 투영

투영의 x 성분
3.0000
투영의 y 성분
0.0000
투영의 z 성분
0.0000

벡터 투영 계산기는 한 벡터가 다른 벡터를 따라 얼마나 놓여 있는지 구하고, 그 답을 부호 있는 스칼라와 벡터 두 가지로 보고합니다. 두 벡터를 3 4와 1 0처럼 수의 목록으로 적으면, 페이지가 먼저 스칼라 투영을 줍니다. 첫 번째 벡터가 두 번째 벡터를 따라 드리우는 그림자의 길이이고, 둘이 반대쪽으로 기울면 음수가 됩니다. 이어서 투영 벡터 자체를 주는데, 같은 그림자를 두 번째 벡터 위에 놓인 진짜 벡터로 적은 것입니다. 스칼라 투영은 내적을 두 번째 벡터의 크기로 나눈 값이고, 투영 벡터는 그 수에 방향을 다시 실어 준 것입니다. 성분은 두 개나 세 개를 받으며 두 벡터의 개수가 같아야 합니다. 두 출력을 함께 보여 주는 것이 이 페이지의 요점이고 중복이 아닙니다. 스칼라 투영은 직선을 따라 재므로 부호를 지니고, 투영 벡터는 어느 직선인지만 알 뿐이라, 두 번째 벡터를 뒤집으면 첫 번째 출력은 부호가 바뀌고 두 번째는 그대로입니다. 두 번째 벡터는 영벡터일 수 없습니다. 투영해 놓을 방향이 없기 때문입니다. 첫 번째 벡터는 영벡터여도 되고, 그러면 투영이 0이 됩니다.

벡터와 그 투영

소스 벡터 u대상 벡터 vu를 v에 투영한 스칼라투영의 x 성분투영의 y 성분투영의 z 성분
3 41 03300
1 23 42.21.321.760
3 4-1 0-3300
1 00 10000
1 1 11 1 11.7321111
2 3 61 1 16.35093.66673.66673.6667
0 03 40000
1 2 22 2 12.66671.77781.77780.8889

여덟 쌍을 한 방향으로 투영한 것이고, 스칼라가 먼저 그다음 그것에 대응하는 벡터의 세 성분이 옵니다. 첫 줄과 셋째 줄은 짝을 이루며 이 표를 읽을 값어치가 있게 만듭니다. 소스는 둘 다 3 4이고 대상이 하나는 1 0, 다른 하나는 −1 0인데, 스칼라 투영이 3에서 −3으로 뒤집히는 동안 투영 벡터는 둘 다 정확히 (3, 0, 0)으로 그대로입니다. 대상의 부호를 뒤집으면 분자에 마이너스가 하나, 제곱된 분모에 또 하나 생겨 벡터는 알아채지 못하고 스칼라는 알아챕니다. 둘째 줄은 어느 쪽도 정규화되지 않은 보통의 경우이고, 스칼라는 깔끔한 2.2로 떨어지지만 성분은 그렇지 않습니다. 넷째 줄은 수직인 짝입니다. 스칼라가 0이고 투영 벡터가 영벡터이며, 이는 올바른 답이고 어느 입력도 0이 아닌 채로 두 출력이 함께 사라지는 표에서 유일한 자리입니다. 다섯째 줄은 벡터를 자기 자신에 투영한 것이라 스칼라가 자기 크기인 √3이고 성분은 그대로 돌아옵니다. 여섯째 줄은 대상의 성분이 모두 같은 3차원이라 투영의 세 성분이 모두 같습니다. 일곱째 줄은 소스가 영벡터인 경우이고 투영 0과 함께 받아들여집니다. 여덟째 줄은 투영에 음수 성분이 없는 3차원 짝입니다. 대상이 영벡터인 줄은 일부러 없습니다. 대상이 방향과 나누는 수를 모두 공급하기에 그 경우는 거부되기 때문입니다. 모든 수치는 페이지를 만들 때마다 다시 계산되며, 앞의 두 열에 있는 공백은 나누는 표시이고 수의 일부가 아닙니다.

공식

s = (u · v) ÷ |v| proj_v u = (s ÷ |v|) · v = ((u · v) ÷ |v|²) · v

소스 벡터 u
투영되는 벡터이며 그림자를 알고 싶은 쪽입니다. 공백이나 쉼표로 나눈 두세 개의 수로 적습니다. 영벡터여도 되고, 그러면 투영이 그냥 0이 됩니다
대상 벡터 v
그림자가 떨어지는 벡터이며 방향을 공급하는 쪽입니다. 이 상자와 다른 상자는 서로 바꿔 쓸 수 없습니다. 바꾸면 답이 달라지므로 번호 대신 역할로 이름을 붙였습니다
u · v
두 벡터의 내적이며 성분을 짝지어 곱한 뒤 더한 값입니다. 두 공식 모두의 분자에 나오므로, 내적이 0이면 두 벡터가 수직이라는 사실을 알아 둘 값어치가 있습니다. 투영이 0이 나오는 경우가 바로 그것입니다
|v|
대상 벡터의 크기이며 내적을 나누는 수입니다. 대상의 크기가 1이면 이 나눗셈이 아무것도 바꾸지 않고 스칼라 투영이 곧 내적이 됩니다. 참고표의 첫 줄이 그 경우이고 손으로 검산하기 가장 쉬운 줄입니다
s
스칼라 투영이며 소스가 대상의 방향을 따라 얼마나 닿는지를 부호 있는 수로 적은 것입니다. 둘이 대체로 반대 방향을 향하면 음수이고 수직이면 0입니다. 소스 벡터의 크기도 아니고 내적도 아니며, 내적을 대상의 크기로 나눈 값입니다
proj_v u
투영 벡터이며 스칼라 투영에 대상의 단위 벡터를 곱한 것입니다. 방향이 다시 실려 대상이 놓인 직선 위에 정확히 놓이는 벡터가 되고, 그 크기는 s의 절댓값입니다
s의 부호
대상을 뒤집으면 달라지는 것입니다. 대상 벡터의 부호를 바꾸면 분자의 부호가 바뀌고 분모의 제곱된 크기는 그대로라 스칼라 투영의 부호가 뒤집힙니다. 반면 투영 벡터는 달라지지 않습니다. 같은 부호 반전이 위에도 한 번 아래에도 한 번 나타나기 때문입니다
대상이 영벡터인 경우
거부합니다. 대상이 방향과 나누는 수를 모두 공급하는데 영벡터에는 둘 다 없습니다. 분모가 0이 되고 투영해 놓을 직선도 없습니다. 소스가 영벡터인 것은 다른 문제이고 받아들여지며, 투영이 0이 됩니다
단위 없음
스칼라 투영과 투영 벡터의 세 성분은 여기서 모두 보통의 수입니다. 스칼라 투영은 입력 성분으로 잰 길이라 입력과 같은 단위를 지니지만, 이 페이지는 그 단위가 무엇이었는지 알지 못합니다
소수점 네 자리
출력을 적는 폭입니다. 스칼라 투영은 입력의 깔끔한 분수로 떨어지는 일이 잦고(11 나누기 5는 정확히 2.2), 벡터의 성분은 거의 언제나 반올림됩니다

한 벡터에서 다른 벡터를 따라 향하는 부분을 알고 싶을 때 쓰는 페이지이고, 그것은 무엇이든 성분으로 쪼개는 단계 뒤에 있습니다. 힘을 수평과 수직으로 나누는 것은 두 축에 대한 투영이고, 힘이 한 일은 힘을 이동 방향에 투영한 것에 거리를 곱한 값이며, 그림자와 경사면을 따른 성분, 최소제곱 적합의 계수가 모두 같은 연산입니다. 두 출력은 그 연산에 대한 서로 다른 두 물음에 답합니다. 부호 있는 스칼라는 얼마나인지를, 어느 쪽인지까지 포함해 답하며, 이어지는 산술에 쓸 것은 이쪽입니다. 음수 값은 소스가 대상에서 멀어지는 쪽으로 기울었다는 뜻입니다. 벡터는 어디인지를 답하고, 답이 벡터여야 할 때 쓰는 것이 이쪽입니다. 대상이 놓인 직선 위에 정확히 있으므로 다른 것에 더하거나 그릴 수 있습니다. 대상 벡터를 뒤집는 것이 둘의 차이를 보는 가장 빠른 길입니다. 스칼라는 부호가 바뀌고 벡터는 그대로인데, 스칼라는 방향을 기준으로 재이고 벡터는 그렇지 않기 때문입니다. 수직인 두 벡터는 두 출력 모두 0을 내놓고 0은 진짜 답입니다. 소스가 대상을 따라 향하는 부분이 전혀 없다는 뜻입니다. 쓸 수 없는 입력은 대상이 영벡터인 경우 하나이고, 방향과 나누는 수가 바로 그것이 제공하지 못하는 것입니다.

계산 예시

  1. 3 4를 1 0에 투영

    1. 내적: 3 × 1 + 4 × 0 = 3
    2. 대상의 크기: |1 0| = 1
    3. 스칼라 투영: 3 ÷ 1 = 3
    4. 투영 벡터: (3 ÷ 1) × (1, 0) = (3, 0, 0)

    페이지가 처음 열릴 때 들어 있는 입력이고 감춰진 것이 없는 경우입니다. 대상이 단위 벡터라 크기로 나눠도 달라지는 것이 없어 스칼라 투영이 그냥 내적입니다. 눈으로 검산하기도 가장 쉽습니다. 대상이 x축 위에 있어서 투영이 y 성분을 떨어뜨린 소스이기 때문입니다. 가장 단순한 자리에서 투영이 하는 일이 그것입니다. 대상이 향하는 부분만 남기고 나머지는 버립니다.

  2. 1 2를 3 4에 투영

    1. 내적: 1 × 3 + 2 × 4 = 11
    2. 대상의 크기: √(9 + 16) = 5
    3. 스칼라 투영: 11 ÷ 5 = 2.2
    4. 투영 벡터: (2.2 ÷ 5) × (3, 4) = (1.32, 1.76, 0)

    어느 쪽도 단위 벡터가 아니라 두 번의 나눗셈을 모두 해야 하는 보통의 경우입니다. 스칼라 투영은 정확하게 떨어지고(11 나누기 5는 2.2) 벡터의 성분은 그렇지 않습니다. 답이 정말 대상이 놓인 직선 위에 있는지 확인해 보십시오. 1.32 나누기 3은 0.44이고 1.76 나누기 4도 0.44라, 두 성분이 대상의 성분과 같은 비를 이룹니다. 그 직선 위에 있다는 것이 그 뜻입니다. 투영의 크기는 스칼라인 2.2이고, 그래야 합니다.

  3. 3 4를 −1 0에 투영

    1. 내적: 3 × (−1) + 4 × 0 = −3
    2. 대상의 크기: |−1 0| = 1
    3. 스칼라 투영: −3 ÷ 1 = −3
    4. 투영 벡터: (−3 ÷ 1) × (−1, 0) = (3, 0, 0)

    첫 번째 예와 소스도 직선도 같고 대상만 반대를 향하는 경우이며, 두 출력이 각각 무엇을 아는지 이 페이지에서 가장 분명하게 보여 줍니다. 스칼라 투영은 −3으로 부호가 뒤집혔습니다. 방향을 따라 재이고 그 방향이 바뀌었기 때문입니다. 투영 벡터는 첫 번째 예와 한 자리도 다르지 않은 (3, 0, 0)입니다. 대상의 부호를 뒤집으면 분자에 마이너스가 하나, 제곱된 분모에 또 하나 생겨 둘이 상쇄되기 때문입니다. 스칼라는 대상이 어느 쪽을 향하는지 알고 벡터는 그 직선만 압니다.

  4. 1 0을 0 1에 투영

    1. 내적: 1 × 0 + 0 × 1 = 0
    2. 대상의 크기: |0 1| = 1
    3. 스칼라 투영: 0 ÷ 1 = 0
    4. 투영 벡터: (0 ÷ 1) × (0, 1) = (0, 0, 0)

    수직인 두 벡터이고 두 출력 모두 0입니다. 이것은 실패가 아니라 진짜 답입니다. 소스가 대상을 따라 향하는 부분이 전혀 없다는 뜻이고, 수직이라는 말이 정확히 그 뜻입니다. 내적이 0인 것이 찾아야 할 신호이며, 어느 한 벡터가 0이 아닌 채로 스칼라 투영이 0이 되는 유일한 길입니다. 여기서는 두 벡터의 크기가 각각 1이라 어느 쪽도 작지 않습니다. 길이가 온전한 두 벡터 사이에서 나온 0인 투영은 처음 만날 때 한 번쯤 짚어 둘 값어치가 있습니다.

  5. 0 0을 3 4에 투영

    1. 내적: 0 × 3 + 0 × 4 = 0
    2. 대상의 크기: √(9 + 16) = 5
    3. 스칼라 투영: 0 ÷ 5 = 0
    4. 투영 벡터: (0 ÷ 5) × (3, 4) = (0, 0, 0)

    소스가 영벡터인 경우입니다. 내적의 모든 곱이 0이라 나눗셈 문제 없이 두 출력이 0이 됩니다. 이 페이지는 이 입력을 거부하지 않습니다. 거부는 반대쪽에 있습니다. 0이면 안 되는 것은 대상 벡터이고, 방향과 나누는 수를 공급하는 쪽이기 때문입니다. 영벡터에 투영하면 떨어질 직선이 없습니다.

한계

두 벡터의 성분 개수가 같아야 하고 각각 두 개나 세 개여야 합니다. 두 상자는 서로 바꿔 쓸 수 없고 라벨이 어느 쪽이 어느 쪽인지 말합니다. 소스는 투영되는 벡터이고 대상은 그것이 투영되는 벡터입니다. 둘을 바꾸면 전혀 그럴듯해 보이는 다른 답이 나오므로, 결과가 이상하면 산술을 확인하기 전에 두 상자부터 확인하십시오. 대상 벡터는 영벡터일 수 없습니다. 방향과 나누는 수를 모두 공급하기 때문입니다. 소스 벡터는 영벡터여도 되고 그때 투영은 0이 됩니다. 성분은 보통의 수로 읽습니다. 쉼표 뒤에 공백이 있으면 성분을 나누고, 공백 없이 붙은 쉼표는 소수점으로 읽으며(1,5는 1.5), 세 자리 묶음 쉼표는 추측하지 않고 거부합니다. 1,500이 아니라 1500으로 적어야 합니다. 소수점 네 자리는 정밀도 주장이 아니라 표시 폭이고, 투영 벡터는 반올림하지 않은 스칼라에서 계산되므로, 인쇄된 성분을 대응하는 대상 성분으로 되돌려 나눠도 인쇄된 스칼라가 그대로 나오지 않을 수 있습니다. 참고표는 입력한 그대로의 대상 벡터와 소스 벡터, 그리고 네 출력을 보여 주며, 대상이 영벡터인 줄은 일부러 두지 않았습니다. 이 페이지가 계산할 수 없는 경우이기 때문입니다. 겹치는 부분 하나를 짚어 두면 이렇습니다. 내적은 투영 공식의 분자로, 단위 벡터는 두 번째 공식에서 다시 곱해지는 방향으로 등장합니다. 그래서 이 페이지는 그 둘에 기대면서도 그 둘 중 어느 쪽도 아니고, 투영은 나눗셈의 몫이지 내적도 정규화된 벡터도 아닙니다.

자주 묻는 질문

스칼라 투영과 투영 벡터는 어떻게 다른가요?
스칼라 투영은 부호 있는 수 하나이고, 소스가 대상의 방향을 따라 얼마나 닿는지를 나타냅니다. 둘이 서로 멀어지는 쪽으로 기울면 음수가 됩니다. 투영 벡터는 같은 거리를 대상이 놓인 직선을 따라 향하는 벡터로 적은 것입니다. 스칼라는 대상이 어느 쪽을 향하는지 알고 벡터는 모릅니다. 대상을 뒤집으면 스칼라는 부호가 바뀌고 투영 벡터는 그대로입니다. 이어지는 산술에는 스칼라를, 답이 벡터여야 할 때는 벡터를 쓰십시오.
스칼라 투영이 왜 음수로 나오나요?
소스 벡터가 대상을 향하는 대신 반대쪽으로 기울었기 때문입니다. 스칼라 투영은 방향을 따라 재이므로 두 벡터가 대체로 반대 방향을 향하면 답이 음수입니다. 오류도 아니고 없앨 수 있는 부호 규칙도 아닙니다. 어떤 방향을 따라 뒤로 당기는 힘은 그 방향에 대한 성분이 진짜로 음수이고, 한 일이 음수로 나오는 것도 같은 이유입니다.
어느 벡터가 투영되는 쪽인가요?
첫 번째 상자의 소스 벡터입니다. 두 번째 상자는 대상 벡터이고 그림자가 떨어지는 방향을 공급합니다. 이 페이지에서 둘은 서로 바꿔 쓸 수 없습니다. u를 v에 투영하는 것과 v를 u에 투영하는 것은 다른 수이고, 상자를 바꾸면 아무것도 고장 난 것처럼 보이지 않은 채 답이 달라집니다. 그래서 상자에 벡터 u와 벡터 v 대신 역할 이름을 붙였습니다.
두 벡터가 수직이면 어떻게 되나요?
두 출력이 모두 0이 되고, 그것은 실패가 아니라 진짜 답입니다. 내적이 0이라는 것은 두 벡터가 수직이라는 뜻이고, 어느 한 벡터 자체가 0이 아닌 채로 스칼라 투영이 0이 되는 유일한 길입니다. 투영이 0이라는 것은 소스가 대상을 따라 향하는 부분을 전혀 갖지 않는다는 뜻입니다. 참고표의 넷째 줄이 이 경우이고, 수직인 두 힘이 서로에게 일을 하지 않는다는 물리학의 말도 같은 내용입니다.
투영되는 벡터가 영벡터여도 되나요?
됩니다. 그러면 두 출력이 모두 0인데, 내적의 모든 곱이 0이고 나누는 수는 대상의 크기라 아무 문제가 없기 때문입니다. 이 페이지의 거부는 반대쪽을 향합니다. 0이면 안 되는 것은 대상 벡터이고, 방향과 나누는 수를 공급하는 쪽이기 때문입니다. 영벡터에는 투영해 놓을 직선이 없습니다.
투영 공식은 무엇인가요?
스칼라 투영은 두 벡터의 내적을 대상의 크기로 나눈 값입니다. 투영 벡터는 그 스칼라에 대상의 단위 벡터를 곱한 것이고, 내적 곱하기 대상을 대상의 제곱 크기로 나눈 것과 같습니다. 대상의 크기가 이미 1이면 두 공식이 모두 간단해져 스칼라 투영이 그냥 내적이 되고, 그래서 참고표의 첫 줄이 손으로 검산해 볼 줄입니다.

참고 문헌

관련 계산기