40
선형 변환과 행렬 Matrices and Linear Transformations 2/2 게임코디 - 그건일

Chapter 2, 선형 변환과 행렬 2/2

Embed Size (px)

Citation preview

Page 1: Chapter 2, 선형 변환과 행렬 2/2

선형 변환과 행렬Matrices and Linear Transformations

2/2

게임코디 - 그건일

Page 2: Chapter 2, 선형 변환과 행렬 2/2

2.3.8 항등 행렬(Identity Matrix)

• 스칼라에서 된다면

• 행렬에서도 될 것이다.

• 생긴 모양은…

Page 3: Chapter 2, 선형 변환과 행렬 2/2

2.3.9 행렬을 통한 벡터 연산 수행하기 #1

• 행 벡터와 열 벡터를 곱한다 = 내적한다.

결과는 스칼라 값

Page 4: Chapter 2, 선형 변환과 행렬 2/2

2.3.9 행렬을 통한 벡터 연산 수행하기 #2

Page 5: Chapter 2, 선형 변환과 행렬 2/2

2.3.9 행렬을 통한 벡터 연산 수행하기 #3

Page 6: Chapter 2, 선형 변환과 행렬 2/2

2.3.9 행렬을 통한 벡터 연산 수행하기 #4

이런 계산은 안됨

Page 7: Chapter 2, 선형 변환과 행렬 2/2

2.3.10 구현

• 자료구조

행 우선 행렬

책은 이 방식을 따른다

Page 8: Chapter 2, 선형 변환과 행렬 2/2

2.3.10 구현

행 우선 행렬, OpenGL

열 우선 행렬, DirectX

행 우선 이냐 열 우선이냐는

결국 전치 연산을 의미한다.

Page 9: Chapter 2, 선형 변환과 행렬 2/2

2.3.10 구현

• 벡터 = 행렬 x 벡터

(벡터 = 벡터 x 행렬) 이건 아님

Page 10: Chapter 2, 선형 변환과 행렬 2/2

2.3.10 구현

• 행렬 = 행렬 x 행렬

Page 11: Chapter 2, 선형 변환과 행렬 2/2

2.3.10 구현

• 행렬 = 행렬 + 행렬 (쉽다)

Page 12: Chapter 2, 선형 변환과 행렬 2/2

2.4 선형 연립 방정식 – 2.4.1 정의

• 연립 방정식이라고 하는 것은 미지수의 수

만큼의 방정식이 있으면 해를 구할 수 있다.

Page 13: Chapter 2, 선형 변환과 행렬 2/2

2.4.2 선형 연립 방정식 풀기

• 가끔은 해가 많거나…

• 해가 없을 수도 있다.

Page 14: Chapter 2, 선형 변환과 행렬 2/2

2.4 선형 연립 방정식 – 2.4.1 정의

• 선형 연립 방정식의 표현

P74 에 유사한

그림이 있다.

쓰기

어렵다.

그래서

쓰기

쉽게

고쳤다.

Page 15: Chapter 2, 선형 변환과 행렬 2/2

2.4 선형 연립 방정식 – 2.4.1 정의

• 대수학 답게 더 쉽게 고친다.

의미: A 와 b 에 대해서 x는 무엇인가?

A 와 x 에 대해서 b 는 무엇인가이게 아님

Page 16: Chapter 2, 선형 변환과 행렬 2/2

2.4.2 선형 연립 방정식 풀기

• 일단 쉬운 것

1x + 0y + 0z = 1

0x + 1y + 0z = 2

0x + 0y + 1z = 3

x = 1

y = 2

z = 3

1x + 1y + 1z = 1

1y + 1z = 2

1z = 3

• 다음

1x + 1y + 3 = 1

1y + 3 = 2

z = 3

1x + 0 + 3 = 1

y = -1

z = 3

x = -2

y = -1

z = 3

Page 17: Chapter 2, 선형 변환과 행렬 2/2

2.4.2 선형 연립 방정식 풀기

• 책에 나오는 쉬운 것

이런 형태를 행사다리꼴 행렬 이라고 부른다.

열사다리꼴 행렬 도 존재함

상삼각 행렬, 하삼각 행렬은 왜 설명한 것일까?

Page 18: Chapter 2, 선형 변환과 행렬 2/2

2.4.2 선형 연립 방정식 풀기

• 가우스 소거법

Page 19: Chapter 2, 선형 변환과 행렬 2/2

2.4.2 선형 연립 방정식 풀기

• 가우스 소거법

Page 20: Chapter 2, 선형 변환과 행렬 2/2

2.4.2 선형 연립 방정식 풀기

• 가우스 소거법

Page 21: Chapter 2, 선형 변환과 행렬 2/2

2.4.2 선형 연립 방정식 풀기

• 가우스 소거법

1로 만들기 위해

모든 행을 3으로 나눔

Page 22: Chapter 2, 선형 변환과 행렬 2/2

2.4.2 선형 연립 방정식 풀기

• 가우스 소거법

1번째 행에 더한다.

빨간 상자를 0으로 만들기 위해

0번째 행에 -2 를 곱하여…

[-2, -4, -6 | -2]

Page 23: Chapter 2, 선형 변환과 행렬 2/2

2.4.2 선형 연립 방정식 풀기

• 가우스 소거법

2번째 행에 더한다.

빨간 상자를 0으로 만들기 위해

0번째 행에 -1 를 곱하여…

[-1, -2, -3 | -1]

Page 24: Chapter 2, 선형 변환과 행렬 2/2

2.4.2 선형 연립 방정식 풀기

• 가우스 소거법

Page 25: Chapter 2, 선형 변환과 행렬 2/2

• 가우스 소거법

2.4.2 선형 연립 방정식 풀기

2번째 행에 더한다.

빨간 상자를 0으로 만들기 위해

1번째 행에 -5 를 곱하여…

[ 0, -5, -4 | -3]

Page 26: Chapter 2, 선형 변환과 행렬 2/2

• 가우스 소거법

2.4.2 선형 연립 방정식 풀기

Page 27: Chapter 2, 선형 변환과 행렬 2/2

• P88 – 일반적으로, 계수 행렬 A의 순위와첨가 행렬 A|b 의 순위가 같다면 그 선형 연립 방정식은 적어도 하나의 해가 존재할 것이다. 만약 두 순위가 같지 않다면, 그 때 해는 존재하지 않는다. A 의 순위가 A의 행 또는 열 중에 최소 개수와 같다면 유일해가 존재한다.

이해할 수 없지만 판별식이라는 것과 관련있을 것으로 추정함

2.4.2 선형 연립 방정식 풀기

Page 28: Chapter 2, 선형 변환과 행렬 2/2

2.5 행렬의 역, 2.5.1 정의

• Ax = b 에서 x 에 대해서 풀면 x = b/A

• 행렬은 나눗셈 연산을 가지지 않음

• 스칼라 연산을 아래와 같이 표현 가능

• 스칼라 연산처럼 행렬에도 무언가 존재할것이라고 정의함

Page 29: Chapter 2, 선형 변환과 행렬 2/2

2.5 행렬의 역, 2.5.1 정의

• 행렬에서 이런 연산이 가능 하다고 정의

• 이 행렬도 교환 법칙이 성립함

• 역행렬의 역행렬은 행렬

Page 30: Chapter 2, 선형 변환과 행렬 2/2

2.5 행렬의 역, 2.5.1 정의

• 그래서 역행렬을 구하면 아래의 연산이

가능함

X 에 대해

풀 수 있다.

Page 31: Chapter 2, 선형 변환과 행렬 2/2

2.5 행렬의 역, 2.5.1 정의

• 책에서 이렇게 적혀있는데…

• 이렇게 고쳐서 가우스 조던 소거법으로 구하면 역행렬이 나온다(이해하기 어려움…)

항등행렬

Page 32: Chapter 2, 선형 변환과 행렬 2/2

2.5 행렬의 역, 2.5.1 정의

• 역행렬을 구하기 위해 항등행렬을 이용하

여 가우스 소거법 사용한다.

• A 와 I 를 알고 있으므로 가우스 소거법을

이용하면 역행렬을 구할 수 있다.

Page 34: Chapter 2, 선형 변환과 행렬 2/2

2.6 판별식, 2.6.1 정의

• 2차원 행렬의 판별식

회색으로 보이는 평행사변형의 부피가 판별식

ad – bc 는 평행사변형의 부피를 구하는 공식

오른손 좌표계일 경우 시계 반대 방향으로 가까

운 벡터를 먼저 써야 한다.

판별식은 일반적인 부피와 다르게 부호가 있다.

Page 35: Chapter 2, 선형 변환과 행렬 2/2

2.6.2 판별식 계산하기

• 3차원 행렬에서 판별식

역시 부피 이긴 한데

….

Page 36: Chapter 2, 선형 변환과 행렬 2/2

2.6.3 판별식과 기본 행 연산들

• 이해 못했음

Page 37: Chapter 2, 선형 변환과 행렬 2/2

2.6.4 수반 행렬과 역원

• 여인수 행렬을 만들고 그것을 전치 하여 수

반 행렬을 만든다.

• 판별식을 이용하면 역행렬을 만들 수 있다.

(빠르게)

• 별다른 설명이 없고 Invers() 함수를…

역행렬

판별식 수반형렬

Page 38: Chapter 2, 선형 변환과 행렬 2/2
Page 39: Chapter 2, 선형 변환과 행렬 2/2
Page 40: Chapter 2, 선형 변환과 행렬 2/2

2.7 요약

• 다 필요 없고 역행렬