CFD网格质量指标
理论:质量指标与误差的关系
概述
网格生成后软件警告“最大非正交角75°”。应该多在意?
每个质量指标都与特定计算的误差相关。非正交性影响穿过面的扩散通量(热量或动量的传递)。单元中心连线不垂直于面时,仅凭两者之差无法正确得到面法向梯度。75°时不修正的通量偏差超过七成,即使修正计算也容易不稳定。但比最大值更重要的是这些坏单元在哪里:在流动关键区域就修,在影响小的地方可以容忍。
非正交性
单元中心连线向量 $\mathbf d$ 与面法线的夹角 $\theta$ 就是非正交角。不修正时,法向梯度被低估为 $\cos\theta$ 倍。
增长率
相邻宽度不同($h_+ \ne h_-$)时,中心差分的主误差项以网格间距一次方的形式保留。保持增长率不变地加密,精度降为一阶。
网格生成占一半工作量
CFD早期即20世纪70~80年代,贴体结构网格通常靠人工生成,网格生成占了分析时间的大半。90年代四面体自动网格普及后,复杂几何也能很快生成网格,但畸变单元又带来精度下降和发散问题。于是整理出了非正交性、增长率等质量指标以及弥补它们的修正方法。如今通用软件详细报告网格质量,正是这些经验积累的结果。
算例
例1:非正交角与通量误差
| 非正交角 | 10° | 20° | 30° | 45° | 60° | 70° | 80° |
|---|---|---|---|---|---|---|---|
| 未修正通量误差 | 1.5% | 6.0% | 13.4% | 29.3% | 50.0% | 65.8% | 82.6% |
对均匀梯度,加非正交修正后误差为零。但修正用上一次迭代的梯度加进去,角度大时修正成了主角,使迭代不稳定。
例2:增长率与差分精度
用相邻宽度比 $r$ 固定的三点差分求 $e^x$ 的二阶导数(精确值1):
| 增长率 | 间距0.1 | 0.05 | 0.025 | 阶数 |
|---|---|---|---|---|
| 1.0 | 8.3×10⁻⁴ | 2.1×10⁻⁴ | 5.2×10⁻⁵ | 2.00 |
| 1.1 | 4.3×10⁻³ | 1.9×10⁻³ | 8.9×10⁻⁴ | 1.09 |
| 1.2 | 7.7×10⁻³ | 3.6×10⁻³ | 1.7×10⁻³ | 1.05 |
| 1.5 | 1.8×10⁻² | 8.7×10⁻³ | 4.3×10⁻³ | 1.03 |
| 2.0 | 3.6×10⁻² | 1.7×10⁻² | 8.5×10⁻³ | 1.03 |
增长率1.2误差就变成9倍,还降为一阶精度。
对。保持增长率不变地加密,相邻宽度差也按网格间距比例保留,主误差项消不掉。研究网格依赖性时,理想情况是越加密增长率越接近1。边界层棱柱层用1.2~1.3左右,是为了用较少单元捕捉近壁的剧烈变化而作的折中;作为代价,要注意过渡处的增长率,避免离壁处单元尺寸突变。
质量参考与对策
- 非正交角以约70°以下为参考,确认超过的单元位置。
- 增长率约1.2以下,边界层到外部网格的过渡处不要突变。
- 高偏斜度单元会恶化面值插值,在流动关键区域避免。
- 大长宽比单元如果与流动方向对齐通常问题不大(如边界层)。
- 不只看质量指标,要通过网格依赖性确认结果不变。
“一个单元让计算停下”
某几百万单元的流动计算,每次都中途发散。追查残差最大处,发现在填充细缝的部分有一个非正交角88°、几乎压扁的单元。整体平均质量很好,所以被忽略了。把那里的几何稍作简化重新划分网格后,计算稳定收敛。质量要看最差的单元及其位置,而不是平均值。
常见错误
错误与对策
| 错误 | 后果 | 对策 |
|---|---|---|
| 按平均判断质量 | 最差单元导致发散 | 确认最差值及位置 |
| 增长率突变 | 精度降为一阶 | 约1.2以下 |
| 关闭非正交修正 | 扩散通量偏差 | 使用修正并控制角度 |
| 只关注长宽比 | 漏掉真正原因 | 结合流动方向判断 |
| 认为质量好就够了 | 漏掉分辨率不足 | 确认网格依赖性 |
我想了解相关内容。