メッシュ収束 (Mesh Convergence) — CAE用語解説
メッシュ収束とは
先輩に「メッシュ収束確認した?」って聞かれたんですけど、メッシュ収束って何ですか? メッシュを細かくすればいいってことですか?
ざっくり言うと、要素サイズを段階的に小さくしていって、注目している物理量(応力とか変位とか)がほぼ変わらなくなることを確認する作業だよ。FEMでもCFDでも、メッシュは連続体を近似しているわけだから、粗すぎるメッシュだと解が不正確になる。でも細かくしすぎると計算時間が爆発する。そのバランスを見極めるのがメッシュ収束スタディだ。
例えば、どういうケースで困るんですか?
よくあるのは、応力解析でフィレット部の最大応力を見たいケース。粗いメッシュだと応力が200MPaだったのに、メッシュを2倍に細かくしたら280MPaになった、さらに細かくしたら310MPa……みたいに結果がコロコロ変わる。こういう状態では「解が収束していない」と言うんだ。報告書に載せる値として信頼できない。
なるほど。数学的には、要素サイズ $h$ をゼロに近づけると真値に近づく、ということですか?
その通り。数値解 $f_h$ と厳密解 $f_{\text{exact}}$ の間には、打ち切り誤差として次の関係がある:
ここで $p$ は精度次数(order of accuracy)、$C$ は定数だ。$h \to 0$ で誤差がゼロに収束するのが理論的な保証。ただし実際には $h=0$ にはできないから、有限個のメッシュで「十分収束した」ことを判断する方法が必要になる。
Richardson外挿
Richardson外挿って名前だけは聞いたことあります。真値を推定できるって本当ですか?
厳密な真値そのものではなく、外挿解(extrapolated solution)という「真値のより良い近似」を求められるんだ。考え方はシンプルで、メッシュサイズが異なる2つ以上の解から打ち切り誤差の項を消去する。
例えば、メッシュサイズ $h_1$ と $h_2$($h_2 < h_1$)で得た解を $f_1$, $f_2$ とすると、精度次数 $p$ が既知なら:
$$f_{\text{ext}} = f_2 + \frac{f_2 - f_1}{r^p - 1}$$ここで $r = h_1 / h_2$ はメッシュ比(refinement ratio)だ。$r=2$(要素サイズを半分にする)がよく使われるよ。
精度次数 $p$ がわからない場合はどうするんですか? 例えば二次要素を使ってるから $p=2$ って決めていいんですか?
理論的な精度次数をそのまま使う方法もあるけど、実問題では境界条件や要素の歪みなどの影響で理論通りにならないことが多い。だから3水準のメッシュ(粗・中・細)を用意して $p$ を実測するのがベストプラクティスだ。メッシュサイズ $h_1 > h_2 > h_3$ に対する解 $f_1, f_2, f_3$ があるとき:
ここで $r = h_1/h_2 = h_2/h_3$(等比的にリファインした場合)。この $p$ を使って外挿すると、より信頼性の高い推定値が得られるよ。
3回も計算するの、ちょっと大変ですね……。でもそれだけの価値はあるんですか?
大変だけど、これが「数値解の品質保証」そのものなんだ。学会論文でも企業のV&V(Verification & Validation)報告でも、Richardson外挿なしで結果の信頼性を主張するのは難しい。特にASME V&V 20規格では、数値解の不確かさ評価にRichardson外挿を使うことが標準的に求められている。
GCI(Grid Convergence Index)
GCIって何ですか? Richardson外挿と何が違うんですか?
GCI(Grid Convergence Index)は、Roacheが1994年に提案したメッシュ収束の不確かさを定量化する指標だ。Richardson外挿の結果に安全係数 $F_s$ をかけて、誤差の信頼区間を作るイメージだね。
細かいメッシュ側のGCIは:
$$\text{GCI}_{\text{fine}} = \frac{F_s}{r^p - 1} \left| \frac{f_2 - f_1}{f_2} \right|$$安全係数は、2水準の比較なら $F_s = 3$、3水準でRichardson外挿を併用するなら $F_s = 1.25$ が推奨されている。つまり、ちゃんと3水準でやれば安全係数を小さくできるので、誤差バンドが締まるんだ。
具体的な数値で教えてもらえますか? GCIが何%なら合格、みたいな基準はあるんですか?
公式の合格ラインはないけど、実務的な感覚だと:
- GCI < 1%:非常に良い収束。論文や規格適合に十分
- GCI = 1〜5%:工学的には許容範囲。多くの実務ケースでこのレベル
- GCI > 5%:まだ収束が不十分。メッシュをさらに細かくするか、モデルを見直す
例えば、自動車のクラッシュ解析で変形量のGCIが2%なら「まあ十分だね」という判断になることが多い。ただし原子力のような安全規格が厳しい分野だと1%未満を求められることもあるよ。
GCIの結果が「漸近範囲内にある」かどうかを確認するって聞いたんですけど、それは何ですか?
いい質問だ。漸近範囲(asymptotic range)とは、打ち切り誤差が $C \cdot h^p$ の形に支配される領域のことで、Richardson外挿が有効になる条件でもある。確認方法は、3水準のGCIから次の比を計算する:
この値が1に近ければ、漸近範囲に入っている(=収束が順調に進んでいる)と判断できる。1から大きくずれている場合は、メッシュがまだ粗すぎるか、解の特異性などの問題がある可能性があるよ。
h-refinementとp-refinement
メッシュを細かくする方法って、h-refinementとp-refinementがあるって聞きました。何が違うんですか?
大きく分けると2つのアプローチがある:
- h-refinement:要素サイズ $h$ を小さくする。つまり要素の数を増やす。最も一般的で、メッシュ収束スタディで「メッシュを細かくする」と言ったらこれを指すことがほとんど
- p-refinement:要素のサイズはそのままで、形状関数の次数 $p$ を上げる。1次要素を2次要素にする、みたいな操作だね
実務で多いのはh-refinement。理由は単純で、どのソルバーでも要素サイズの指定で簡単にできるから。p-refinementは一部の商用ソルバー(例えばStressCheckやNX Nastranのp-element)でサポートされている。
hp-refinementというのもあるんですか?
あるよ。hp-refinementは両方を組み合わせる手法で、特異点の近くではh-refinementで要素を細かくし、滑らかな領域ではp-refinementで精度を上げる。理論的には指数関数的な収束速度(exponential convergence)が得られるんだけど、実装が複雑で、対応しているソルバーはまだ限られている。研究レベルでは活発だけど、実務で使うのはまだ先かな。
収束スタディの手順
実際にメッシュ収束スタディをやるときの手順を、ステップバイステップで教えてください。
OK、典型的な手順はこうだ:
- 注目する物理量を決める — 最大応力、変位、圧力損失、熱流束など。複数あってもいいけど、「何をもって収束とするか」を明確にしておく
- メッシュを3水準以上用意する — 粗(Coarse)・中(Medium)・細(Fine)の最低3水準。要素サイズの比 $r$ は1.3〜2.0程度が推奨。$r=2$(要素数を約8倍にする)が理想だけど計算コスト的に $r \approx 1.5$ が現実的
- 同じ条件で計算を実行 — 境界条件、物性値、ソルバー設定はすべて同一に保つ。変えるのはメッシュだけ
- 結果を比較 — 注目物理量の値を表にまとめ、メッシュサイズに対してプロットする
- Richardson外挿とGCIを計算 — 精度次数 $p$ を実測し、外挿解とGCIを求める
- 漸近範囲の確認 — GCI比が1に近いか確認する
- 報告書に記録 — 使ったメッシュのパラメータ、結果の表、GCI値を明記する
全体を一様に細かくするんですか? それとも注目箇所だけ?
厳密な収束スタディでは全体を一様にリファインするのが理想だ。なぜなら、局所的にだけ細かくすると、離れた場所のメッシュ粗さが結果に影響している可能性を排除できないから。でも実務では計算コストの問題があるので、注目領域を中心にリファインして、遠方は粗いままにすることも多い。その場合は、遠方メッシュの影響が小さいことを別途確認するのが望ましいね。
メッシュ細分化のやめどき
メッシュをいくら細かくしても応力が発散していくケースがあるって聞いたんですけど、それはどういうことですか?
それは応力特異点(stress singularity)のケースだね。例えば、シャープなコーナー(R=0のフィレットなし角部)、集中荷重の載荷点、異種材料の界面端部。こういう場所では理論上、応力が無限大に発散するから、メッシュを細かくするほど応力値が際限なく上がっていく。
え、じゃあそういう場所ではメッシュ収束スタディが使えないんですか? どう判断すればいいんですか?
特異点そのものの応力値はメッシュ依存になるから、「メッシュ収束した値」は存在しない。対処法はいくつかある:
- 特異点から離れた位置の応力を評価する(1〜2要素分離れれば影響が減る)
- 応力ではなく変位や反力で評価する(これらは特異点があっても収束する)
- モデルを修正して特異点を除去する(実物にはR=0のコーナーは存在しないので、フィレット半径を入れる)
- 破壊力学的アプローチで応力拡大係数 $K$ を使う
特異点以外の場合、「ここで止めていい」という実務的な基準はどうなりますか?
実務的な判断基準をまとめるとこうなる:
- 変化率が1〜2%以内:前のメッシュからの変化が1〜2%以内に入ったら、工学的には十分
- GCI < 5%:GCIが5%以下なら多くの産業規格で許容範囲
- 計算コストとのバランス:メッシュを倍にしても変化が0.5%しかないなら、その計算時間は他の不確かさ要因(材料物性のばらつき、境界条件の不確かさ)に比べて無視できる
- 安全率との関係:設計安全率が2.0で、メッシュ起因の誤差が3%なら、安全率に対して十分小さいから許容できる
大事なのは「ゼロ誤差を目指す」のではなく、「他の不確かさと比べてメッシュ誤差が十分小さいこと」を確認することだよ。
わかりました。Richardson外挿→GCI計算→漸近範囲確認、という流れがメッシュ収束を定量的に評価する王道ルートなんですね。
その理解で完璧だ。あと補足すると、NovaSolverの メッシュ収束自動計算ツール を使えば、3水準の結果を入力するだけでRichardson外挿・GCI・漸近範囲チェックを一括で計算できるよ。自分で数式を組まなくても済むから、ぜひ試してみて。
関連用語
- Richardson外挿(Richardson Extrapolation):異なるメッシュサイズの解から外挿して真値を推定する手法
- GCI(Grid Convergence Index):Roacheが提案したメッシュ収束の不確かさ指標
- h-refinement:要素サイズを小さくして精度を上げるアプローチ
- p-refinement:要素の多項式次数を上げて精度を上げるアプローチ
- 漸近範囲(Asymptotic Range):打ち切り誤差が $O(h^p)$ に支配される領域
- 応力特異点(Stress Singularity):理論上応力が無限大となる点。メッシュ収束しない
- V&V(Verification & Validation):数値解の正しさと物理モデルの妥当性を検証するプロセス
CAE用語の正確な理解は、チーム内のコミュニケーションの基盤です。 — Project NovaSolverは実務者の学習支援も視野に入れています。
メッシュ収束の実務で感じる課題を教えてください
Project NovaSolverは、CAEエンジニアが日々直面する課題——セットアップの煩雑さ、計算コスト、結果の解釈——の解決を目指しています。あなたの実務経験が、より良いツール開発の原動力になります。
お問い合わせ(準備中)関連トピック
なった
詳しく
報告