cyphen156
게임 수학 14장 : 복소수(2차원 평면의 수) 본문
이번 장에서는 아직 해결하지 못한 문제인 3차원공간에서의 물체를 회전시킬 때 생기는 문제를 해결하기 위한 해결책인 사원수의 기본이 되는 복소수에 대해서 알아볼 것이다.
여태까지 우리는 체의 구조를 갖는 수의 집합으로 실수를 사용해왔다.
그런데 이런 체의 구조를 가지는 수의 집합은 복소수로 확장될 수 있다.
복소수는 실수에 허수의 개념을 도입함으로써 1차원 수직선으로 표현되던 실수를 2차원 평면상에 표현할 수 있게 한다.
복소수(Complex Number)
복소수는 실수와 허수라는 독립된 2개의 요소의 조합으로 표현된다. T = (1 + 3i)/실수부 + 허수부
허수(Imaginary Number)
허수란 사실 그 이름에 사용된 단어를 통해 의미를 알 수 있듯이 상상속의 수 = 허상속에 존재하는 수다.
하지만 허수는 실존한다.
허수의 발견은 모든 실수는 제곱했을 경우 항상 0이상의 수가 결과로 도출된다는 것에서 음수로 결과가 도출되는 수가 존재하지 않을까? 라는 의문에서 출발했다.
허수의 발견은 단순히 “음수의 제곱근이 존재하는가?”라는 질문에서 출발한 것이 아니다.
오히려 “모든 양수는 제곱근을 가지므로, 수학적으로 일관성을 유지하려면 음수 또한 제곱근을 가져야 한다”는 필요성에서 비롯되었다.
다음과 같은 수식이 실수 체계만으로는 절대로 해결될 수 없다는 것이 문제였던 것이다.
즉, 수 체계를 대수적으로 완전하게 만들기 위한 논리적 확장으로 허수가 도입된 것이다.
복소수의 연산의 성질
- 덧셈 연산에 대해
- 닫혀있다.
- 교환법칙이 성립한다.
- 결합법칙이 성립한다.
- 항등원이 존재한다.
- 역원이 존재한다.
- 곱셈 연산에 대해
- 닫혀있다.
- 교환법칙이 성립한다.
- 분배 법칙이 성립한다.
- 항등원이 존재한다. (1, 0)
- 역원이 존재한다. -> 추후 설명
위의 이유들로 복소수의 연산은 실수 연산과 동일하게 체의 구조를 갖는다.
허수의 특징
허수의 특징으로는 바로 제곱했을 때 음수가 된다는 점이다.
예를 들어 3i를 제곱하면 (3 X i)**2 = 9 X i**2 = 9 X -1 가 되며, 이는 실수이지만 음수이다.
복소수의 크기
복소수의 크기는 2차원 벡터와 동일하게 실수부와 허수부의 각 요소를 제곱하여 더한 다음 제곱근을 취하는 방식으로 구한다.
|(a, b)| = |(a, -b)| = root(a**2 + b**2)
단위 복소수(Unit Complex Number)
크기가 1인 복소수는 단위복소수라고 부른다.
이들은 복소평면의 단위원(circle) 위에 위치하며,
와 같은 극형식으로 자주 표현된다.
켤레 복소수(Conjugate)
복소수는 허수부의 부호에 따라 그 값이 바뀌는데 항상 두개의 쌍으로 표현될 수 있기 때문에 한 복소수의 다른 한 쌍을 켤레 복소수라고 부른다.
z=a+bi에 대해 zˉ
그래서 한 복소수에 켤레 복소수를 곱하면 해당 복소수의 크기의 제곱을 얻을 수 있다.
이러한 켤레 복소수의 연산의 성질을 통해 복소수의 곱셈 연산이 역원을 갖을 수 있음을 증명할 수 있다.
복소평면
복소평면은 기본적으로 2차원( x, y ) 평면과 동일하게 표현된다. 다만 축의 이름이 달라질 뿐이다.
X축은 실수를 의미하는 R로, Y축은 허수를 의미하는 Im으로 바꾸어 부른다.
단위 복소수의 곱과 회전
만약 허수부가 0인 임의의 복소수 a + 0 * i에 허수 i를 곱한다고 생각해보자
결과는 0 + a * i라는 복소수가 결과로 튀어나온다.
여기에 한번더 허수 i를 곱해 본다면
결과는 -a + 0 * i라는 복소수가 결과로 튀어나온다.
결과적으로 임의의 복소수에 허수 i를 곱한다는 행위는 90도의 회전 변환을 수행한다는 것을 의미한다는 것을 알 수 있다.
그래서 단위 복소수는 다음과 같이 삼각함수를 통해 표현할 수 있다.
복소수의 곱셈 연산의 항등원 (1 + 0 * i)
복소수의 곱셈 연산에 대한 항등원은 실수의 곱셈 연산의 항등원과 마찬가지로 1이다.
다만 허수부의 존재로 인해 곱셈 연산의 결과가 달라질 수 있으므로 허수부는 반드시 0이어야만 한다.
켤레 복소수와 회전변환
임의의 한 복소수의 켤레 복소수는 항상 허수부의 부호가 다르게 표시 된다.
이것을 시각적으로 표현하면 실수 축에 대해 대칭된 형태를 보이는데 다음과 같이 각 -θ만큼 회전변환 한 결과로 볼 수 있다.
모든 예제 코드의 소스파일은
GitHub - onlybooks/gamemath: <이득우의 게임 수학> 공식 깃허브 페이지
GitHub - onlybooks/gamemath: <이득우의 게임 수학> 공식 깃허브 페이지
<이득우의 게임 수학> 공식 깃허브 페이지. Contribute to onlybooks/gamemath development by creating an account on GitHub.
github.com
또한 제 개인 깃허브 레포지토리 에 있습니다.
Workspace/C++/GameMath at main · cyphen156/Workspace · GitHub
Workspace/C++/GameMath at main · cyphen156/Workspace
Studying . Contribute to cyphen156/Workspace development by creating an account on GitHub.
github.com
※ 이득우 교수님의 인프런 게임수학강의를 참고하여 작성되었습니다.
'수학 > 게임수학' 카테고리의 다른 글
게임 수학 13장 : 절두체(최적화된 3차원 공간) (2) | 2025.06.17 |
---|---|
내적의 응용 - 삼각형을 통해 추론하기 (0) | 2025.05.09 |
게임 수학 12장-2 : 원근 투영(화면에 현실감을 부여하는 변환) - 깊이와 원근 보정 (2) | 2025.04.04 |
게임 수학 12장-1 : 원근 투영(화면에 현실감을 부여하는 변환) - 원근투영과 동차좌표 (0) | 2025.04.04 |
게임 수학 11장 : 외적(3차원 공간의 분석과 응용) (1) | 2025.04.02 |