테일러 근사법과 오차, 신기한 특징 3가지
테일러 정리는 해석함수를 어떤 점x=a 근처에서 다항함수의 합으로 표현할 수 있다는 이론입니다. 해석함수를 적당히 n차 다항함수로 근사하는 것을 테일러 근사법이라고 합니다. 자주 사용하는 예시와 테일러 급수의 점화식을 구하는 방법을 살펴보도록 하겠습니다.
테일러 근사법 예시
x≪1이나x→0일때,
tan(x)=x
sin(x)=x
ln(1+x)=x
enx=1+nx
(1+x)n=1+nx
cos(x)=1−x22
위의 식은 테일러 급수에서 적당히 2차 항 전후로 버린 것입니다.
필요성
정신건강과 컴퓨터 계산 속도에 좋습니다. sinx, cosx, ex, lnx, (1+x)n 등이 잔뜩 들어간 식을 위의 예시를 대입해서 정리한다면 세상에 어려운 문제가 없을 것 입니다. 테일러 근사법은 의외로 오차가 매우 적은 방법이기 때문에여기저기서 널리 사용합니다. 다음과 같은 상황에 자주 사용합니다.
1. x≪1인 상황에서 함수값이나 극한값을 구할 때 사용합니다.
2. 컴퓨터가 sin(x), cos(x), ex, ln(x) 등의 그래프를 그릴 때 사용합니다.
3. 컴퓨터 시뮬레이션 알고리즘을 만들 때 기초가 됩니다. (verlet 알고리즘)
4. 적분하기 어려운 함수를 테일러 근사를 이용해 적분해내는 경우가 있습니다. (좀머펠트 전개)
5. 실험 데이터를 분석할 때 사용합니다. 데이터를 테일러 전개하여 xn항마다 의미를 부여합니다.
테일러 급수 점화식
f(x)=a0+a1(x−a)+a2(x−a)2+⋯an(x−a)n⋯
점화식 an을 구하는 아이디어는 미분과 대입입니다. 차수가 낮은 항은 미분해서 0으로 만들고, 차수가 높은 항은 x=a를 대입해서 0으로 만듭니다. (7) 식에 미분을 하고 x=a를 대입하는 과정을 몇 번 반복해보겠습니다.
f(x)를 x로 n번 미분했다는 표시를 dndxnf(x) 대신에 위에첨자를 사용하여 f(n)(x)쓰겠습니다.
f(0)(a)=a0+a1(x−a)+a2(x−a)2+⋯an(0)n⋯=a0
f(1)(a)=a1+2a2(x−a)+3a3(x−a)2+⋯nan(x−a)n−1⋯=a1
f(2)(a)=2a2+6a3(x−a)+12a4(x−a)2+⋯n(n−1)an(x−a)n−2⋯=2a2
f(3)(a)=3!a3+24a4(x−a)+60a5(x−a)2+⋯n(n−1)(n−2)an(x−a)n−3⋯=3!a3
이 과정을 반복하다보면 f(n)(a)=n!an임을 알 수 있습니다.
an=1n!f(n)(a)
이 점화식을 이용하여 테일러 급수를 나타내면 (9) 식과 같습니다.
f(x)=∞∑n=0(1n!f(n)(a))(x−a)n
테일러 급수 예시
eax=∞∑n=0(ax)nn!
cos(x)=∞∑n=0(x2n(2n)!(−1)n)
sin(x)=∞∑n=0(x2n+1(2n+1)!(−1)n)
테일러 근사의 오차
함수f(x)를 테일러 전개하여 m−1번째 항까지 쓰고 그 뒤를 버렸다고 합시다. 이 때 버려지는 부분을 Rm으로 나타냅시다. Rm이 테일러 근사의 오차입니다.
f(x)=m−1∑n=0(x−a)nn!f(n)(a)+Rm
Rm=∞∑n=m(x−a)nn!f(n)
Rm의 크기를 예상하는 방법은 괭장히 쉽습니다. 바로 Rm의 초항과 비슷하다고 생각하는 것입니다.
Rm=∞∑n=m(x−a)nn!f(n)(a)?=(x−a)mm!
그 이유는 대략 이러합니다. 시그마 안에 들어있는 항을 자세히 보시기 바랍니다. x는 작은 수이기 때문에 xn은 엄청 작은 수입니다. 그리고 이 값을 n!으로 나누고 있습니다. n값이 커짐에 따라 더하게 되는 수는 무려 (기하급수X팩토리얼)의 속도로 매우 빠르게 작아집니다. 그래서 Rn에 대한 무한급수의 크기는 초항의 크기와 크게 다르지 않습니다. 초항에서 f(m)(a)의 크기는 함수마다 다르고, (x−a)mm!와 비교해 그렇게 큰 의미 없습니다. 그래서 오차의 크기는 대충 (x−a)mm!와 비슷한 수라고 생각할 수 있습니다. Rm≈(x−a)mm!
신기한 특징 3가지
태일러 근사법은 신기한 특징이 많습니다. 개인적으로 가장 신기한 특징 3가지만 소개하고 마치도록 하겠습니다.
1. e의 정의식
limn→∞(1+1n)n≡e
(10) 식은 오일러가 처음 자연상수 e를 정의할 때 사용한 식입니다. 이 식을 테일러 근사법을 사용해서 설명할 수 있습니다. (4) 식과 (5) 식을 연립합니다.
(1+x)n=enx=1+nx
테일러 근사가 성립하기 위해서는 x가 매우 작아야 합니다. 이 조건을 x=1n일 때, n→∞으로 바꾸어 (11) 식에 대입합니다.
(1+1n)n=en1n=1+n1n
limn→∞(1+1n)n=e=2
e=2라는 이상한 결론이 나온 이유는 두 식을 1차 항까지만 근사해서 생긴 것 입니다.
2. 두배각 공식
(6) 식을 정리하면 cos(x)=1−2(x2)2 입니다. 한편 (2) 식에 의해 sin(x2)=x2이므로 앞에 식에 대입하면 두배각 공식을 얻는다. cos(x)=1−2sin2(x2)
3. 오일러 공식
eiπ−1=0
이 식이 그 유명한 e, i, π, 1, 0과 합(+,−)과 곱(지수형)이 모두 들어간 오일러 공식입니다. 이 공식도 테일러 근사법을 사용하면 괭장히 간단하게 보일 수 있습니다. e(ax)를 2차 항까지 근사시키고 a=i를 대입한 후 (2) 식과 (6)식을 대입하면 됩니다.
eax=1+ax+(ax)22
eix=1+ix+(ix)22=1−x22+ix
eix=cos(x)+isin(x)
(13) 식에 x=π 를 대입해주면 테일러 공식이 완성됍니다. (13) 식은 편의상 x2까지만 전개했지만, 태일러 급수식을 그대로 이용해서 전개해도 같은 결과를 얻을 수 있습니다.
마치며
이상 테일러 근사법에 대해 살펴봤습니다. 혹시 설명이 부족하거나 잘못된 부분이 있다면 덧글이나 방명록으로 피드백 주시면 빠르게 수정하겠습니다.
긴 글 읽어주셔서 감사합니다. 이 글이 도움이 되었다면 공감 버튼 한번 눌러주시기를 부탁드립니다.
'물리 수학' 카테고리의 다른 글
곰셈과 함수에서 근삿값의 오차 (0) | 2017.09.09 |
---|---|
차원 : 수학적 차원과 물리적 차원 (0) | 2017.09.08 |
라그랑주 승수법 풀이(Lagrange multiplier method) (7) | 2017.09.02 |
라그랑주 보간법(Lagrangian Interpolation) (11) | 2017.08.30 |
verlet 알고리즘 : 유도과정과 의미 (0) | 2017.08.26 |
파동방정식 유도 : 역학적 접근 (1) | 2017.07.05 |
파동 방정식 유도 : 수학적 접근 (1) | 2017.07.02 |