개발하는 리프터 꽃게맨입니다.

[수학] 오일러 공식: 허수로 표현하는 회전 변환 본문

컴퓨터 그래픽스/수학

[수학] 오일러 공식: 허수로 표현하는 회전 변환

파워꽃게맨 2024. 7. 25. 18:39

자연지수함수

 

오일러 공식은 삼각함수와 자연지수함수와의 관계를 나타내는 공식이다.

 

무리수 e와 허수 단위 i, 그리고 삼각함수와의 관계를 이용해 나타낸 오일러 공식은 다음과 같다.

오일러 공식을 유도하는 해보도록 하자.

그러기 위해서는 사전지식이 필요하다.

 

무리수 e

야코프 베르누이는 은행의 복리 이자를 연구하던 도중

위 식에 굉장히 큰 값을 x값에 대입할수록 특정 상수에 근접한다는 사실을 알아내게 되었다.

 

x가 굉장히 커질수록 2와 3사이의 어떤 특정한 수 2.71828...... 에 근접한다.

이 수를 무리수 e라고 부른다.

 

이는 보통 오일러 상수 e, 상수 e, 자연 상수 등의 용어로 불리고 있다.

 

이러한 무리수 e는 극한과 무한대의 개념을 사용해 다음과 같이 표현할 수 있다.

극한에 대한 간단한 개념을 풀고나가자면

극한의 결괏값이 특정한 값에 한없이 가까워진다면 이를 수렴한다.

극한의 결괏값이 무한대로 증가하거나 진동한다면 발산한다고 표현한다.

 

위 자연상수식은 무리수 e로 수렴한다고 설명할 수 있다.

 

이런 자연상수를 포함하는 지수함수를 자연지수함수라고 하며, 아래와 같이 식으로 쓸 수 있다.


자연지수함수

 

자연지수 함수는 언저나 (0, 1)을 지나며 x가 커질수록 값이 급격하게 커지는 형태를 띤다.

 

미분

 

도함수

도함수란 임의의 수 x에 대한 미분 계수를 구할 수 있도록 일반화한 함수를 의미한다.

 

미분은 순간 변화율을 의미한다.

이 식을 b - a = h 의 식으로 바꾸면 아래와 같다.

이 값 m을 f(x) 함수의 a 값에서의 미분계수라고 한다.

이를 x에 대해서 일반화시켜보자.

 

이러한 f'(x)을 함수 f(x)의 도함수라고 부른다.


자연지수함수의 도함수

다시 돌아와서 자연지수함수의 도함수를 알아보자.

 

 

위 함수는 자연지수함수 f(x)이다.

자연지수함수의 도함수 f'(x) 를 유도하는 과정은 아래와 같다.

 

자연지수함수의 도함수는 원함수와 동일하다.

즉, 자연지수함수는 무한번 미분 가능하다는 성질을 가진다.


sin함수와 cos함수의 도함수

삼각함수를 구하기 위해서 얻어야할 식은 다음 값이다.

먼저 원의 넓이를 계산하는 공식을 보자.

원의 넓이는 다음과 같이 계산한다.

 

만약 중심각이 θ인 어떤 부채꼴의 넓이를 구한다고 하면 다음과 같이 구할 수 있을 것이다.

단, 여기서 θ의 단위는 라디안이다.

만약, 세타의 값이 2파이가 될 경우, 위 공식은 원의 넓이 공식과 같아지게 된다.

 

이번에는 각이 θ인 어떤 부채꼴안에 삼각형 T1을 만들어보자.

편의상 단위원을 사용한다.

 

 

삼각형 T1의 넓이는 다음과 같다.

이제 선부 OB를 반지름으로 하는 작은 부채꼴을 만들어보자.

 

해당 부채꼴의 넓이는 다음과 같다.

위 식은 다음과 같은 대소관계가 성립된다.

모든 항에 2/세타 를 곱해주면 식은 아래와 같아진다.

이제 세타를 0으로 수렴하도록 해보자. 

 

의 값은 1이다.

의 값 또한 1이다.

 

그렇다면 조임정리에 의해

의 극한값 또한 1이된다.

 

여기서 하나 더 삼각함수의 미분값을 얻어내기위한 극한값이 있는 데 바로 아래와 같다.

이를 증명하면 아래와 같다.

 

이제 sin 도함수와 cos 도함수를 구해보자.

sin 도함수 유도
cos 도함수 유도

 

sin x 의 미분은 cos x

cos x 의 미분은 - sin x 가 됨을 이해할 수 있다.

 

그럼 특징을 보자.

 

sin x을 계속 미분해보겠다.

 

sin x -> cos x -> - sin x -> - cos x -> sin x ...

즉 4번 미분하면 원함수로 돌아온다.

이는 cos도 마찬가지다.

 

즉, 삼각함수 역시 무한번 미분이 가능하다.

 

급수

 

자연지수함수와 sin cos 삼각함수의 미분은 무한번 미분 가능하다는 특징이 있다.

세 함수를 각각 무한 급수로 표현해 볼 것이다.

 

무한 급수를 이해하기 위해서 등비수열에 대해 알아보자.

등비수열

수열이란 규칙에 맞게 나열된 수를 의미한다.

보통 수열은 등비수열과 등차수열로 나뉘는데, 일정한 비율로 증가하는 수열을 등비수열이라고 한다.

 

등비수열은 다음과 같이 나타낼 수 있다.

 

여기서 r은 '일정한 비'를 나타내는 수이며,

이를 공비라고 한다.

 

수열의 첫 번째 항 a 혹은 a1을 초항이라고 한다. 그러면 an은 다음과 같이 나타낼 수 있다.


급수

수열의 개념을 확장해서 수열의 모든 값을 더한 것을 급수하고 한다.

정확히 말하면 부분합의 극한을 의미한다.

 

즉, 급수는 아래와 같이 표현된다.

 

그렇다면 앞서 살펴본 등비수열의 급수는 다음과 같이 표현된다.

등비수열의 급수를 특별하게 기하급수라고 부른다.

기하급수는 무한대로 증가하거나 특정 수로 수렴하는 성질이 있다.

 

예를들어서

이러한 급수가 존재할 때, S의 값을 구해보자.

양변에 1/2을 곱해보자.

그렇다면 위 식에서 아래 식을 빼보자.

s = 1 이다.

 

즉, 급수 s는 1로 수렴한다.

 

이제 위에서 구한 기하급수를 구하는 과정을 일반화 시켜보자.

그전의 등비수열의 부분합 Sn을 구하는 식부터 구해보도록 ㅏㅎㄴ다.

 

초항을 a 등비를 r이라고 할 떄,

 

sn = a + ar + ar² + ... + ar^(n-1)    ...식1

 

여기서 r을 곱하면 다음과 같다.

 

r sn = ar + ar² + ... + ar^n             ...식2

 

식1 - 식2 를 해보자.

 

(1-r) sn = a - ar^n

 

이를 일반화 시키면 아래와 같다.

여기서 급수라고 생각하면 n을 무한대로 보내야 한다.

그러면 식은 다음과 같이 정리된다.

 

여기서 기하급수를 구하기 위해서는 공비가 가지는 수가 중요하다.

 

r = 1 이라면, 분모가 0이 되기에 극한값을 구할 수 없다.

 

이벤에는 r이 1이 아닌 경우를 생각해보자.

만약 r의 절댓값이 1보다 크다면, lim r^n 의 극한값은 무한이므로 발산한다.

 

그러나 r의 절댓값이 1보다 작다면 lim r^n 의 극한값은 0으로 수렴한다.

 

마지막으로 r의 값이 -1이라면, 해당 등비수열은 특정 값을 진동하게 된다.

진동 역시 발산으로 취급한다.

 

가장 눈여겨봐야할 조건은 기하급수가 수렴하기 위한 조건 |r| < 1 이다.

 

이번에는 기하급수에서 한 번 더 나아가 멱급수에 대해서 알아보자.

 

멱급수에서는 기하급수에 더해지는 모든 항의 계수 a의 값이 다를 수 있다.

기하급수는 모든 계수의 값이 동일한 멱급수의 한 종류라고 볼 수 있다.

 

멱급수도 기하급수와 동일하게 특정 조건에 따라 수렴하거나 발산하는데, 이를 판정하기 위한 비판정법에 대해 알아보자.

 

비판정법

비판정법은 멱급수의 항의 계수가 일정한 규칙으로 전개되는 경우, 다음의 극한ㄱ밧을 구해 수렴, 발산 여부를 파악하는 방법이다.

만약 L의 값이 1이라면, 수렴할 수도 발산할 수도 있다.

만약 L의 값이 1미만이라면 수렴한다.

만약 L의 값이 1초과라면 발산한다.

 

 기하 급수 예제에 대해서 멱급수 관점에서 비판정법을 적용해보자.

그렇다면 L의 값은 n과 무관하게 |r|이 나온다.

 

급수가 수렴하기 위해서는 L이 1보다 작아야 한다.

즉 이는 |r| < 1 을 의미하는데, 이는 앞서 살펴본 기하급수가 수렴하기 위한 조건과 동일하다.

 

이와 같이 멱급수가 수렴하기 위해 r이 가져야 할 범위를 수렴구간이라고 한다.

범위의 절반인 1의 값을 수렴반지름이라고 한다.

 

매클로린 급수 

멱급수가 수렴하기 위한 조건을 알아봤으니, 무한 미분 가능한 함수를 멱급수 형태로 바꾸는 방법을 알아보자.

이러한 멱급수를 매클로린 급수 혹은 테일러 급수 라고 말한다.

 

수렴하는 멱급수에서 공비 값을 x로 바꿔서 멱급수를 다음과 같은 함수로 정의해보자.

 

이 함수가 만약 무한 미분 가능하다고 할 때, 해당 멱급수의 미분식은 다음과 같다.

 

원함수 f(x) 를 n차 미분한 도함수의 모든 x에 0을 대입해보자.

 

그렇다면, 각항의 계수값 an과 일정한 규칙을 가지는 상수만 남는다.

이를 팩토리얼을 사용해 다음과 같이 표현할 수도 있다.

 

 

그러면 이를 멱급수의 계수에 대해서 정리하면 다음과 같다.

위 식을 이용해서 테일러 급수를 일반화하면 다음과 같다.

 

앞서 말했듯 테일러 급수는 f(x)를 무한 급수로 표현하는 방법이고 미분도 가능해야 하기에 아래와 같은 조건을 가진다.

1. 함수 f(x)는 연속이어야 한다.

2. 함수 f(x)는 무한미분 가능해야 한다.

3. 테일러 급수가 수렴되어야 한다.

 

자연지수함수의 매클로린 급수 전개

f(x) = e^x

 

 

이를 비판정법으로 수렴여부를 검사해보자.

L < 1 이므로 자연지수함수의 테일러 급수 전개는 수렴한다.

 

sin함수의 매클로린 급수 전개

 

sin 함수의 매클로린 급수 또한 유효하다.

 

cos함수의 매클로린 급수 전개

 

 

따라서 cos 함수의 매클로린 급수 또한 유효하다.

 

자연지수함수, sin, cos 함수의 테일러 급수 꼴 정리

 


매클로린 함수는 컴퓨터에서 어떻게 활용될 수 있을까?

바로 복잡한 함수의 근사값을 구할 떄 유용하게 사용된다.

 

 

사인의 매클로린 함수 꼴이다.

여기서 이것이 급수가 아니고, 부분합이라고 해보자.

 

n = 1 까지만 계산된다면, 정확도는 매우 낮은 테지만 

n의 값이 커질수록 해당 함수의 함숫값은 sin 함수의 값에 근접해진다.

 

해당 매클로린 함수의 그래프를 그려보자.

 

급수의 항이 많아질수록 sin그레프에 근접하는 것을 볼 수 있다.

만약, 급수의 항이 충분하다면 sin 의 함수 값과 급수 값 사이의 오차는 무의미한 수준까지 비스해진다.

이를 통해 컴퓨터는 굉장히 빠르게 함수 값을 구할 수 있다.

 

또한 C++에서 이러한 식은 컴파일타임에 계산할 수 있기 때문에 매우 유리하다.

 

오일러 공식

 

 

위에서 구한 세 급수이다.

먼저 sin x와 cos x 함수 급수를 더해보자.

 

sinx 함수와 cos 함수의 매클로린 급수를 합하면 다음과 같다.

 

이 식은 자연지수함수의 매클로린 급수와 유사한 형태가 되었지만, 몇몇 항의 부호에서 차이가 발생한다.

 

이 식과 자연지수함수를 일치시키기 위해서 필요한 것은 허수이다.

 

e^x 의 x에 ix을 대입해보자.

 

이제 위 두 식의 관계를 찾아보자.

두 식의 차이를 보면 삼각함수의 결합의 짝수 부분에만 허수 i가 존재하면된다.

삼각함수의 결합에서 짝수 부분은 sin x가 맡고 있기 때문에 다음과 같이 증명할 수 있다.

여기서 x대신 각을 도입하면 비로소 오일러 공식을 유도할 수 있다.

우변의 식은 복소평면에서 회전 변환을 담당하는 단위 복소수를 의미했다.

따라서 오일러 공식의 좌변에 위치한 

 

는 복소평면에서의 회전 변환을 의미한다는 것을 알 수 있다.

 

이로써 2차원 평면의 회전을 나타내는 방법이 하나 더 추가됐다.

복소 평면에서 2차원 평면 회전을 나타내는 방법은 아래와 같다.

즉, 복소 평면에서의 회전은 오일러 공식으로 매우 간단하게 자연지수함수로 표현할 수 있게 되었다.

두 각 a, b의 결합도 간단히 표현할 수 있다.

 

연습문제

 

1. 오일러 상수 e 의 값을 구하는 프로그램을 작성하시오.

템플릿 메타 프로그래밍을 사용하여 컴파일 시간에 작성해보자.

템플릿 매개변수는 해당 오일러 상수 e의 정확도를 의미하도록 한다.

 

2. 미분계수와 도함수 간의 관계를 설명하시오.

 

3. 거듭제곱함수 f(x) = x^n 의 도함수가 왜 f'(x) = n x^(n-1) 인가?

 

4. 지수함수 f(x) = e^x 의 도함수가 왜 f'(x) = e^x  인가?

 

5. 아래 식의 극한값이 왜 저렇게 나오는지 설명하시오.

 

6. sin x와 cos x의 도함수를 유도하시오. 

 

7. 자연지수함수와 삼각함수가 무한 번 미분할 수 있음을 보여라

 

8. 등비수열의 부분합 공식을 유도하라. 그리고 해당 공식에서 기하급수 공식을 유도하라.

 

9. 기하급수에 비판정법을 적용했을 때, 등비 r의 수렴구간은 어떻게 되는가

 

10. 테일러 급수 혹은 매클로린 급수의 일반화 공식을 유도하시오.

 

11. 테일러 급수 혹은 매클로린 급수가 성립하기 위한 전제 조건은 무엇인가?

 

12. 자연지수함수, sin함수, cos함수의 각각 테일러 급수 전개가 유효한지 보이고, 유효하다면 해당 함수를 테일러 급수 꼴로 나타내어라

 

13. 다음 조건에 맞추어 알맞은 코드를 작성하시오.

 

<조건>

1) 2차원 회전 행렬을 얻어내는 함수를 구현한다.

2) 매개변수로 육십분법 (일반적으로 사용되는 각도 0~360' 각도 체계) 를 넣어서 올바른 회전 행렬을 얻어낸다.

3) 해당 함수의 결과는 컴파일 시간에 계산되어야 한다.

 

14. 다음의 등식을 증명하시오.