リチャードソン外挿

カテゴリ: V&V・メッシュ収束 | 2026-10-01 改稿
CAE visualization for richardson extrapolation theory - technical simulation diagram
Richardson外挿法

理論:誤差の減り方から0の格子を予測する

概要

🙋

格子を細かくするほど計算時間がかかって困っています。粗い格子の結果から、もっと正確な値を推定する方法はありませんか?

🎓

リチャードソン外挿がまさにそれだ。格子が十分細かい範囲では、誤差は格子幅のp乗にほぼ比例して減る。だから格子幅を半分にした2つの結果を比べれば、誤差がどれくらい残っているかが推定でき、それを差し引けば格子幅0の値に近づける。ただし、この考え方は『誤差が格子幅のp乗できれいに減る』ことが前提で、解に特異点があったり、格子が粗すぎたりすると、かえって見当違いの値を出す。どんなときに効いて、どんなときに外れるかを見ておこう。

外挿の式

$$ f_h = f_{exact} + C h^p + \cdots \quad\Rightarrow\quad f_{ext} = f_h + \frac{f_h - f_{2h}}{2^p - 1} $$

$h$ は格子幅、$p$ は収束の次数。$p$ が正しく、高次の項が十分小さければ、外挿値の誤差は $h^p$ より速く減る。

段階的な外挿(ロンバーグ法)

$$ f^{(1)} = \frac{4 f_h - f_{2h}}{3}\ (p = 2),\qquad f^{(2)} = \frac{16 f^{(1)}_h - f^{(1)}_{2h}}{15}\ (p = 4) $$

2次の誤差を消した結果に、次の4次の誤差が残ると考えてもう一度外挿する。数値積分のロンバーグ法と同じ考え方で、誤差の展開に偶数次の項しかない場合によく効く。

Coffee Break よもやま話

『極限への遅延』

イギリスのリチャードソンは1911年、石造りのダムの応力を差分法で計算する論文で、格子幅の異なる計算から格子幅0の値を推定する方法を示し、1927年に『極限への遅延近づき』という題で詳しく論じた。彼はのちに天気の数値予報を手計算で試みたことでも知られる。1955年にはロンバーグが、この考え方を繰り返して数値積分の精度を一気に上げる方法を示した。電子計算機がない時代に、少ない計算で精度を上げる工夫として生まれた方法が、今は検証の道具として使われている。

計算例

例1:滑らかな問題(フィンの熱量)

先端が断熱のフィン(mL = 2、厳密値1.928055)を2次精度の差分で解いた。

方法値相対誤差
32分割1.9253051.4×10⁻³
64分割1.9273533.6×10⁻⁴
外挿(32・64、p = 2)1.92803531.0×10⁻⁵
2段目の外挿(16・32・64)1.928044315.6×10⁻⁶

例2:滑らかでない問題(√xの積分)

台形公式で ∫√x dx(厳密値2/3)を求めた。x = 0で導関数が発散するため、誤差は格子幅の約1.5乗でしか減らない。

方法相対誤差
40分割(細かい格子)1.2×10⁻³
外挿(20・40)、p = 2を仮定4.8×10⁻⁴
外挿(20・40)、見かけの次数1.471.8×10⁻⁵
🙋

同じ外挿でも、次数を正しく使うかどうかで、改善が2.5倍と68倍もちがうんですね。

🎓

外挿は『誤差が格子幅のp乗で減る』という仮定に全部をかけている。√xのように端で特異性がある問題では、スキームは2次でも誤差は1.5乗でしか減らない。そこに2次を仮定すると差し引く量を読み違えて、少ししか良くならない。3つの格子から見かけの次数を求めれば、その問題の本当の減り方に合わせられる。実際のCFDや構造解析でも、角や接触の端、境界層のはく離点などで同じことが起きる。外挿の前に、見かけの次数が安定しているか確かめるのが鉄則だ。

使い方の手順

  1. 格子比を一定にして3つ以上の格子で計算する。
  2. 見かけの次数を求め、理論の次数と比べる。大きく違えば原因(特異点・粗すぎる格子)を調べる。
  3. 見かけの次数が安定していれば、それを使って外挿する。
  4. 外挿値は『より良い推定値』として扱い、誤差の幅はGCIで示す。
  5. 局所の値(点の応力など)より、積分した量(力・熱量)のほうが外挿しやすい。
Coffee Break よもやま話

「外挿したら応力が倍に」

構造解析で、角の近くの最大応力を3つの格子で求めてリチャードソン外挿したら、細かい格子の値の2倍近い値が出た——という例がある。格子を細かくするたびに応力が増え続けていて、見かけの次数は0.3ほどしかなかった。角は理想的には応力が無限大になる特異点で、外挿すべき『格子幅0の値』そのものが存在しなかったのだ。実際の部品には小さな丸みがあるので、丸みを形状に入れて解き直すと、応力は収束し、外挿も意味のある値になった。

よくある間違い

間違いと対策

間違い起きること対策
理論の次数を仮定外挿が外れる見かけの次数を使う
特異点で外挿存在しない値を出す丸みを入れる・離れた点で
格子が粗すぎる漸近範囲にない次数の安定を確認
振動する収束で外挿見当違いの値振れ幅で評価
外挿値を正解とみなす不確かさを見落とすGCIで幅を示す
🙋

関連する内容も知りたいです。

関連シミュレーター

この分野のインタラクティブシミュレーターで理論を体感しよう

シミュレーター一覧

関連する分野

構造解析流体解析熱解析
この記事の評価
ご回答ありがとうございます!
参考に
なった
もっと
詳しく
誤りを
報告
参考になった
0
もっと詳しく
0
誤りを報告
0