弧長と回転体

弧長とx軸まわりの回転に関する公式を、シンプソン積分で数値的に評価する。

インタラクティブシミュレーションを読み込んでいます...

レッスン

理論 — 弧長と回転体

曲線は直接測定することができないため、弧長は公式ではなく極限として定義されます。曲線を一連の直線状の弦で置き換え、それらの長さを足し合わせ、弦の長さをゼロに向かって縮めていくのです。以下に続く内容はすべて、この1つのアイデアとピタゴラスの定理を組み合わせたものにすぎません。

各記号の意味

f(x)
曲線。x の関数として与えられ、1つの x に対して1つの y が対応します。この制約があるため、プリセットには円全体ではなく半円しか用意されていません。円は横幅の大部分において縦方向に2つの y 値を持つため、単一の f で描くことができないからです。
f'(x)
傾き。被積分関数が参照する唯一の要素です。曲線がどれくらいの高さにあるかは一切関係ありません。[0, 2] にわたる平坦な関数 1 は至る所で傾きが 0 であり、長さはまさに区間の幅そのものである 2 となります。
[a, b]
区間。これは計算の細部というよりも、答えの一部そのものです。放物線は [0, 2] では 4.646784 となり、[0, 1] では 1.478943 となります。半分にならないのは、曲線がより急な部分ほど、同じ幅に対してより多くの長さを詰め込んでいるからです。
n
シンプソン公式に与えられる分割数。これらの中で唯一、曲線自体については何も示していません。定まるのは積分がどれだけ良く近似されるかだけであり、十分であったかどうかを報告するのが 誤差の推定 の行です。

公式の導き方

  1. 曲線上でわずかな間隔 Δx だけ離れた2点をとります。その2点間の直線距離は √(Δx² + Δy²) です。これはピタゴラスの定理そのものであり、それ以外の要素はありません。
  2. 根号の中から Δx を括り出します:√(Δx² + Δy²) = Δx·√(1 + (Δy/Δx)²)。最終的な答えの形がすでに見えてきます。
  3. ここで Δx を小さくしていきます。比 Δy/Δx は導関数 f′(x) となり、小さくなって消えていく各弦は √(1 + f′(x)²) dx だけ寄与します。
  4. それらをすべて足し合わせます:L = ∫ₐᵦ √(1 + f′(x)²) dx。画面に表示される式です。ステップ1の内容も 弦の長さ の行として画面上に表示されており、直線の場合は両者が完全に一致します。[0, 1] において関数を x に設定すると、どちらも 1.414214 と表示されます。この場合、1本の弦がすでに曲線全体を表しているからです。

表示の読み方

弦の長さ の行は単一の線分によるステップ1であるため、2つの値のうち大きい方になることは決してありません。放物線の 4.646784 に対し 4.472136 であり、その差は曲線がどれだけ曲がっているかを表します。誤差の推定 は注意深く読み取ってください。なぜなら、これは真値からの距離ではないからです。表示される値は |L₂ₙ − Lₙ|、つまり n 個の分割と 2n 個の分割の間の不一致であり、計算方法が収束したかどうかを示すものであって、正しい値に到達したかどうかを示すものではありません。

前提
f[a, b] の全域で微分可能であり、そもそも x の関数であること。シンプソン公式は弧長の公式よりも多くのことを仮定しています。つまり、2つの分割区間ごとに放物線で近似できるほど、被積分関数が滑らかであるという仮定です。
成り立たない場合
[0, 3] 上で frac(x) を選択し、積分ステップ数を 400 に設定してみましょう。グラフは3つの垂直な段差によって隔てられた3つの右上がりの線分であり、すべての段差において公式が利用できる導関数が存在しません。それにもかかわらず、この画面は 29.23057 という値を返します。これは段差を無視したときの 4.242641 でもなく、段差を加算したときの 7.242641 でもなく、数値積分プログラムが跳躍をまたいで差分をとってしまった結果です。これを見破る唯一の手がかりはその下にある 誤差の推定 の行の 12.49396 であり、報告している数値の半分近くに達しています。対照的に、たった1つの角の影響はほとんどありません。[−1, 1] における |x| は、厳密解である 2√2 = 2.828427 に対し 2.827046 を返します。積分内部の1つの非微分可能点は、結果に影響を与えるには少なすぎるからです。

同じ曲線、同じ n — それでも一方の答えは十一倍よい 🖖

semicirclesphere のプリセットは、同じ関数を同じ区間で同じ 800 分割で使います。それでも弧長は π = 3.1416 に対して 3.1705、誤差 0.9 % になり、表面積は 4π = 12.5664 に対して 12.5559、誤差はわずか 0.08 % です。違いは被積分関数にあります。√(1 + f′²) は半円が垂直になる x = ±1 で約 71 まで跳ね上がり、弧長の積分にはそれを抑えるものがありません。表面積の積分には |f(x)| という因子があり、その端点でちょうど 0 になります。つまり曲線のいちばん厄介な部分をゼロで掛けているのです。

曲線を回して立体にする 🖖

このツールの2つ目のモードは、旋盤やろくろのように働きます。曲線 y=f(x) を x 軸のまわりに回転させて回転体を作るのです。体積を求めるため、ツールは立体を薄い円板に切り分け、それぞれ半径 f(x) の円として合計します。直線 y=x を 0 から 3 まで回転させれば、体積 9π の完全な円錐が得られます。幾何の公式は不要で、必要なのは積分だけです。

満たせるのに塗れないラッパ 🖖

y=1/x を x=1 から無限大まで x 軸のまわりに回転させると、トリチェリのトランペット(ガブリエルのラッパ)ができます。その体積はちょうど π に収束しますが、表面積は無限大です。この「画家のパラドックス」は、ラッパの内部には π 単位の塗料が入るのに、どんな有限量の塗料でもその内壁を塗り尽くせないことを意味します。エヴァンジェリスタ・トリチェリは1640年代、微積分が正式に確立する前にこれを発見し、彼自身も不合理だと考えました。

練習

自分で確かめる

まず答えを予想し、それから上のコントロールで確かめてください。予想を決めてから答えを開くこと。それが練習になる条件です。

  1. のプリセットを読み込み、区間を a = 0、b = 0.5 に設定してください。球の赤道から半径の半分までを切り取った帯です。表面積は 3.141593 と表示されます。次に高さ 0.5 を保ったまま、帯を a = 0.4、b = 0.9 へずらします。何かを押す前に、新しい表面積を予想してください。

    答えを表示
    やはり 3.141593 です。高さ 0.5 の帯は、どこで切り取っても表面積がちょうど π になります。[−0.25, 0.25] も [−0.9, −0.4] も同じ数値を表示します。体積はまったくそうなりません。これらの帯の体積は 1.439897、0.87441、1.538071 です。極に近いほど各帯の周長は短くなりますが傾きは急になり、この二つがちょうど打ち消し合うので、残るのは高さだけです。アルキメデスはこれを証明し、自分の墓に円柱に内接する球を刻むよう望みました。帯ごとに見ても、球の表面積はそれをちょうど包む円柱の側面と等しいのです。
  2. 上の三つ目の考察は、ガブリエルのラッパが有限の体積と無限の表面積を持つと述べていますが、数値は一つも挙げていません。自分で取りに行きましょう。f(x) = 1/x を選び、a = 1、モードを回転体にして、b = 10、100、1000 のそれぞれで両方の値を読んでください。

    答えを表示
    体積は 2.827433 → 3.110179 → 3.153626 と進み、π に近づきながら一桁ごとの増分が小さくなります。表面積は 15.1775 → 29.6451 → 44.1739 と進み、b を十倍するたびにおよそ 14.5 ずつ増え、それが永久に続きます。ラッパの奥では表面積の被積分関数は実質 2π/x で、その積分は 2π ln b、そして 2π ln 10 = 14.47 です。一桁ごとに一定量だけ増えるものに極限はなく、増分が減っていくものには極限があります。ただし最後の体積は疑ってください。3.153626 は π を超えていますが、それはあり得ません。これほど長い区間では、2000 等分では x = 1 付近の急峻な部分を捉えきれないからです。この超過はラッパではなく、格子のせいです。

全プロセスの詳細解説

  1. 閉形式による0から2までの y = x² の弧長 5 ステップ

    0から2までの y = x² の弧長は 4.646784 である。これを閉形式で導出し、なぜ幸運であったのかを説明せよ。 これは放物線弧の状態である。

    1. 式を立てる。x² の導関数は 2x であるため、被積分関数に含まれるのは 4x² だけであり、それ以上に複雑な項はない。

    2. √(1 + 4x²) の原始関数は標準的であり、1つの代数項と1つの逆双曲線正弦からなる。これは根号の中に二次式がある場合に常に生じる形である。

    3. 端点で値を計算する。下限の寄与はゼロであり、x = 2 における2つの項の値はそれぞれ 4.1231 と 0.5237 になる。

    4. 両端点を結ぶ直線と比較する。この範囲において、曲線は弦よりもわずか 3.9% 長いだけであり、数値的な弧長計算が破綻するまでは一見容易に思えるのはこれが理由である。

    5. 次に、次数を1つ上げて同様の手順を試みる。被積分関数は4次式の平方根となり、ここが初等関数と楕円関数の境界線となる。

    解答

    √17 + ¼ arsinh 4 であり、幸運といったのは、放物線が計算のうまくいくごくわずかな関数の一つだからである。弧長の計算では √(1 + f′²) を積分することになるが、多項式の平方根が初等関数となるのはほんのひと握りの場合に限られる。次数をひとつ上げて y = x³ にすると、被積分関数は √(1 + 9x⁴) となり、これは楕円的であって初等関数で表すことができない。楕円の弧長も同様である — 「楕円積分」という名称の由来はまさにここにある。また、楕円の面積には自明な公式があるのに対し、周長には公式が存在しない理由もこれである。放物線がこの困難を免れるのは、その導関数が一次式であり、1 + f′² が二次式になるからである。そして根号の中の二次式こそ、まさに arsinh 置換が考案された目的そのものなのである。

  2. 単位半円の表面積12.55591と体積4.18879 6 ステップ

    単位半円を回転させると、パネルには表面積 12.55591 と体積 4.18879 が表示される。一方は有効数字6桁まで正確であり、他方は 0.083% 誤っている。どちらが正確でその理由は何かを解き明かせ。 これは回転体の球の状態である。

    1. 関数とその導関数を書き下す。問題の原因となるのは導関数であり、それは既に明らかである。すなわち、両端点において分母がゼロになることである。

    2. 次に、表面積の被積分関数を構成する。発散する因子とゼロになる因子は互いに逆数であり、完全に相殺される。

    3. 長さ 2 の区間で定数を積分するのに微分積分学は不要である。答えは 4π であり、球をどのようにスライスしたかには依存しない — これこそがアルキメデスの結果の内容である。

    4. 体積は通常の多項式の積分であり、シンプソンの公式が表示される最後の桁まで正しく計算できるものである。

    5. 表示された表面積と 4π を比較する。不足分はわずかだが、丸め誤差ではない — それは2つの極に集中した系統的な誤差である。

    6. その原因はステップ 1 にある。値をサンプリングするだけのルーチンでは、完全な相殺を行うことはできない。

    解答

    体積が正確であり、表面積は 0.083% 不足している。これは表面積の被積分関数が、数値積分器には捉えられない定数だからである。手計算を行うと驚くべきことが起こる。√(1 + f′²) は 1/√(1 − x²) となり、その前にある √(1 − x²) と完全に相殺して 2π だけが残る。被積分関数は一定であり、積分値は 4π となる。これこそがアルキメデスの定理 — 球の表面積はそれに外接する円柱の側面と等しいというものであり、彼はこれを自身の墓碑に刻ませた。しかし数値計算では、x = ±1 で f′ が発散するため、シンプソンの公式は、数値計算が破綻する2点を除いて至る所 2π である関数をサンプリングすることになる。一方、体積の被積分関数は π(1 − x²) という正真正銘の多項式であり、シンプソンの公式は多項式を正確に積分する。パネル自身による誤差推定量 0.005 を見れば、2つの答のうちどちらを信頼すべきかが分かる。

参考文献 (1)

例題

  • 放物線の弧 - [0,2]におけるy=x^2の弧長は、直線の弦より長い。
  • 半円の弧 - [-1,1]における半円の弧長は、予想通りpiに近づく。
  • 回転による球 - 半円をx軸まわりに回転させると、球のような4piと4pi/3の値が得られる。
  • 回転による円錐 - [0,3]でy=xを回転させると、解析的な体積9piを持つ円錐が得られる。