常微分方程的數值方法

方法的階

你如何用單一個數字標出一個數值方法有多好?你問它的誤差隨著你細化步長縮小得多快。一個在你把步長減半時誤差也減半的方法改進得慢;一個同樣細化卻把誤差縮成十六分之一的方法改進得快。階恰恰就是這個速率——那個冪 p,使得全域誤差表現得像 h^p。更高的階意味著同樣的努力下準確度大幅提升。

精確地說,一個方法是 p 階的,若它在固定最終時刻的全域截斷誤差為 h^p 量級——亦即對小 h 正比於 h^p。等價地(而這正是階通常的算法),它每步的局部截斷誤差為 h^(p+1) 量級;少掉的那一次冪是因為覆蓋固定區間要約 1/h 步、其誤差累積。你藉由對真解與方法更新都做泰勒展開、看有多少前導項一致來求 p:吻合到 h^p 項,第一個不一致在 h^(p+1),所以階是 p。尤拉法是一階;改良尤拉法與中點法是二階;RK4 是四階。

階是首要的優劣指標,它解釋了方法的整個階層。h 減半把誤差乘以 (1/2)^p,所以四階時每細化十倍約多四位小數,相對於一階只多一位。這正是 RK4 在實務上輾壓尤拉法的原因。但階不是故事的全部:它只描述精確算術下 h -> 0 時的截斷誤差,對穩定性或捨入誤差隻字未提。一個在你的問題上不穩定、或被推過捨入誤差下限的高階方法,不會兌現它承諾的準確度。

把固定問題的 h 減半並觀察誤差:一階方法的誤差每次降為 1/2,二階降為 1/4,四階降為 1/16。把 log(誤差) 對 log(h) 作圖得到一條直線,其斜率「就是」階 p——這是經驗上驗證方法階的標準做法。

p 階意味著全域誤差為 h^p 量級;對數-對數圖的斜率揭示它。

高階不等於在每個問題上都高準確度。階只描述 h -> 0 的截斷行為;一個高階方法若在你的方程上不穩定、或被推到捨入誤差下限以下,仍可能毫無用處。

又稱
order of accuracyrate of convergence準確度階收斂階