테일러다항식과 테일러급수
본문\(\cos x\)의 그래프는 \(x = 0\)에서 높이 1, 기울기 0인 봉우리를 이룬다. 이 봉우리를 이차식 \(a + bx + cx^2\)으로 흉내 내려면, 높이와 기울기를 맞추는 것만으로는 부족하고 휘어진 정도까지 맞추어야 한다. 그렇게 정한 이차식은 \(1 - x^2/2\)인데, \(x = 0.5\)에서 0.875로 \(\cos0.5 = 0.8776\)과 아주 가깝다. 차수를 하나씩 올리면 다항식은 \(\cos x\)를 어디까지 따라갈까? 그리고 오차는 얼마나 될까?
3.6.1도함수를 차례로 맞추다
함수 \(f\)를 \(x = 0\) 근처에서 \(n\)차 다항식 \(p(x) = c_0 + c_1x + \cdots + c_nx^n\)으로 흉내 내려면, 0에서 함숫값과 1계부터 \(n\)계까지의 도함수가 모두 같도록 계수를 정한다. \(p\)를 \(k\)번 미분해 \(x = 0\)을 넣으면 \(k!\,c_k\)만 남으므로, \(c_k = f^{(k)}(0)/k!\)이다. 함숫값을 맞추면 높이가, 1계 도함수를 맞추면 기울기가, 2계 도함수를 맞추면 휘어진 정도가 같아진다. 이렇게 만든 다항식을 테일러다항식이라 하며, 1차 테일러다항식이 곧 접선이다.
\(f\)의 \(x = 0\)에서의 \(n\)차 테일러다항식은 \[p_n(x) = \sum_{k=0}^{n}\frac{f^{(k)}(0)}{k!}x^k\]이다. 오차 \(R_n(x) = f(x) - p_n(x)\)는 0과 \(x\) 사이의 어떤 \(c\)에 대해 \(R_n(x) = \dfrac{f^{(n+1)}(c)}{(n+1)!}x^{n+1}\)이다. \(n \to \infty\)일 때 \(R_n \to 0\)이면 \(f\)는 테일러급수와 같다.
\(\cos x\)의 도함수는 \(\cos, -\sin, -\cos, \sin\)이 되풀이되므로 0에서의 값은 \(1, 0, -1, 0, 1, \ldots\)이다. 그래서 \(\cos x = 1 - \dfrac{x^2}{2!} + \dfrac{x^4}{4!} - \cdots\)이고, 짝수 차 항만 나오는 것은 \(\cos x\)가 우함수이기 때문이다. \(e^x\)는 모든 도함수가 \(e^x\)여서 0에서 모두 1이므로 \(e^x = 1 + x + \dfrac{x^2}{2!} + \cdots\)이다. 나머지의 식에서 \((n+1)!\)이 \(x^{n+1}\)보다 훨씬 빨리 커지므로, 이 두 함수는 모든 \(x\)에서 테일러급수와 같다.1
3.6.2오차의 크기를 미리 알다
테일러다항식으로 어림할 때는 나머지 식으로 오차의 상한을 구할 수 있다. \(\cos x\)는 모든 도함수의 절댓값이 1 이하이므로 \(|R_n(x)| \le \dfrac{|x|^{n+1}}{(n+1)!}\)이다. 그래서 \(x = 0.5\)에서 2차 다항식의 오차는 \(\dfrac{0.5^3}{6} \approx 0.021\) 이하인데, \(\cos\)는 3차 항이 0이므로 사실 3차 다항식과 같아 오차는 \(\dfrac{0.5^4}{24} \approx 0.0026\) 이하이다. 실제 오차 0.0026과 거의 같다. 이렇게 오차를 미리 알 수 있어서, 원하는 정확도에 필요한 차수를 정할 수 있다.
3.6.3예제 풀이
\(e^x\)의 3차 테일러다항식으로 \(e^{0.5}\)를 구하고, 나머지 식으로 오차의 상한을 구하여라. \(e^{0.5} < 1.65\)를 써도 된다. 오차를 \(10^{-5}\) 이하로 하려면 몇 차까지 필요한가?
\(p_3(0.5) = 1 + 0.5 + \dfrac{0.25}{2} + \dfrac{0.125}{6} = 1 + 0.5 + 0.125 + 0.0208333 = 1.6458333\)이다. 나머지는 \(R_3 = \dfrac{e^c}{4!}0.5^4\)이고 \(0 < c < 0.5\)이므로 \(e^c < 1.65\)이다. 그래서 \(R_3 < \dfrac{1.65\times0.0625}{24} \approx 0.0043\)이다. 실제 오차는 \(1.6487213 - 1.6458333 \approx 0.0029\)로 상한 안에 든다.
\(\dfrac{1.65\times0.5^{n+1}}{(n+1)!} \le 10^{-5}\)이 되는 \(n\)을 찾으면, \(n = 5\)일 때 \(1.65\times0.015625/720 \approx 3.6\times10^{-5}\)이고, \(n = 6\)일 때 \(1.65\times0.0078/5040 \approx 2.6\times10^{-6}\)이다. 그래서 6차면 충분하다. 즉 테일러다항식은 한 점에서 함숫값과 도함수들을 차례로 맞추어 함수를 흉내 내는 다항식이고, 나머지 식이 오차의 크기를 미리 알려 주어 필요한 차수를 정할 수 있다.
아래 탐구 카드에서 이차식의 계수를 바꾸며 \(\cos x\)를 가장 잘 흉내 내는 식을 찾고, 차수를 올리며 테일러다항식이 함수를 어디까지 따라가는지 확인해 보자.
- 이 다항식은 1715년 영국의 테일러가 일반적인 형태로 발표했다. \(\ln(1 + x)\)처럼 테일러급수가 \(|x| < 1\)에서만 함수와 같은 경우도 있고, 모든 도함수가 0에서 0인데도 함수는 0이 아닌 \(e^{-1/x^2}\) 같은 예외도 있어, 나머지가 0으로 가는지 꼭 확인해야 한다.
\(f\)의 \(n\)차 테일러다항식은 한 점에서 함숫값과 \(n\)계까지의 도함수를 모두 맞춘 다항식으로, 계수는 \(f^{(k)}(0)/k!\)이며 1차 테일러다항식이 접선이다. 오차는 나머지 \(f^{(n+1)}(c)x^{n+1}/(n+1)!\)로 미리 어림할 수 있고, 나머지가 0으로 가면 함수는 테일러급수와 같다. 처음 질문의 이차식 \(1 - x^2/2\)는 \(\cos x\)의 2차 테일러다항식이어서 \(x = 0.5\)에서 오차가 0.003보다 작고, 차수를 올릴수록 더 멀리까지 맞는다.