본문 바로가기
수학의 재미/아름다운 이론

테일러 전개 #2 : $e$에 대하여

by hustler78 2022. 5. 19.
728x90
반응형

이번 글은

2022.05.19 - [수학의 재미] - 테일러 전개 #1

 

테일러 전개 #1

무한번 미분가능한 함수 $f(x):\mathbb{R} \rightarrow \mathbb{R}$ 이 있다고 합시다. 테일러전개(Taylor Expansion)의 요지는 무한번 미분가능한 함수를 우리가 아주 잘 알고 있는 다항식으로 표현하고자 하는.

sine-qua-none.tistory.com

에서 이어집니다. 조금 지루한 수학얘기를 했었는데요, 테일러 전개로 어떤 결과들을 얻을 수 있는지 얘기해 보겠습니다.

이 글의 주제는

$e$의 근사값 구하기

입니다.

$e$는 Euler's number라고 불리기도 하는, 수학/과학 분야에서 가장 중요하게 쓰이는 숫자중 하나입니다.

전의 글에서

$$ e^x = 1+ x+ \frac1{2!}x^2 + \frac1{3!}x^3 + \cdots $$

가 성립한다고 했습니다.

$x=1$ 을 넣어볼까요? 위 식의 수렴반경은 딱히 없으므로(즉, 모든 실수 $x$에 대해 성립하므로) 아무수나 넣어봐도 되됩니다.

$$ e = 1+1+\frac1{2!} + \frac1{3!} + \frac1{4!} +\cdots \tag{1} $$

입니다.

 

  • 과연 위 등식이 맞는지
  • 우변을 몇 번째 항까지 더 해줘야 이 식이 맞을지

엑셀을 통해 살펴보겠습니다.

엑셀 시트에서 =EXP(1) 를 입력하면 $\exp(1)$을 구해줍니다. 최대한 소수점 자리수를 늘려봅시다.

엑셀은 소수점 포함하여 15 자리의 값을 유효숫자로 제공해줍니다. 위 그림은 $e$의 값을 최대한 늘려놓은 것입니다.

 

수식(1)의 우변의 무한급수 항을 앞에서부터 0번째항, 1번째항, 2번째항,..  이렇게 부르겠습니다.

(원래 $e^x$ 테일러전개의 상수항을 0차항이라 하므로 일관성을 위해 이렇게 부릅니다.)

넉넉하게 20번째 항까지 더해볼까요?

 

$n$번째 항은 $\frac1{n!}$ 입니다. 엑셀에서 factorial을 계산해주는 함수는 =FACT() 입니다. 이를 이용하여 위와 같이 각 항의 값을 구합니다.

항들의 누적 합을 구해봅니다. 위 그림의 수식처럼 0번째 항인 B6셀은 절대참조로 하고 끝항인 B13은 상대참조로 하여 드래그를 해주면 완성됩니다.

실제값인 B1셀의 값과 차이를 계산합니다. 부호를 고려하지 않은 차이이므로 절대값 ABS 함수를 써줍니다.

 

이제 허용오차(tolerance)를 설정합니다. 1억분의 1의 오차까지는 허용하겠다라고 생각하면 아래와 같이 합니다.

B2셀에 tolerance 을 0.00000001을 설정하고 오차가 이것보다 작은 항을 알아내기 위해 E6에 보이는 것처럼 조건식을 써줍니다. 해당 조건이 틀리면 FALSE, 맞으면 TRUE를 반환해 줍니다.

결과를 보니 11번째 항부터 TRUE가 나오네요. 즉,

0번째 항부터 11번째 항까지 더하니 실제값과 오차가 1억분의 1 안쪽으로 들어오더라! 즉
$1+1+\frac1{2!} +\cdots \frac1{11!}$ 을 구하면 꽤 정확하게 $e$의 값이겠구나.

라는 것입니다.

합한 항의 갯수와 실제 값을 같이 차트로 그려보면 아래와 같습니다.

실제값으로 엄청나게 빨리 다가가는 것(수렴하는 것)이 보이죠?


그렇다면 $e$의 값을 다른 방법으로 찾을 수 없을까요? $e$의 원래 기본적인 정의는 다음과 같습니다.

$$e=\lim_{n\rightarrow\infty} \big(1+\frac1n\big)^n $$ 

 

$n$ 아주 커지면 이 정의를 이용하여 $e$를 구할 수 있을 것 같습니다. 한번 엑셀을 통해 구해보죠.

$$ f(n) = \big(1+\frac1n\big)^n $$

라 하겠습니다.

그리고 $n=1, 10, 100, \cdots,$ 이렇게 10배씩 증가시킨 값만 체크해 보겠습니다.

실제값과 오차를 보면 $n$이 1억일때 제일 작습니다. 그런데 웃긴 거 그 이후 숫자부터는 오차가 점점 커지더니 어느순간부터는 아예 $f(n)$값도 $1$이 나와 버립니다. 이는 엑셀이 아주 큰 수에 대해서 연산을 처리하는데 한계가 있어서입니다. 아주 큰 $n$에 대해서 $f(n)$ 속의 $1+1/n$을 1로 처리해 버리기 떄문에 이런 현상이 발생할 가능성이 있습니다.

 

테일러 전개를 이용한 방법과 고전적 정의에 의한 방법 두 가지를 모두 간단하게 알아봤는데, 아무래도 테일러전개에 손을 들어줘야 할 듯 합니다.

 

이처럼 테일러 전개는 수학적으로 중요하지만 구하기 힘든 무리수나 초월수 등의 계산, 또 이러한 숫자들과 관계가 있는 함수들에 대한 근사 분석의 툴로 아주 중요하게 쓰입니다.

 

728x90
반응형

댓글