GCI(三网格法):故障排查指南
更详细的内容请见 gci-3mesh.html。
GCI计算中会遇到的问题全景
我用三套网格算GCI,观测阶数算出来7.8——明显不可能——GCI还只有0.01%。我的解不可能有这么准吧?
没错——那不是GCI结果好,而是GCI的前提已经崩了的信号。网格收敛指数(GCI)只有在"解处于渐近收敛区、观测阶数接近理论值"时才有意义。荒谬的观测阶数正是宝贵的警报,告诉你前提没有满足。本页按症状逐一解决三网格法过程中会遇到的麻烦。
先约定记号。粗/中/细网格的代表尺寸 \( 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} $$
(系统性三网格研究取安全系数 \( F_s = 1.25 \))。大多数麻烦都出在喂给这些公式之前的数据端。
症状1:观测阶数异常(负值·近零·过大)
| 观测阶数 | 含义 | 处理 |
|---|---|---|
| 理论阶±0.5左右 | 健康,已进入渐近区 | 直接进入GCI计算 |
| 低于理论值一半(二阶格式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公式只能用于单调收敛;振荡时应把振幅报告为不确定度(或加到五套网格确认振荡衰减)。
症状2:振荡收敛·非单调行为
结果随细化上下跳动时,按顺序排查:
- 网格系列不系统——自动网格器"只改尺寸参数"的系列,每档的单元布局、边界层分层、局部质量都在换,掺入了与离散化误差无关的波动。尽量用相似细化(同拓扑的均匀细化)。
- 评估量的位置漂移——"最大应力""最大温度"的位置逐网格移动。改成坐标固定点的值或积分量(反力、流量、平均Nu数),单调性往往就恢复了。
- 迭代收敛不足——各网格的迭代残差与离散化误差同量级时,比的基本是数值噪声。所有算例把残差多降两个量级。
- 物理本身非单调——分离点·转捩·接触状态随分辨率切换。此时要先一口气加密到能解析该物理的分辨率带,再谈网格验证。
症状3:细化比太小,差值淹没在舍入误差里
出于算力考虑常有人取 \( r = 1.1 \),但细化比太小会使 \( f_2 - f_1 \) 变小,被舍入误差、迭代截断误差和收敛容差抖动淹没。推荐 \( r \ge 1.3 \)(Roache经验则)。三维时单元数约按 \( r^3 \) 增长,\( r = 1.3 \) 也只是约2.2倍;资源允许的话,均匀 \( r = 2 \) 的系列最好解读。非结构网格要用单元数定义代表尺寸 \( h = (V/N)^{1/3} \)(二维 \( (A/N)^{1/2} \)),再重算有效细化比——网格器的名义倍率经常与之不符。
症状4:不同量的GCI差好几个量级
位移的GCI是0.5%,最大应力的GCI却是12%。该报哪个?
两个都报——这才是正确答案。GCI是按量的指标,不是给整个模型贴一个数。位移(积分性的量)收敛快,应力(微分性·局部的量)收敛慢——这是正常表现。报告里要把用于设计判断的每个量的GCI都列出来。应力GCI太大,就围绕该评估区域做局部加密系列。另外,若应力评估点靠近奇异点(尖角、点约束),它根本不会网格收敛——先做奇异性判别,再谈GCI。
Richardson外推与GCI的自洽检验
确认单调收敛后,补上网格无限细化的估计值(Richardson外推)和自洽检验,报告的说服力会大增:
$$ f_{ext} = f_1 + \frac{f_1 - f_2}{r^p - 1} $$
自洽检验看"\( GCI_{23} \approx r^p \, GCI_{12} \) 是否成立"。偏差大说明系列尚未进入渐近区,该再加一档细网格。整理成表格便于审计:
| 检查项 | 合格标准 | 不合格时的动作 |
|---|---|---|
| 收敛类型(比值R) | 0 < R < 1(单调收敛) | 振荡→报告振幅为不确定度;发散→重建系列 |
| 观测阶数p | 理论阶±0.5 | 截断或加档位;排查边界与奇异点 |
| 有效细化比r | r ≥ 1.3 | 把档位拉开 |
| 渐近区判定 | GCI23 / (r^p·GCI12) ≈ 1(0.9~1.1) | 追加细网格档位 |
| 迭代残差 | 比离散化误差低2个量级以上 | 收紧判据重算 |
GCI报告的质量清单
- 三档网格的单元数、有效h、有效细化比是否列表明示
- 是否按量判别了收敛类型(单调/振荡)
- 观测阶数与理论阶的偏差是否有解释
- 是否按量报告了Richardson外推值与GCI区间
- 全部算例的迭代收敛(残差历史)是否确认并存档
- 是否把奇异点附近的量排除在GCI对象之外
完整流程与算例见整合版GCI(三网格法)应用指南;相邻主题:h细化基础、MMS收敛阶数的故障排查。
帮助
更多
错误