GCI(三网格法)应用步骤
理论:检验GCI范围
概述
我用GCI报告了“离散误差±0.2%”,但不确定真实误差是否真在范围内。有办法确认吗?
最可靠的是在有精确解的问题上把GCI范围与真实误差并排比较。GCI由三套网格求表观阶数,把细网格结果的差乘以安全系数得到范围,但这个范围有多可信,取决于网格是否处于渐近范围以及阶数和安全系数如何处理。自己的问题没有精确解,所以先在性质相似、有精确解的问题上确认GCI步骤本身,会更放心。
检验用问题
尖端绝热肋片的无量纲方程,从根部进入的热量 $q$ 有精确解。用二阶差分求解,根部梯度也用二阶精度求。
GCI与真实误差之比
真实误差除以GCI之比小于1,说明GCI范围包含了真实误差。
安全系数1.25与3的由来
Roache收集大量计算实例,考察GCI范围包含真实误差的比例,提出:用三套以上网格确认表观阶数时安全系数取1.25,只用两套网格并假设阶数时取3,可得到约95%的置信度。此后在各种流动和传热问题上做了类似检验,确认这些数字大体合理。由于其依据是经验统计,在与自己问题相似、有精确解的问题上重新确认也有意义。
算例:用肋片热量检验GCI
对mL = 2的肋片,根部热量精确值为1.928055。对每组网格求表观阶数、GCI、真实误差及其比值:
| 网格(细、中、粗) | 表观阶数 | GCI | 真实误差 | 比 |
|---|---|---|---|---|
| 8 / 4 / 2 | 1.33 | 3.97% | 2.00% | 0.50 |
| 16 / 8 / 4 | 1.69 | 0.82% | 0.55% | 0.66 |
| 32 / 16 / 8 | 1.85 | 0.19% | 0.14% | 0.74 |
| 64 / 32 / 16 | 1.93 | 0.047% | 0.036% | 0.77 |
| 18 / 12 / 8(比1.5) | 1.81 | 0.59% | 0.44% | 0.74 |
每组比值都小于1,真实误差都在GCI范围内。
对。认真求出表观阶数并乘以安全系数1.25的GCI,在本问题中每组都包含了真实误差。网格越粗,表观阶数越小于理论值2,GCI越大(越保守)。那偷懒会怎样?在粗网格8/4/2组上假设理论阶数2,GCI为2.00%,刚好等于真实误差(比1.00),没有余量。在细网格64/32/16组上把安全系数取1,比为0.96,几乎在边界上。求表观阶数和不省略安全系数,两者共同支撑GCI的可靠性。
应用步骤
- 以1.3以上的网格比、各方向相似加密,生成三套网格。
- 在每套网格上充分收敛迭代,求评估量。
- 确认差值符号,求表观阶数(网格比不恒定时迭代求解)。
- 求GCI(安全系数1.25)和外推值;阶数大幅偏离理论值时要注意。
- 可能的话,在有精确解的相似问题上确认同样的步骤。
“GCI太小了”
某设计部门用两套网格结果之差乘以安全系数1.25、并假设阶数为2来报告GCI。后来做了第三套网格求表观阶数,只有1.2,正确重算的GCI约为报告值的3倍。只有两套网格时无法确认阶数,规定安全系数取3;1.25只适用于用三套以上网格确认阶数的情况。省略步骤会悄悄地让误差范围显得更小。
常见错误
错误与对策
| 错误 | 后果 | 对策 |
|---|---|---|
| 两套网格用Fs 1.25 | 范围过窄 | 安全系数3 |
| 假设理论阶数 | 粗网格没有余量 | 求表观阶数 |
| 网格比太小 | 差值被迭代误差淹没 | 1.3以上 |
| 不确认渐近范围 | GCI可靠性不明 | 确认阶数稳定 |
| 不检验步骤 | 带着想当然报告 | 用精确解问题确认 |
我想了解相关内容。
可以用Richardson外推工具试算阶数与外推。相关页面参考Roache的GCI、Richardson外推、网格加密比、解验证和自适应网格。
相关主题
价值
更详细
错误