GCI(3メッシュ法)の適用手順 — トラブルシューティングガイド
より充実した内容を gci-3mesh.html でご覧いただけます。
GCI計算で起きるトラブルの全体像
3メッシュでGCIを計算したら、観測次数が7.8とかありえない値になって、GCIも0.01%になっちゃいました。こんなに精度いいはずないですよね…?
それはGCIの結果が良いのではなく、GCIの前提が壊れているサインだね。GCI(Grid Convergence Index)は「解が漸近収束域にあり、観測次数が理論値に近い」ときにだけ意味を持つ。観測次数の異常は、この前提が満たされていないことを教えてくれる貴重な警報なんだ。このページでは、3メッシュ法の計算過程で出会うトラブルを症状別に解決していくよ。
まず記号を整理します。粗・中・細メッシュの代表寸法を \( h_3 > h_2 > h_1 \)、その解を \( f_3, f_2, f_1 \)、細分比を \( r = h_{coarse}/h_{fine} \)(一定と仮定)とすると、観測次数と細メッシュのGCIは
$$ p = \frac{\ln\left|\dfrac{f_3 - f_2}{f_2 - f_1}\right|}{\ln r}, \qquad GCI_{fine} = \frac{F_s\,|e_a|}{r^p - 1}, \quad e_a = \frac{f_1 - f_2}{f_1} $$
です(安全係数は3メッシュ系統的検証で \( F_s = 1.25 \))。トラブルの大半は、この式に入れる前のデータ側の欠陥が原因です。
症状1: 観測次数が異常(負・ゼロ近傍・過大)
| 観測次数の値 | 意味 | 対処 |
|---|---|---|
| 理論次数±0.5程度 | 健全。漸近域に入っている | そのままGCI計算へ |
| 理論値の半分以下(例: 2次スキームでp<1) | 漸近域未達、または局所的な次数低下(特異点・境界層未解像) | さらに細かい水準を追加。評価量・評価位置を見直す |
| 理論値を大きく超える(p>3〜4) | 誤差の打ち消しによる見かけの超収束。GCIが非現実的に小さく出る | pを理論次数でクリップしてGCIを再計算(保守側)。メッシュ系列の系統性を確認 |
| 負・計算不能(対数の中が負) | 振動収束: \( (f_3-f_2) \) と \( (f_2-f_1) \) が異符号 | 下記「振動収束」参照。単調収束していないのでこのままではGCI不成立 |
収束の型は比 \( R = (f_2 - f_1)/(f_3 - f_2) \) で判定します。\( 0 < R < 1 \) が単調収束、\( -1 < R < 0 \) が振動収束、\( |R| > 1 \) は発散です。GCIの式を使ってよいのは単調収束のときだけで、振動収束では解の振れ幅を不確かさとして報告する(または5メッシュに増やして振動の減衰を確認する)のが誠実な処理です。
症状2: 振動収束・非単調挙動
メッシュを細かくするたびに結果が上下する場合、次の原因を順に疑います。
- メッシュ系列の非系統性 — 自動メッシャーで「サイズ指定だけ変えた」系列は、細分化のたびに要素配置・境界層分割・局所品質が別物になり、離散化誤差以外の変動が混ざります。可能な限り相似細分(同一トポロジーの一様細分)にします。
- 評価量の位置ずれ — 「最大応力」「最大温度」は発生位置がメッシュごとに移動します。座標固定点の値か、積分量(反力・流量・平均Nu数)に変えると単調性が回復することが多いです。
- 反復収束不足 — 各メッシュの反復残差が離散化誤差と同オーダーだと、比較しているのはほぼ数値ノイズです。全ケースで残差を2桁以上余分に落とします。
- 物理的な非単調性 — 剥離点・遷移・接触状態がメッシュ解像度で切り替わる場合。この場合はメッシュ検証の前に、モデルがその物理を解像できる解像度帯まで一気に細かくする必要があります。
症状3: 細分比が小さすぎて差が丸めに埋もれる
実務では計算コストの都合で \( r = 1.1 \) のような小さい細分比を選びがちですが、細分比が小さいと \( f_2 - f_1 \) が小さくなり、丸め誤差・反復打ち切り誤差・収束判定のゆらぎに埋もれます。推奨は \( r \ge 1.3 \)(Roacheの経験則)。3次元では要素数がおよそ \( r^3 \) 倍になるため、\( r = 1.3 \) でも要素数比は約2.2倍です。計算資源が許すなら \( r = 2 \) の一様細分が最も解釈しやすい系列になります。また非構造メッシュでは代表寸法を要素数 \( N \) から \( h = (V/N)^{1/3} \)(2Dでは \( (A/N)^{1/2} \))で定義し、実効細分比を \( r = h_{coarse}/h_{fine} \) で計算し直します。「メッシャー設定の倍率」と実効細分比はしばしば一致しません。
症状4: 量によってGCIが桁で違う
変位のGCIは0.5%なのに、最大応力のGCIは12%になりました。どっちを報告すれば…。
両方報告するのが正解だよ。GCIは評価量ごとの指標で、モデル全体に1つ付く数字ではない。変位(積分的な量)は速く収束し、応力(微分量・局所量)は遅い——これは正常な振る舞いだね。報告書には「設計判断に使う量それぞれのGCI」を並べる。応力のGCIが大きすぎるなら、その評価部位に絞った局所細分化で系列を作り直せばいい。それから、応力評価点が特異点(角・点拘束)の近くなら、そもそもメッシュ収束しないから、GCI以前に特異性の判別が先だよ。
Richardson外挿とGCIの検算
単調収束が確認できたら、メッシュ無限細分の推定値(Richardson外挿)と、GCIの整合性チェックまで行うと報告の説得力が上がります。
$$ f_{ext} = f_1 + \frac{f_1 - f_2}{r^p - 1} $$
整合性チェックは「\( GCI_{23} \approx r^p \, GCI_{12} \) が成り立つか」です。この比が大きくずれる場合、系列はまだ漸近域に達しておらず、細メッシュをもう1水準追加すべきサインです。数値を表で整理すると監査に耐える形になります。
| チェック項目 | 合格基準 | 不合格時のアクション |
|---|---|---|
| 収束型(比R) | 0 < R < 1(単調収束) | 振動なら振れ幅を不確かさ報告、発散なら系列作り直し |
| 観測次数p | 理論次数±0.5 | クリップまたは水準追加。境界・特異点を点検 |
| 実効細分比r | r ≥ 1.3 | メッシュ水準を離す |
| 漸近域判定 | GCI23 / (r^p・GCI12) ≈ 1(0.9〜1.1目安) | 細メッシュ水準を追加 |
| 反復残差 | 離散化誤差より2桁以上小 | 収束基準を厳格化して再計算 |
品質保証チェックリスト(GCI報告用)
- メッシュ3水準の要素数・実効h・実効細分比を表で明記したか
- 評価量ごとに収束型(単調/振動)を判定したか
- 観測次数と理論次数の乖離に説明を付けたか
- Richardson外挿値とGCIバンドを評価量ごとに報告したか
- 全ケースの反復収束(残差履歴)を確認・保存したか
- 特異点近傍の量をGCIの対象にしていないか
詳しい手順と計算例は統合版のGCI(3メッシュ法)の適用手順を、隣接テーマはh-refinementの基礎、MMS収束次数のトラブルシュートを参照してください。
関連トピック
なった
詳しく
報告