12 テイラー展開

本時の目標

  1. 1次近似式・2次近似式により,関数の値を1次式や2次式で近似できることを理解する。
  2. 1. を発展させて,テイラー多項式及びマクローリン多項式について理解する。
  3. 指数・対数・三角関数などについてマクローリン多項式を求めることができる。

接線と近似式

\(x\)

\(y\)

関数 \(y = f(x)\) のグラフの点 \(\left(x_0\mbox{,}f(x_0)\right)\) における接線の方程式は

\(y - f(x_0) = f'(x_0)\left(x - x_0\right)\)

でした。この式を \(y = \cdots\) の形に書き換えると

\(f(x) = f(x_0) + f'(x_0)(x - x_0)\)

となります。接線は,接点の極めて近く(上の図では赤い円の内側あたり)で \(f(x)\) のグラフにほぼ重なっていますから,\(x\)\(x_0\) の近くでは

\(f(x) \sim f(x_0) + f'(x_0)(x - x_0) \tag{1}\)

が成り立つということです。\(\sim\) は,高校までの数学などで用いていた ≒ と同じ意味だと思ってください。式 \((1)\) を関数 \(f(x)\)\(x = x_0\) の周りでの 1次近似式 といいます。

例題1

指数関数 \(y = e^x\) の点 \((0\mbox{,}1)\) における接線の方程式は \((e^x)' = e^x\) より

\(\begin{array}{l} y - 1 = e^0 \cdot (x - 0) \\ \mbox{∴}\quad y = x + 1 \end{array}\)

です。したがって,\(e^x\)\(x = 0\) の近くで近似的に

\(e^x \sim 1 + x\)

と書くことができます。実際,関数電卓などで計算をすると

\(\left\{\begin{array}{l} e^{0.1} \approx 1.10517 \\ 1 + 0.1 = 1.1 \end{array}\right.\)

ですから,精度の評価は用途により異なるのでこの差が大きいとも小さいとも言えないのですが,個人的な感覚としてはまぁ近いのではないかと思っています。

ところで,1次近似式とは「1次式での近似」ということです。それならば,2次近似式もあるのだろうか?という疑問が当然湧いてきます。あります。\(y = e^x\) のグラフは曲線ですから,曲線で近似した方がより近い値を得られるという期待もあります。

1次近似式は,\(f(x)\)\(g(x_0) = f(x_0)\) かつ \(g'(x_0) = f'(x_0)\) を満たす1次式 \(g(x)\) で近似しています。そこで,次に

\(g(x_0) = f(x_0)\mbox{,}g'(x_0) = f'(x_0)\mbox{,}g''(x_0) = f''(x_0)\)

を満たす2次式を作りましょう。まず,

\(g(x) = ax^2 + bx + c\)

とおくと,次の式が成り立ちます。

\(\left\{\begin{array}{l} ax_0^2 + bx_0 + c = f(x_0) \\ 2ax_0 + b = f'(x_0) \\ 2a = f''(x_0) \end{array}\right.\)

この式を \(a\)\(b\)\(c\) についての連立方程式と考えて解くと

\(\left\{\begin{array}{l} \displaystyle a = \frac{1}{2}f''(x_0) \\ b = f'(x_0) - f''(x_0) \cdot x_0 \\ \displaystyle c = f(x_0) - f'(x_0) \cdot x_0 + \frac{1}{2}f''(x_0) \cdot x_0^2 \end{array}\right.\)

この結果を \(g(x) = ax^2 + bx + c\) に代入して,さらに \(f(x_0)\)\(f'(x_0)\)\(f''(x_0)\) について整理します。

\(g(x)\begin{array}[t]{l} \displaystyle = \frac{1}{2}f''(x_0)x^2 \\ \quad + \left\{f'(x_0) - f''(x_0) \cdot x_0 \right\}x \\ \displaystyle \quad + f(x_0) - f'(x_0) \cdot x_0 + \frac{1}{2}f''(x_0) \cdot x_0^2 \\ \displaystyle = f(x_0) + f'(x_0)(x - x_0) + \frac{f''(x_0)}{2}(x - x_0)^2 \end{array}\)

ナント!! とても美しい形にまとまりました。このように得られた式を \(f(x)\)2次近似式 といいます。

\[f(x) \sim f(x_0) + f'(x_0)(x - x_0) + \frac{f''(x_0)}{2}(x - x_0)^2\]

例第2

指数関数 \(y = e^x\) の2次近似式を求めましょう。\((e^x)'' = e^x\) ですから,1次近似式の

\(e^x \sim 1 + x\)

の後ろに,さらに \(\displaystyle \frac{e^0}{2}(x - 0)^2 = \frac{1}{2}x^2\) を付け加えます。

\(\displaystyle e^x \sim 1 + x + \frac{1}{2}x^2\)

それでは,この式に \(x = 0.1\) を代入しましょう

\(\displaystyle 1 + 0.1 + \frac{1}{2}(0.1)^2 = 1.105\)

期待どおりに \(e^{0.1}\) の値に近づきました。

テイラー多項式・マクローリン多項式

関数 \(f(x)\) の1次近似式を作るためには,導関数 \(f'(x)\) が存在しなければなりません。さらに,2次近似式を作るためには,2次導関数 \(f''(x)\) が存在しなければなりません。それでは,関数 \(f(x)\) が3階,4階と微分可能であれば,\(f(x)\) を3次や4次の多項式で近似することができるのでしょうか? 実はこれもできます。\(f(x)\)\(n\) 回微分可能(微分可能な \(x\) の範囲を吟味する必要はありますが・・・)であれば,\(f(x)\) は次のように \(x\)\(n\) 次多項式で近似することができます。

テイラー多項式

\(f(x) \begin{array}[t]{l}\displaystyle \sim f(x_0) + f'(x_0)(x - x_0) + \frac{f''(x_0)}{2}(x - x_0)^2 \\ \displaystyle \hspace{3em} + \cdots + \frac{f^{(n)}(x_0)}{n!}(x - x_0)^n\end{array}\)

これを テイラー多項式 といいます。また,\(x_0 = 0\) のとき,すなわち \(x = 0\) におけるテイラー多項式を特に マクローリン多項式 といいます。

マクローリン多項式

\(\displaystyle f(x) \sim f(0) + f'(0)x + \frac{f''(0)}{2}x^2 + \cdots + \frac{f^{(n)}(0)}{n!}x^n\)

本時は,扱いやすいマクローリン多項式を中心に学びます。

例題3

\(e^x\)\(\sin x\)\(\cos x\) は何階でも微分可能です。そこで,これらの関数のマクローリン多項式を求めましょう。

(1) \(e^x\) のマクローリン多項式

\((e^x)^{(n)} = e^x\) でしたから,\(x = 0\) における \(n\) 次の微分係数は常に \(1\) です。したがって

\(\displaystyle e^x \sim 1 + x + \frac{1}{2}x^2 + \frac{1}{6}x^3 + \frac{1}{24}x^4 + \frac{1}{120}x^5 + \cdots\)

(2) \(\sin x\) のマクローリン多項式

\(\displaystyle (\sin x)^{(n)} = \sin\left(x + \frac{\pi n}{2}\right)\) でしたから,\(x = 0\) における \(n\) 次微分係数は

\(\sin 0 = 0\)\(\displaystyle \sin \frac{\pi}{2} = 1\)\(\sin \pi = 0\)\(\displaystyle \sin \frac{3\pi}{2} = -1\)

を繰り返します。したがって

\(\sin x\begin{array}[t]{l} \displaystyle \sim 0 + 1 \cdot x + \frac{0}{2}x^2 + \frac{-1}{6}x^3 + \frac{0}{24}x^4 + \frac{1}{120}x^5 + \cdots \\ \displaystyle = x - \frac{1}{6}x^3 + \frac{1}{120}x^5 + \cdots \end{array}\)

(3) \(\cos x\) のマクローリン多項式

\(\displaystyle (\cos x)^{(n)} = \cos\left(x + \frac{\pi n}{2}\right)\) でしたから,\(x = 0\) における \(n\) 次微分係数は

\(\cos 0 = 1\)\(\displaystyle \cos \frac{\pi}{2} = 0\)\(\cos \pi = -1\)\(\displaystyle \cos \frac{3\pi}{2} = 0\)

を繰り返します。したがって

\(\cos x\begin{array}[t]{l} \displaystyle \sim 1 + 0 \cdot x + \frac{-1}{2}x^2 + \frac{0}{6}x^3 + \frac{1}{24}x^4 + \frac{0}{120}x^5 + \cdots \\ \displaystyle = 1 - \frac{1}{2}x^2 + \frac{1}{24}x^4 + \cdots \end{array}\)

GeoGebra 等によるテイラー多項式

GeoGebra や Wolfram Alpha を用いると,テイラー多項式を求めることもできます。

GoeGebra によるテイラー多項式

関数 \(f(x)\)\(x = x_0\) における \(n\) 次のテイラー多項式を求めるためには,次のように入力します。

\(\mbox{TaylorPolynomial}(f(x)\mbox{,}x_0\mbox{,}n)\)

もちろん,テイラー多項式のグラフも表示されます。

\(\mbox{TaylorPolynomial}(f(x)\mbox{,}0\mbox{,}n)\)

とすれば,マクローリン多項式を求めることができます。

Wolfram Alpha は柔軟に作られているので,GoeGebra と同じ書き方で同様の結果を得ることができますが,

\(\begin{array}{l} \mbox{Taylor}(f(x)\mbox{,}x_0\mbox{,}n) \\ \mbox{Series}(f(x)\mbox{,}x_0\mbox{,}n) \end{array}\)

などの方が入力を簡単に済ませられます。

課題1

GeoGebra を用いて,関数 \(f(x) = e^x\) のマクローリン多項式を求めましょう。次数を3,4,5,6 と増やして,マクローリン多項式のグラフが \(e^x\) のグラフに近づく様子を確認してください。

課題2

下の図には,関数 \(\sin x\) のグラフが青線で描かれています。テキストボックスに多項式を入力して Draw ボタンを押すと,入力した多項式のグラフが赤線で描かれます。\(\sin x\) のマクローリン多項式を入力して,次数を上げるとマクローリン多項式のグラフが \(\sin x\) のグラフに近づくことを確認しましょう。

\(\sin x\) \(\cos x\) 

\(x\)

\(y\)

5次のマクローリン多項式で \(\displaystyle -\frac{\pi}{2} \leqq x \leqq \frac{\pi}{2}\) の範囲が近似され,7次のマクローリン多項式ならば,ほぼ \(-\pi \leqq x \leqq \pi\) の範囲が近似できそうです。
ラジオボタンで \(\cos x\) を選択すると,\(\cos x\) について同様の確認ができます。

テイラーの定理とテイラー展開

1次近似式・2次近似式から一挙にテイラー多項式・マクローリン多項式に話しが飛んでしまい,具体的な関数のマクローリン多項式を求める方法を見てきました。話しが後先になってしまいましたが,3次以上のテイラー多項式が正しいことを示しておく必要があります。それを保証するのが テイラーの定理 です。

テイラーの定理

\(f(x)\)\(\alpha \leqq x \leqq \beta\)\(n\) 回微分可能であり,\(\alpha < a < b < \beta\) とする。このとき

\(f(b) \begin{array}[t]{l}\displaystyle = f(a) + f'(a)(b - a) + \frac{f''(a)}{2}(b - a)^2 \\ \displaystyle \quad + \cdots + \frac{f^{(n - 1)}(a)}{(n - 1)!}(b - a)^{n - 1} + \frac{f^{(n)}(c)}{n!}(b - a)^n \end{array}\)

を満たす \(c\ (a < c < b)\) が存在する。

証 明

\(F(x) \begin{array}[t]{l}\displaystyle = f(x) + f'(x)(b - x) + \frac{f''(x)}{2}(b - x)^2 \\ \displaystyle \quad + \cdots + \frac{f^{(n - 1)}(x)}{(n - 1)!}(b - x)^{n - 1} + \frac{A}{n!}(b - x)^n \end{array}\)

とおきます。ただし,定数 \(A\)\(F(a) = F(b)\) となるように定めます。すると,平均値の定理により,\(F'(c) = 0\ (a < c < b)\) を満たす \(c\) が存在します。

\(F'(x)\begin{array}[t]{l} \displaystyle = f'(x) - f'(x) \\ \quad + f''(x)(b - x) - f''(x)(b - x) \\ \displaystyle \quad + \frac{f^{(3)}(x)}{2}(b - x)^2 - \frac{f^{(3)}(x)}{2}(b - x)^2 \\ \hspace{4em} \vdots \\ \displaystyle \quad + \frac{f^{(n)}(x)}{(n - 1)!}(b - x)^{n - 1} + \frac{A}{(n - 1)!}(b - x)^{n - 1} \\ \displaystyle = \frac{f^{(n)}(x)}{(n - 1)!}(b - x)^{n - 1} + \frac{A}{(n - 1)!}(b - x)^{n - 1} \end{array}\)

\(\begin{array}[t]{l} \displaystyle \mbox{∴}\quad \frac{f^{(n)}(c)}{(n - 1)!}(b - c)^{n - 1} - \frac{A}{(n - 1)!}(b - c)^{n - 1} = 0 \\ \mbox{∴}\quad A = f^{(n)}(c) \end{array}\)

一方で,\(f(b) = F(b) = F(a)\) だから

\(f(b) \begin{array}[t]{l}\displaystyle = f(a) + f'(a)(b - a) + \frac{f''(a)}{2}(b - a)^2 \\ \displaystyle \quad + \cdots + \frac{f^{(n - 1)}(a)}{(n - 1)!}(b - a)^{n - 1} + \frac{f^{(n)}(c)}{n!}(b - a)^n \end{array}\)

これで,テイラーの定理が証明できました。テイラーの定理に表れる最後の項 \(\displaystyle \frac{f^{(n)}(c)}{n!}(b - a)^n\) は,関数 \(f(x)\) とテイラー多項式との誤差を表していて,ラグランジュの剰余項といいます。もし,\(n \to \infty\) のときに剰余項が \(0\) に収束するならば

\(\displaystyle f(x) = \sum_{k = 0}^{\infty} \frac{f^{(k)}(x_0)}{(k)!}(x - x_0)^k\)

が成り立って,この式の右辺を関数 \(f(x)\)\(x = x_0\) における テイラー展開 といいます。また,\(x = 0\) におけるテイラー展開を特に マクローリン展開 といいます。

テイラー多項式の次数を上げていったとき収束するか否か,つまりテイラー展開が存在するかどうかは少々難しい問題です。また,変数 \(x\) がある範囲にあるときは収束する,というような場合もあります。ただ,ここではそのような問題には触れません。これまで学んできた関数について,ある次数までのテイラー多項式・マクローリン多項式を求めることができれば,目標達成です。

問題演習

課題3

次の関数について,5次のマクローリン多項式を求めましょう。

  1. \(\displaystyle f(x) = \frac{1}{1 - x}\) 解答 隠す
  2. \(\displaystyle f(x) = \log(x + 1)\) 解答 隠す
  3. \(\displaystyle f(x) = \sqrt{1 - x}\) 解答 隠す

【参考図書】理工系入門 微分積分(裳華房)

最終更新日時: 2021年 03月 5日(金曜日) 17:03