テイラー級数エクスプローラー

関数と中心 a、次数 n を選んでみましょう。破線の多項式は、a での値と n 階までの導関数の値が f と一致します。x の位置にあるオレンジ色の線分が実際の誤差、ラグランジュの誤差上界がその誤差の取りうる最大の大きさを表します。

テイラーの公式 Pn(x)=∑k=0nf(k)(a)k!(x−a)kP_n(x)=\sum_{k=0}^{n}\frac{f^{(k)}(a)}{k!}(x-a)^{k}
ラグランジュの剰余項 Rn(x)=f(n+1)(ξ)(n+1)!(x−a)n+1,ξ∈(a,x)∣Rn(x)∣≤M ∣x−a∣n+1(n+1)!\begin{aligned}&R_n(x)=\frac{f^{(n+1)}(\xi)}{(n+1)!}(x-a)^{n+1},\quad\xi\in(a,x)\\ &|R_n(x)|\le\frac{M\,|x-a|^{n+1}}{(n+1)!}\end{aligned}
覚えておきたい級数 ex=1+x+x22!+⋯ ,sin⁡x=x−x33!+⋯cos⁡x=1−x22!+⋯ ,ln⁡(1+x)=x−x22+⋯\begin{aligned}&e^{x}=1+x+\frac{x^{2}}{2!}+\cdots,\quad\sin x=x-\frac{x^{3}}{3!}+\cdots\\ &\cos x=1-\frac{x^{2}}{2!}+\cdots,\quad\ln(1+x)=x-\frac{x^{2}}{2}+\cdots\end{aligned}
インタラクティブシミュレーションを読み込んでいます...

レッスン

理論 — テイラー級数エクスプローラー

a を中心とする f の n 次のテイラー多項式とは、a での関数の値と n 階までの導関数の値が f と一致する多項式です。Pn(x) = Σ f(k)(a)(x − a)k/k! と表され、和は k = 0 から n まで取ります。中心が a = 0 の場合は、マクローリン多項式ともいいます。

各記号の意味

a
展開の中心。Pₙ と f の値が一致する点
n
次数。この階数まで導関数の値をそろえる
Rₙ(x)
剰余項 f(x) − Pₙ(x)

公式の導き方

  1. 値をそろえ、次に傾きをそろえます。P0 = f(a) は a での高さです。f′(a)(x − a) を加えると P1 になり、微分のページで見た接線が得られます。
    P1(x)=f(a)+f′(a)(x−a)P_1(x)=f(a)+f'(a)(x-a)
  2. k! で割る理由。ck(x − a)k を k 回微分すると ck·k! が残り、ほかの項はすべて a で0になります。f(k)(a) と一致させるには、係数を f(k)(a)/k! にすればよいのです。
    dkdxk ck(x−a)k=ck k! ⇒ ck=f(k)(a)k!\frac{d^{k}}{dx^{k}}\,c_k(x-a)^{k}=c_k\,k!\ \Rightarrow\ c_k=\frac{f^{(k)}(a)}{k!}
  3. sin x を0のまわりで展開します。0での値は、微分するたびに 0, 1, 0, −1 と繰り返します。そのため奇数べきの項だけが残り、符号は交互に変わります。
    sin⁡x=x−x33!+x55!−⋯\sin x=x-\frac{x^{3}}{3!}+\frac{x^{5}}{5!}-\cdots
  4. 誤差の上界を求めます。ラグランジュの剰余項には、a と x の間の未知の点 ξ における n + 1 階導関数が現れます。その絶対値を区間内の最大値 M で押さえれば、f(x) の値を使わずに誤差の上界が求まります。
    ∣Rn(x)∣=∣f(n+1)(ξ)∣(n+1)! ∣x−a∣n+1≤M ∣x−a∣n+1(n+1)!\begin{aligned}|R_n(x)|&=\frac{|f^{(n+1)}(\xi)|}{(n+1)!}\,|x-a|^{n+1}\\ &\le\frac{M\,|x-a|^{n+1}}{(n+1)!}\end{aligned}
  5. 既知の級数から新しい級数を作ります。初めから微分し直さなくても、既知の級数への代入、級数どうしの積、項別積分が使えます。e−x² なら、eu の級数に u = −x² を代入すれば求まります。
    e−x2=1−x2+x42!−x63!+⋯e^{-x^{2}}=1-x^{2}+\frac{x^{4}}{2!}-\frac{x^{6}}{3!}+\cdots

微分のページで見た割線のずれも、テイラー展開の一項

微分のページでは、割線の傾きと接線の傾きに約 ½f″(x)·h のずれがありました。f(x + h) = f(x) + f′(x)h + ½f″(x)h² + ⋯ と展開し、f(x) を引いて h で割ると、割線の傾きは f′(x) + ½f″(x)h + ⋯。ずれは、その次の項から生じていたのです。同じ展開で、リーマン和のページの結果も説明できます。小区間の中点を中心に f を展開すると、f′ の項は中点に関して奇関数になるため、その小区間で積分すると0になります。その結果、中点則には f″ による誤差が残り、小区間ごとに h³ のオーダーとなります。一方、左端の値を使う方法では f′ による誤差が残り、h² のオーダーになります。

どこでも滑らかでも、テイラー級数と一致するとは限らない

ラグランジュは1797年、すべての関数が自分のテイラー級数と一致すると仮定して微積分の理論を組み立てました。1823年にコーシーが示した反例は、f(x) = e−1/x²、ただし f(0) = 0 とする関数です。何階でも微分でき、x = 0 ではすべての導関数の値が0になります。そのため、0を中心とするテイラー多項式はどの次数でも0ですが、関数自体は x ≠ 0 のすべての点で正です。いくら項を増やしても近づきません。何階でも微分できる関数を滑らかな関数といい、各点の近くで自分のテイラー級数と一致する関数を解析関数といいます。滑らかであることから、解析的であることは導けないのです。

テイラー級数:中心からどこまで離れても使えるか

どのようなテイラー近似でしょうか

テイラー多項式は、ある一点で関数の値と n 階までの導関数の値をそろえたものです。その点を離れると、関数とのずれが生じます。ずれの増え方を左右するのは、係数が小さくなる速さと、近くに特異点があるかどうか。収束半径の内側では項を増やすと近似がよくなりますが、外側ではいくら増やしても収束しません。項を増やすより、中心を移すほうが効果的なこともあります。

中心付近ではよく合い、遠くでは役に立たない ε ∝ (x − a)n+1
階乗がべき乗を上回り、どこでも収束する xn/n! → 0, R = ∞
収束半径を超えると、項を増やしても収束しない ln(1 + x): R = 1
項を増やすより、中心を近づける Δa ≠ 0, Δn = 0

01

中心付近ではよく合い、遠くでは役に立たない

状況: 性質のよい関数を低次の多項式で近似しています。中心の近くでは正確でも、離れると誤差が急に大きくなります。

級数: ε ∝ (x − a)n+1

計算例: sin x ≈ x − x³/6 に x = 1 を代入すると 0.8333。真の値は 0.8415 で、誤差は 0.008 です。x = 3 では、真の値 0.141 に対して近似値は −1.5 になります

この例を開く: sin x、3次
中心付近ではよく合い、遠くでは役に立たない. 3次多項式はおよそ一ラジアンまでは sin に沿いますが、その先ではまったく違う方向へ離れていきます。 性質のよい関数を低次の多項式で近似しています。中心の近くでは正確でも、離れると誤差が急に大きくなります。
3次多項式はおよそ一ラジアンまでは sin に沿いますが、その先ではまったく違う方向へ離れていきます。

02

階乗がべき乗を上回り、どこでも収束する

状況: 係数の分母に階乗があるため、べき乗の増加を上回る速さで係数が小さくなります。収束半径は無限大です。

級数: xn/n! → 0, R = ∞

計算例: eˣ ≈ 1 + x + x²/2 + x³/6 + x⁴/24 + x⁵/120 に x = 1 を代入すると 2.71667。e = 2.71828 に対し、六項で有効数字三桁が合います

この例を開く: eˣ、5次
階乗がべき乗を上回り、どこでも収束する. 5次ですでに、表示範囲全体で指数関数の曲線をよくたどっています。 係数の分母に階乗があるため、べき乗の増加を上回る速さで係数が小さくなります。収束半径は無限大です。
5次ですでに、表示範囲全体で指数関数の曲線をよくたどっています。

03

収束半径を超えると、項を増やしても収束しない

状況: 中心から有限の距離に特異点があります。その距離より内側では級数は収束し、外側では何項まで取っても発散します。

級数: ln(1 + x): R = 1

計算例: ln(1 + x) を六項で近似すると、x = 0.8 では真の値 0.5878 に対して 0.5701。ゆっくりと収束しています。x = 1.2 では項が大きくなり、和も離れていきます

この例を開く: ln(1 + x)、収束の境界付近
収束半径を超えると、項を増やしても収束しない. 収束半径の内側では多項式が曲線に沿いますが、外側では離れたまま戻りません。 中心から有限の距離に特異点があります。その距離より内側では級数は収束し、外側では何項まで取っても発散します。
収束半径の内側では多項式が曲線に沿いますが、外側では離れたまま戻りません。

04

項を増やすより、中心を近づける

状況: 展開の中心から遠い点で精度が必要な場合です。その点の近くで展開し直せば、次数を上げずに近似を改善できます。

級数: Δa ≠ 0, Δn = 0

計算例: cos x を4次で近似し、x = 2 で比べます。真の値 −0.416 に対し、中心が0なら −0.333、中心が1なら −0.4086。誤差は十一分の一になります

この例を開く: 中心が1の cos x
項を増やすより、中心を近づける. 次数は同じでも、中心が違うと精度が変わります。1を中心とする展開は、x = 2 で曲線によく沿っています。 展開の中心から遠い点で精度が必要な場合です。その点の近くで展開し直せば、次数を上げずに近似を改善できます。
次数は同じでも、中心が違うと精度が変わります。1を中心とする展開は、x = 2 で曲線によく沿っています。

全プロセスの詳細解説

  1. 3次のマクローリン多項式で sin 1 を近似し、誤差を評価する 5 ステップ

    3次のマクローリン多項式で sin 1 を近似し、真の値を調べる前に誤差の上界を求めましょう。答えがわかって初めて計算できる上界では、近似の保証になりません。

    この問題をツールで開く

    1. マクローリン展開には0での導関数の値が必要です。sin の導関数は四回微分すると元に戻り、最初の四つのうち二つは0になります。そのため、多項式は短くまとまります。

      f(x)=sin⁡x:f(0)=0, f′(0)=1, f′′(0)=0, f′′′(0)=−1f(x)=\sin x:\quad f(0)=0,\ f'(0)=1,\ f''(0)=0,\ f'''(0)=-1
    2. P₃ は二項だけで、補正は x³/6 を引くことだけです。1 が 0.83333 まで下がり、減少はほぼ 17%。これだけ変わるなら、次の項も無視できないかもしれません。

      P3(x)=x−x36⟹P3(1)=1−16=0.83333P_3(x)=x-\frac{x^3}{6}\quad\Longrightarrow\quad P_3(1)=1-\frac16=0.83333
    3. ここで誤差を見積もれます。sin の級数は、項の絶対値が小さくなる交代級数なので、打ち切り誤差は最初に省いた項の絶対値より小さくなります。その項は x⁵/120。これを計算するのに sin 1 の値は必要ありません。

      ∣R3∣ ≤ ∣x∣55!=1120=0.0083333|R_3|\ \le\ \frac{|x|^{5}}{5!}=\frac{1}{120}=0.0083333
    4. 保証を確かめましょう。真の値は 0.84147 なので、実際の誤差は 0.0081377。先に求めた上界 0.0083333 に、確かに収まっています。

      sin⁡1=0.84147⟹∣sin⁡1−P3(1)∣=0.0081377\sin 1=0.84147\quad\Longrightarrow\quad |\sin 1-P_3(1)|=0.0081377
    5. 上界が実際の誤差に近い理由もわかります。誤差は省いた項すべての和で、この部分も符号が交互に変わります。1/5! だけでは大きすぎ、1/7! を引くと小さすぎる。そこに 1/9! を加えると、表示された誤差とすべての桁が一致します。三項でそこまで求まります。

      15!−17!+19!−⋯=0.0081377,0.00833330.0081377=1.0240\frac{1}{5!}-\frac{1}{7!}+\frac{1}{9!}-\cdots=0.0081377,\qquad \frac{0.0083333}{0.0081377}=1.0240

    解答

    P₃(1) = 0.833333、真の値は 0.841471、誤差は 0.0081377 です。大切なのは、数値を求めた順序です。sin 1 を求める前に 1/120 = 0.0083333 という上界がわかり、実際の誤差をわずか 2.4% 上回るだけでした。精度の保証がついた近似には、たまたま値が近いだけの近似にはない価値があります。このページのラグランジュの行では、P₃ を3次多項式として扱うため、上界は 0.035061 と表示されます。次数を4にすると、sin では多項式は同じまま、ラグランジュの誤差上界も 1/120 になります。5次まで進めると、同じ考え方で 1/5040 が得られます。ラグランジュの行では、同じ多項式となる6次でこの上界が表示されます。答えの数字を一桁も計算する前に、小数第三位までの精度を保証できるのです。

    P3(1)=0.83333,∣R3∣≤1120 first, then 0.0081377P_3(1)=0.83333,\qquad |R_3|\le\tfrac{1}{120}\ \text{first},\ \text{then}\ 0.0081377
  2. 誤差の上界を先に求めて √e を近似する 4 ステップ

    eˣ の4次のマクローリン多項式で √e を近似し、e0.5 の値を使わずに誤差の上界を求めましょう。

    この問題をツールで開く

    解答を表示
    1. eˣ は何回微分しても eˣ で、0での値は1です。したがって、各係数は 1/k! になります。

      P4(x)=1+x+x22+x36+x424P_4(x)=1+x+\frac{x^{2}}{2}+\frac{x^{3}}{6}+\frac{x^{4}}{24}
    2. x = 0.5 を代入すると、

      P4(0.5)=1+0.5+0.125+0.1256+0.062524=211128=1.6484375P_4(0.5)=1+0.5+0.125+\frac{0.125}{6}+\frac{0.0625}{24}=\frac{211}{128}=1.6484375
    3. ラグランジュの誤差上界には、0 ≤ t ≤ 0.5 での5階導関数 eᵗ の最大値 M が必要です。e0.5 を知らなくても、e < 3 から e0.5 < √3 < 2 が使えます。

      ∣R4(0.5)∣≤M (0.5)55!<2⋅0.03125120=0.00052083|R_4(0.5)|\le\frac{M\,(0.5)^{5}}{5!}<\frac{2\cdot0.03125}{120}=0.00052083
    4. ページでは正確な M = e0.5 を使うため、上界はさらに小さくなります。実際の誤差も併せて見ると、どちらの上界にも収まっています。

      1.648721⋅0.03125120=0.00042935,∣e−P4(0.5)∣=0.00028377\frac{1.648721\cdot0.03125}{120}=0.00042935,\qquad\left|\sqrt e-P_4(0.5)\right|=0.00028377

    解答

    √e ≈ 1.648438。e < 3 だけから、誤差が 0.00052 未満であると保証できます。実際の誤差は 0.00028377 です。M を大きめに見積もっても、上界としての保証は有効です。ただし、保証できる精度は控えめになります。

  3. 0以外の点を中心とするテイラー多項式 4 ステップ

    4を中心とする √x の2次のテイラー多項式を求め、それを使って √4.1 を近似し、誤差の上界も求めましょう。

    この問題をツールで開く

    解答を表示
    1. 4での導関数の値は、

      f(4)=2,f′(4)=12⋅4−1/2=14,f′′(4)=−14⋅4−3/2=−132f(4)=2,\quad f'(4)=\tfrac12\cdot4^{-1/2}=\tfrac14,\quad f''(4)=-\tfrac14\cdot4^{-3/2}=-\tfrac{1}{32}
    2. それぞれ k! で割ると、

      P2(x)=2+x−44−(x−4)264P_2(x)=2+\frac{x-4}{4}-\frac{(x-4)^{2}}{64}
    3. x = 4.1 では x − 4 = 0.1 なので、

      P2(4.1)=2+0.025−0.00015625=2.02484375P_2(4.1)=2+0.025-0.00015625=2.02484375
    4. 3階導関数 (3/8)x−5/2 は区間 [4, 4.1] の左端で最大となり、その値は 3/256 です。

      ∣R2(4.1)∣≤3256 (0.1)33!=1.9531×10−6|R_2(4.1)|\le\frac{\tfrac{3}{256}\,(0.1)^{3}}{3!}=1.9531\times10^{-6}

    解答

    √4.1 ≈ 2.024844、誤差は 1.9531 × 10⁻⁶ 未満です。実際の誤差は 1.9231 × 10⁻⁶ で、上界に近い値です。4から 4.1 の間では3階導関数の値がほとんど変わらないためです。中心を4に選んだのは、そこで √x の値を簡単に求められるから。0では微分できないので、0を中心とするテイラー多項式は0次までしか作れません。

  4. 代入で級数を作り、積分する 4 ステップ

    e−x² のマクローリン級数を x⁶ の項まで求め、それを使って e−x² の0から 0.5 までの定積分を近似しましょう。

    この問題をツールで開く

    解答を表示
    1. e−x² を六回微分するのは手間がかかります。eᵘ の級数に u = −x² を代入しましょう。

      eu=1+u+u22+u36+⋯ ⇒ e−x2=1−x2+x42−x66+⋯e^{u}=1+u+\frac{u^{2}}{2}+\frac{u^{3}}{6}+\cdots\ \Rightarrow\ e^{-x^{2}}=1-x^{2}+\frac{x^{4}}{2}-\frac{x^{6}}{6}+\cdots
    2. x = 0.5 でページの値と比べると、

      P6(0.5)=1−0.25+0.03125−0.0026042=0.778646P_6(0.5)=1-0.25+0.03125-0.0026042=0.778646
    3. 0から 0.5 まで項別に積分すると、

      ∫00.5(1−x2+x42−x66)dx=0.5−0.1253+0.0312510−0.007812542=0.461272\int_0^{0.5}\Bigl(1-x^{2}+\frac{x^{4}}{2}-\frac{x^{6}}{6}\Bigr)dx=0.5-\frac{0.125}{3}+\frac{0.03125}{10}-\frac{0.0078125}{42}=0.461272
    4. 各項は符号が交互に変わり、絶対値が小さくなるので、誤差は最初に省いた項の絶対値未満です。この項は x⁸/4! の積分から得られます。

      ∫00.5x84! dx=(0.5)9216=0.0000090\int_0^{0.5}\frac{x^{8}}{4!}\,dx=\frac{(0.5)^{9}}{216}=0.0000090

    解答

    積分の近似値は 0.461272、誤差は 0.0000090 以内です。真の値は 0.461281。この関数の不定積分は初等関数では表せないため、級数やリーマン和を使って値を計算します。

  5. 級数で極限を求める 2 ステップ

    x → 0 のときの (sin x − x)/x³ の極限を求めましょう。

    解答を表示
    1. sin x を級数で置き換えると、x が消えます。

      sin⁡x−xx3=(x−x36+x5120−⋯ )−xx3\frac{\sin x-x}{x^{3}}=\frac{\bigl(x-\frac{x^{3}}{6}+\frac{x^{5}}{120}-\cdots\bigr)-x}{x^{3}}
    2. 残った各項を x³ で割ると、

      =−16+x2120−⋯ →x→0 −16=-\frac{1}{6}+\frac{x^{2}}{120}-\cdots\ \xrightarrow{x\to0}\ -\frac16

    解答

    極限は −1/6 です。ロピタルの定理でも、三回微分すれば求まります。級数ならすぐに答えが得られ、その値に近づく速さもわかります。次の項が x²/120 だからです。

  6. 級数から高階導関数の値を読み取る 2 ステップ

    f(x) = x²eˣ の5階導関数の x = 0 での値を求めましょう。

    この問題をツールで開く

    解答を表示
    1. eˣ の級数に x² を掛けると、

      x2ex=x2+x3+x42+x56+⋯x^{2}e^{x}=x^{2}+x^{3}+\frac{x^{4}}{2}+\frac{x^{5}}{6}+\cdots
    2. x⁵ の係数は f⁽⁵⁾(0)/5! なので、

      f(5)(0)5!=16 ⇒ f(5)(0)=1206=20\frac{f^{(5)}(0)}{5!}=\frac16\ \Rightarrow\ f^{(5)}(0)=\frac{120}{6}=20

    解答

    f⁽⁵⁾(0) = 20 です。積の微分法を五回使っても同じ値になりますが、計算はずっと長くなります。ページの先頭行には、0での関数の値と導関数の値が六つ並びます。0, 0, 2, 6, 12, 20 です。

  7. 小数第六位までの精度に必要な項数 3 ステップ

    eˣ のマクローリン級数を使って、誤差 0.0000005 未満で e を求めるには、何項必要でしょうか。

    この問題をツールで開く

    解答を表示
    1. x = 1 では、n 次のラグランジュの誤差上界は M/(n + 1)! です。M は [0, 1] での eᵗ の最大値で、e < 3 を使えます。

      ∣Rn(1)∣≤e(n+1)!<3(n+1)!|R_n(1)|\le\frac{e}{(n+1)!}<\frac{3}{(n+1)!}
    2. これが初めて 0.0000005 未満になる n を探します。

      310!=8.3×10−7>5×10−7,311!=7.5×10−8<5×10−7\frac{3}{10!}=8.3\times10^{-7}>5\times10^{-7},\qquad\frac{3}{11!}=7.5\times10^{-8}<5\times10^{-7}
    3. したがって n = 10。定数項を含めて十一項です。ページで10次を選ぶと、

      P10(1)=2.718282,e11!=6.81×10−8,∣e−P10(1)∣=2.73×10−8P_{10}(1)=2.718282,\qquad\frac{e}{11!}=6.81\times10^{-8},\qquad\left|e-P_{10}(1)\right|=2.73\times10^{-8}

    解答

    10次、十一項が必要です。9次の上界は 7.4909 × 10⁻⁷ なので、この評価では十分といえません。ただし、実際の誤差は 3.0289 × 10⁻⁷ で、求める精度に達しています。上界が教えてくれるのは、計算前に保証できる精度です。9次で十分だったことは、e を計算する前にはわかりません。

補充問題(答えのみ)

  1. cos x のマクローリン級数を x⁶ の項まで求めてください。

    答えを表示

    1 − x²/2 + x⁴/24 − x⁶/720。

    cos⁡x=1−x22+x424−x6720+⋯\cos x=1-\frac{x^{2}}{2}+\frac{x^{4}}{24}-\frac{x^{6}}{720}+\cdots
  2. ln(1 + x) のマクローリン級数の初めの四項を使って、ln 1.1 の近似値を求めてください。

    答えを表示

    0.1 − 0.005 + 0.000333 − 0.000025 ≈ 0.095308。真値は 0.095310。

    ln⁡1.1≈0.095308\ln1{.}1\approx0{.}095308
  3. 1/(1 + x²) のマクローリン級数を求め、収束する x の範囲も答えてください。

    答えを表示

    1 − x² + x⁴ − x⁶ + …。収束するのは |x| < 1 の範囲に限られるが、関数 1/(1 + x²) 自体は実数全体で滑らかである。

    11+x2=1−x2+x4−x6+⋯ ,∣x∣<1\frac{1}{1+x^{2}}=1-x^{2}+x^{4}-x^{6}+\cdots,\quad|x|<1

学習の道すじ

なぜ、近づけばすべてはまっすぐに見えるのか

参考文献 (1)