카테고리 없음

벡터

게임 개발 2023. 3. 3. 21:42
벡터란?

 

 

벡터는 수학, 물리학, 공학에서 크기와 방향을 갖춘 양을 일컫는다.

이공학 분야에서 많이 사용되는 수학적인 양의 표현 기법으로

 

거리 무게 속력 등 크기만을 나타내는 1 차원적인 양인 스칼라와는 달리,

힘, 속도 등과 같이 크기 및 방향 등 2차원 이상

즉, 2 이상의 원소(요소)들에 의해, 어떤 양을 표현하는데 유용한 표기법

 

벡터의 여러 정의들

 

기하학적인 측면 : 유향 선분

- 크기 및 방향에 의한 표현

 ex) 힘, 모멘트, 변위, 속도, 가속도, 운동량, 열유동 등

 

대수적 측면 : 수 또는 함수들의 나열

- 실수 또는 복소수 또는 함수를 원소(성분)로 갖는 순서쌍(Oredered Pair/n-tuple)

ex) 좌표, 벡터 함수 등

 

추상적 대상 (object) : 벡터공간 상에서 대수적 성질을 갖는 것

- 대수적 성질을 공리로 이용한 벡터공간 내의 대상을 추상화한 것

ex) 무한 실수 수열, 연속 함수, 행렬 등도 벡터 형태로 나타낼 수 있음

 

벡터의 표기

 

기하학적 측면 : 시작점과 끝점 (통상,작용점)을 연결하는 유향선분으로 표시- 벡터는 획이 굵은 활자체 문자 또는 문자 위에 윗 화살표를 그어 표기

 

 

 

대수적 측면 : 소문자 볼드체로 표시

대수학에서의 벡터 (벡터에 대한 대수학적인 접근방법)

 

벡터의 성분

- 벡터를 좌표 성분들인 수 (좌표값)의 대수적 집합으로 표현할 수 있음

 

벡터의 차원

- n-차원 벡터

  • n개의 원소를 갖는 벡터 = n개 원소를 갖는 순서쌍(n-tuple) : x = (x1, x2, . . . xn)
  • 주로, 수직 열벡터(Column Vector)로 표현됨

 

행 벡터 (Row Vector)

 

 

열 벡터 (Column Vector)

 

 

 

 

 

 

벡터를 보다 추상적인 개념으로 확장이 가능하다

- 대수학에서 말하는 벡터는, 기학적 벡터 개념에서의 확장적 개념이다.

'벡터 공간'이라는 정의 내에서 대상(object)를 말한다

. .  이 경우에 함수 (Function)도 벡터로 볼 수 있다.

 

 

단위벡터

 

 

 

 

단위벡터란?

 

단위벡터의 단위는 계량 단위를 뜻하는 것이 아닌,

상품 한 개, 특정 임무를 하는 단체, 병원의 부서(과),

물질의 덩어리라는 측면에서의 단위이다.

 

 

단위길이와 단위질량

 

한가지 예를 들어보겠다.

어느 물체의 길이가 10m라면, 단순히 그 물체가 10m 구나에서 멈추는 것이 아니라

전체 길이를 하나로 생각하지 않고,

 

10m는 1m의 길이가 10배가 되는 길이이며, 이때 최소 덩어리가 되는

1m를 단위길이라고 부른다면,

이것을 식으로 나타내면 다음과 같다.

이와 같은 방식으로 질량 3kg은 단위질량 1kg을 3배한 크기인 것이다.

바로 아래 식과 같이 표현할 수 있다.

 

단위벡터

이번에는 벡터 A-> = 3x라고 하는 벡터가 있다고 생각해 보면,

이것도 위의 두 식과 같이 생각을 하면 1x에 3배한 크기가 A->가 되는 것으로 생각할 수 있다.

이때 숫자 3은 벡터 A->의 방향이 없는 크기이고, 1x는 크기가 1이고

x방향을 향하는 벡터, 즉 단위벡터를 나타낸다.

 

결국 단위벡터를 알면 크기 만큼 배수를 해줌으로써 벡터를 표기할 수 있게 되는 것이다.

 

참고로 단위벡터 표기는 x,y,x 또는 i,j,k의 단위벡터 기호를 사용하여 표기하는 것이 일반적이다.

 

 

단위벡터의 기하학적 의미

 

스칼라는 scale 스케일에서 유래되었다.

스칼라는 단순히 얼마나 크고 작냐를 의미하는 숫자이다.

온도, 속력, 길이, 질량 등은 대표적인 스칼라 물리량이다.

 

스칼라는 특정한 하나의 수치 그리고 단위로 표현된다. 방향은 없다.

 

부피, 질량, 속력, 시간 시간 간격 이런 것도 스칼라 양이며

어떤 스칼라 양은 항상 양수일 수도 있다.

예를 들어 질량이나 속력, 온도 같은 건 음수도 있고 양수도 있다.

 

즉 스칼라는 음수 양수 모두 가질 수 있으며,

어떠한 방향이라기 보단 하나의 수치로 표현된다.

 

스칼라

- 크기만 가진 물리량

 

벡터

- 크기와 방향을 함께 가진 물리량

 

기하학적으로 벡터의 크기는 방향을 가진 선분의 길이이다.

벡터의 성분이 주어졌다고 할 때,

우리는 피타고라스 정리를 활용해 벡터의 크기를 알 수 있다.

 

벡터의 크기를 구하는 공식은 다음과 같다.

 

일반적으로 벡터의 크기는 두 개의 수직 막대 기호로 ||로 표기하지만,

이 책에서는 원점으로부터의 거리라는 동일한 개념을 적용해

다음 식과 같이 하나의 수직 막대 | 기호를 사용해 표기하겠다.

 

 

위의 식에서와 같이 벡터는 단위벡터를 어느 크기만큼 배수를 한 것으로 볼 수 있다.

그렇다면 x방향을 향하는 벡터, y방향을 향하는 벡터, 비스듬한 방향을 향하는 벡터에서

단위벡터는 기하학적으로 아래와 같은 의미를 같는다.

 

1. 좌표축에 평행한 벡터의 단위벡터 (벡터의 길이와 스칼라)

 

아래 그림 상담에는 x방향으로 크기가 1인 단위벡터 x의 화살표가 그려져 있다.

이 단위벡터에 방향이 없는 크기를 곱하면 벡터가 된다.

 

아래 그림에서 크기를 벡터 A×-> 에 절대값 기호를 취한 ㅣA×->ㅣ로 나타내었다.

이것은 벡터 A×-> 의 크기를 상징하는 기호로 보면 된다.

 

그래서 단위벡터 1x에 벡터의 크기 ㅣA×->ㅣ를 곱하여 얻어진 결과는

A×-> = ㅣA×->ㅣx로 쓸 수 있다.

 

기하학적으로 A×->의 방향은 그대로 유지하되 화살표의 길이를 크기 값

ㅣA×->ㅣ로 나누는 것으로 이해하면 된다.

 

 

벡터의 정규화

 

임의의 벡터 v->를 크기가 1인 단위 벡터 v로 다듬는 작업을 정규화한다고 부르며

수식은 아래와 같다.

벡터의 합 연산 & 곱 연산

 

벡터 공간의 벡터의 합과 스칼라 곱셈 연산은 선형성이 있어 선형 연산이라고도 한다.

선형 연산을 사용해 n개의 스칼라 a1 . . .  an과 n개의 벡터 v1-> ... vn->를 결합해

새로운 백터 v1->을 생성하는 수식을 선형 결합이라고 한다.

 

여기서 벡터의 모든 원소가 0으로 구성된 영벡터 0->를 생각했을 때

선형 결합의 결과가 0->가 나오는 수식은 다음과 같다.

벡터에 곱하는 모든 스칼라 값이 0이면 선형 결합의 결과는 항상 영벡터가 된다.

그런데 a값이 0이 아닌 경우에도 영 벡터는 나올 수 있다.

 

이 식과 같이 모든 a가 0이 아님에도 영벡터를 만들 수 있다면,

선형 결합에 사용된 벡터는 서로 '선형 종속의 관계'를 가진다라고 표현한다.

따라서 (1, 1)과 (2, 2)의 두 벡터는 선형 종속인 관계를 갖는다.

 

반면에 영벡터가 나오기 위해서 모든 a값이 0이어야 한다면

선형 결합에 사용된 벡터들은 서로 '선형 독립의 관계'를 가진다라고 표현한다.

다음 수식에서 (1,2)와 (2,1) 두 벡터가 결합할 때 영벡터가 나오려면

모든 스칼라 a의 값은 0이어야 한다.

 

따라서 (1,2)와 (2,1)의 두 벡터는 선형 독립의 관계를 갖는다.

 

벡터 간의 선형적 관계는 벡터 공간을 다룰 때 중요하게 사용된다.

선형 독립의 관계를 가지는 벡터를 선형 결합하면

벡터 공간에 속한 모든 벡터를 생성할 수 있기 때문이다.

 

벡터의 덧셈의 대수학적 법칙은 실수의 덧셈과 유사하다.

  1. v + w = w + v (교환 법칙)
  2. u + (v + w) = (u + v) + w (결합 법칙)
  3. v + 0 = v (덧셈의 항등원)
  4. 모든 v에 대해 v + (-v) = 0 식을 만족하는 벡터 -v가 존재한다. (덧셈의 역원)

 

뺄셈의 결과 벡터는 두번째 벡터(B)의 머리에서 첫번째 벡터(A)의 머리로 이어진다.

 

두 벡터의 크기는 A벡터와 B벡터의 합이다.

 

 

 

벡터의 내적

 

정의와 특징

 

두 개의 벡터를 곱하는 첫 번째 방법인 내적에 대해 살펴본다.

벡터의 내적은 두 개의 벡터를 곱해서 숫자를 얻는 연산으로서 ,

이들의 방향이 얼마나 겹치는지에 따라 달라지는 양이다.

예를 들어서 피타고라스 정리가 적용되는 유클리드 공간의 경우,

두 벡터의 크기와 두 벡터가 이루는 각도의 코사인 값을 곱하면 그게 곧 내적이다.

 

두 개의 벡터가 서로 평행하게 같은 방향을 향하고 있다면,

이들을 이루는 각도는 0이므로 그 코사인 값은 1이고 벡터의 내적은 벡터의 크기를 곱한 것과 같다.
같은 논리에 따르면 서로 수직을 이루는 두 벡터의 내적은 0이고,
서로 반대 방향을 향하는 두 벡터의 내적은 크기의 곱에 -1을 곱한 것과 같다.

내적이 가지는 또 다른 중요한 특징으로는 선형성 (linearity)이 있다.
다시 말해서 선형결합된 벡터의 내적은 곧 내적의 선형 결합과 같다는 것이다.

주어진 벡터들의 성분들을 가지고 내적을 정의하기 위해서는 선형성과 더불어 
기저 벡터들 사이의 내적을 알아둘 필요가 있다.
기하학적인 정의에 따라, 3차원 유클리드 공간의 기저 벡터들인 x,y,z 축 방향의 단위 벡터들의
내적을 쉽게 알 수 있다. 단위 벡터라는 설정에 따라, 동일한 기저 벡터 두 개를 서로 내적하면 1이다.

그리고 x,y,z축은 서로 직각이므로, 서로 다른 기저 벡터를 내적하면 0이 된다.

 

벡터의 외적

 

정의와 특징

 

두 개의 벡터를 곱하는 또 다른 방법으로서 외적이 있다.
이는 두 개의 벡터를 곱해서 또 다른 벡터 혹은 텐서를 얻는 연산이다.
내적과는 달리, 곱하고자 하는 두 개의 벡터의 방향이 얼마나 벌어져 있는지와 관련이 있다.
다시 말해서 두 벡터가 같은 방향을 향하거나 정반대의 방향을 가리키고 있다면, 이들의 외적은 0이 된다. 
두 벡터가 서로 직각을 이루고 있을 때 외적의 크기가 최대가 됩니다.

3차원 유클리드 공간의 경우 두 벡터의 외적은 곱셈기호로 표시하고, 이들과 수직을 이루는 벡터로 주어진다.
그리고 외적의 크기는 두 벡터가 이루는 평행사변형의 넓이와 같다.
예를 들어서 x-y 평면 상의 두 벡터가 있다면, 이들의 외적은 z축 방향을 향하게 된다.

내적의 경우와 마찬가지로 벡터들의 성분을 가지고 외적의 성분을 구할 수 있다.
이를 위해서는 먼저 기저 벡터들의 외적을 정의할 필요가 있다. 
x축과 y축 방향의 단위 벡터들의 외적은 z축 방향의 단위 벡터로 주어진다.
비슷하게 y축과 z축 방향의 단위 벡터들의 외적은 x축 방향의 단위 벡터가 된다.