대문자는 큰거, 소문자와 숫자는 작은거 (이걸 표현할 방법이 없네요.. 감은 오시죠?)
선형 방정식
B = A1X1 + A2X2 + .... + AnXn .... [식1]
일반적인 경우, 상수 b를 만족하는 x1, x2, ... , xn의 값을 구하는 문제를 생각해 보자.
n개의 미지수로 이루어진 m개의 선형방정식은 다음과 같이 간단하게 표기할 수 있다.
A11X1+A12X2+....+A1nXn = B1
A21X2+A22X2+....+A2nXn = B2
..........................................
Am1X1+Am2X2+....+AmnXn = Bn .... [식2]
그러므로, i번째 방정식은 Ai1X1+Ai2X2+....+AinXn = Bi
이제 [식2]를 풀기 위해 행렬이라는 것을 도입한다.
[A11 A12 ... A1n]
[A21 A22 ... A2n]
A = [ ... ... ... ... ]
[Am1 Am2 ... Amn]
가로로 배열된 행렬을 행이라구 하고, i번째 행은 다음과 같이 표기한다.
[Ai1, Ai2, ..., Ain]
세로로 배열된 행렬을 열이라구 하고, j번째 행은 다음과 같이 표기한다.
[A1j]
[A2j]
[....]
[Anj]
또한, Aij를 원소라 하며, m개의 행과 n개의 열을 갖는 행렬을 MxN 행렬이라고 한다.
특히 NxN행렬을 n차 정방행렬이라고 한다.
[1 2] [A11 A12 A13]
예) [1 -1] 2차정방행렬 [A21 A22 A23] 3차정방행렬
[A31 A32 A33]
정방행렬 A에서 i = j일 때 Aij = 1이고, i != j일 때 Aij = 0인 행렬을 단위행렬이라고 하며, I또는 In이라 표시한다.
[1 0 0 0]
[1 0] [1 0 0] [0 1 0 0]
예) I = [0 1], I3 = [0 1 0], I4 = [0 0 1 0]
[0 0 1] [0 0 0 1]
이것들은 단위행렬이다.
두 MxN행렬 A = (Aij)와 B = (Bij)의 합은 A + B = (Aij + Bij)와 같이 정의한다.
[1 2] [4 3] [1+4 2+3] [5 5]
예) A = [3 4], B = [2 1] 일 때, A+B = [3+2 4+1] = [5 5] 이다.
A = (Aij)가 MxN행렬이고, B=(Bik)가 NxR행렬일 때, 두 행렬의 곱은 AB = [n시그마j=1 AijBjk]인 MxR 행렬이다.
(n이 위, j=1이 아래)
[1 2] [2 1] [2 3]
예) A =[-1 3] , B = [0 1]일 때, AB = [-2 2] 이다.
그러니까, AB(2,2)를 구하고자 한다면, 앞행렬의 두번째행과 뒷행렬의 두번째열을 곱해서 다 더하면 되는거다!
이 행렬의 곱에서는 곱하는행렬과 곱해지는행렬이 다르면 결과가 다르다.
정방행렬 A에 대해 AX = I를 만족하는 정방행렬 X가 존재하면 X를 A의 역행렬이라 하고, X = A-1이라고 표기한다.(-1지수)
정방행렬을 단위행렬로 만들어주는 행렬 : 역행렬
행렬A의 행과 열을 바꾼 행렬을 전치행렬이라 하며, At(t지수)라고 표기한다. (즉 Atij = Aji)
[A11 A12 A13] [A11 A21]
예) A = [A21 A22 A23]이면, At = [A12 A22] 이다.
[A13 A23]
'Graphics > DirectX' 카테고리의 다른 글
Direct 3D - 렌더링 파이프라인 (1) | 2014.06.19 |
---|---|
Direct 3D - 행렬 (0) | 2014.06.19 |
Direct 3D - 벡터 (0) | 2014.06.19 |
Direct 3D - 프레임워크 (0) | 2014.06.19 |
Direct 3D - *인덱스 버퍼 (0) | 2014.06.19 |