벡터와 사원수
# 벡터는 사실 사원수를 이용한 공간 표현을 더 쉽고 일반적으로 바뀌기 위해서 등장한 개념이다.
# 그래서 벡터의 곱셈인 내적과 외적은 결국 사원수의 곱셈으로부터 기원했다고 볼 수 있다.
# 게다가 외적은 사원수로부터 그냥 정의된 것도 아니다.
# 즉, 내적과 외적에 대해서 제대로 이해하려면 사원수로부터 출발해야한다는 뜻이다.
# 그래서 외적은 기본적으로 3차원 평면에서만 정의한다. (8원수로 7차원이나, 16원수로 15차원에서도 정의할 수는 있지만 의미가 없다)
# 사원수를 처음 정립한 해밀턴은 실수부를 스칼라부, 허수부를 벡터부라 했다.
# 그래서 사원수의 벡터와 구분하기 위해서 일반적인 벡터를 '좌표계 기반 벡터'라고 한다.
# 즉, 실수부가 0인 사원수 두개의 곱을 벡터와 벡터의 곱셈이라 생각할 수 있다.
# 이러면 실수값(스칼라)+허수값(벡터)가 나오는데 "그라스만"은 실수부를 내적, 허수부를 외적이라 부르고, 이를 발전시켜 좌표계 기반 벡터의 외적과 내적을 정의했다.
# 위의 실수부에서 -를 뽑아내면 <a>●<b> = a.x*b*x + a.y*b.y + a.z*b.z 과 모양이 같음을 알 수 있다.
외적의 유도
# 벡터의 외적은 결과가 벡터값으로 나온다. 그래서 외적을 벡터곱이라고도 한다.
# 그래서 외적이 벡터와 벡터의 곱셈에 더 어울린다. 사실 처음에는 외적을 벡터와 벡터의 곱으로 정의하려 했었다.
# 두 벡터가 만드는 평생사변형의 넓이를 벡터끼리의 곱셈의 값으로 정의하려 한 것이다.
# 문제는 위에서보면 외적은 벡터값인데 이 값은 그냥 스칼라값이라는 것이다.
# 그러므로 이 값에 방향을 정해줘야지 제대로 된 외적의 결과라고 할 수 있다.
# 외적의 결과로 나오는 벡터의 방향은 두 벡터 모두와 수직한 벡터가 나온다. 이는 <a>●(<a>X<b>) = 0, <b>●(<a>X<b>) = 0 임을 증명하면 된다.
# <a>●(<a>X<b>) = 0 이면 <a>와 <a>X<b>가 서로 수직임을, <b>●(<a>X<b>) = 0 이면 <b>와 <a>X<b>가 서로 수직임을 나타낸다.
# 이를 증명하는 가장 일반적인 방법은 행렬식을 이용하는 것이다. 이는 행렬과 벡터가 본질적으로 같은 것이기 때문이며 이를 연구하는 학문이 선형대수학이다.
# 즉 아래의 증명을 제대로 이해하려면 선형대수학을 공부해야한다. 그러므로 자세한 해석은 선형대수학을 공부할 때 하기로하고 증명만 적어놓는다.
# 여튼 이를 통해 <a>X<b>의 방향은 <a>와 <b>에 동시에 수직한다는 것을 알았다. 문제는 동시에 수직하는 벡터가 위쪽과 아래쪽 2개 있다는 것이다.
# 그러므로 외적의 방향은 아래 그림처럼 오른손방향(=오른나사방향)과 왼손방향(=왼나사방향) 중 하나로 정할 수 있다.
# 그런데 자기장에서의 전류의 흐름이 오른손방향과 같다. 그래서 수학자들은 외적의 결과를 두 방향중 오른나사방향이라고 정했다.
# 그래서 아래 세번째 그림이 외적의 기하학적 의미가 된다.
벡터의 연산(3) : 외적 혹은 벡터곱
# 그래서 외적은 아래처럼 계산할 수 있다.
# 사다리꼴의 넓이에 두 벡터에 수직인 기저벡터를 곱해준 것이 외적이다.
# 성분으로 계산하면 <a>X<b> = <ay*bz-az*by, az*bx-ax*bz, ax*by-ay*bx>이다. 보다싶이 사원수의 곱셈의 허수부와 모양이 같다.
외적의 성질
1) <a>X<a> = <0> (<0>은 영벡터) // 같은 벡터를 서로 외적하면 영벡터가 나온다.
2) <a>X<0> = <0> // 영벡터와 외적하면 영벡터가 나온다.
3) <a>X<b> = -(<b>X<a>) // 교환법칙이 성립하지 않는다. 교환하면 벡터의 방향이 반대가 된다.
4) <a>X(<b>X<c>) ≠ (<a>X<b>)X<c> // 결합법칙이 성립하지 않는다.
5) <a>X(<b>±<c>) = <a>X<b>±<a>X<c> // 분배법칙이 성립한다.
7) <a>●(<a>X<b>) = <b>●(<a>X<b>) = (<a>X<b>)●<a> = (<a>X<b>)●<b> = 0
외적의 활용
1) 삼각형의 넓이 구하기
: 두 벡터의 외적값의 절반이다. 외적의 크기가 사다리꼴의 넓이이므로 이를 반으로 나눠주면 삼각형의 넓이가 된다.
2) 평면의 방향 구하기. or 표면 법선 구하기
: 두 벡터를 외적한 벡터의 방향을 확인하면 두 벡터에 평행한 평면의 방향을 알 수 있고, 이를 정규화해주면 평면의 표면 법선이 된다.
(표면 법선(surface normal) : 주어진 면에 수직인 길이가 1인 벡터.)
3) 직선A와 점B와의 거리 구하기.
1) 직선A 위의 임의의 두 점을 시점과 종점으로 하는 <X>를 만들고 정규화한다.
2) 직선A 위의 임의의 점을 시점으로 하고 점B를 종점으로 하는 <Y>를 만든다.
3) <X>와 <Y>를 외적한 크기의 절대값이 직선A와 점B사이의 거리가 된다.