六面体主导网格
六面体主导网格
理论:网格数与流动方向
概述
四面体网格能自动轻松生成,为什么还要特意用六面体?
原因有两个。一是网格数,同样细度下六面体只需四面体的几分之一。二是精度,六面体的面能与流动方向对齐。流动斜穿网格时,离散误差表现为人工扩散,使速度和温度分布变模糊。但用六面体填满复杂形状很费工夫,因此用六面体自动填充大部分区域,只用四面体等填补剩余间隙,这就是六面体主导网格。
网格数估算
$$ N_{hex} = \frac{V}{h^3},\qquad N_{tet} \approx 6\,N_{hex},\qquad N_{hexdom} = f\,N_{hex} + 6\,(1-f)\,N_{hex} $$
V为体积,h为网格宽度,f为六面体填充的体积比例。四面体数以每个六面体拆成6个四面体为基准。
一阶迎风格式的数值扩散
$$ \Gamma_{false} = \frac{\rho U\,\Delta x\,\Delta y\,\sin 2\theta}{4\left(\Delta y\sin^3\theta + \Delta x\cos^3\theta\right)} $$
θ为流动与网格线的夹角。θ = 0(顺流向)时为0,45°时最大。
Coffee Break 随笔闲谈
斜向流动造成的模糊
1970年代,de Vahl Davis和Mallinson用公式表明,流动斜穿网格时一阶迎风格式会产生伪扩散。这一结果同时推动了高阶差分格式的开发和使网格顺应流动的努力。如今二阶精度格式已成标准,数值扩散小得多,但网格方向的影响并未消失,用顺流向的六面体或棱柱划分边界层和剪切层仍是基本做法。
算例
例1:1 m见方立方体、网格宽10 mm
| 网格 | 网格数 | 面数 | 备注 |
|---|---|---|---|
| 仅六面体 | 100万 | 约300万 | 每格6面 |
| 四面体(六面体拆6个) | 600万 | 约1,200万 | 每格4面 |
| 正四面体(棱长10 mm) | 850万 | — | 体积 h³/(6√2) |
| 多面体(四面体对偶) | 约100万 | 约700万 | 每格约14面 |
| 六面体主导(85%) | 175万 | — | 约为四面体的三成 |
例2:流动方向与数值扩散(网格宽10 mm、流速1 m/s)
| 流动与网格夹角 | 数值扩散 | 与空气运动粘度之比 | 与水运动粘度之比 |
|---|---|---|---|
| 0° | 0 | 0 | 0 |
| 15° | 1.4×10⁻³ m²/s | 91 | 1,361 |
| 30° | 2.8×10⁻³ m²/s | 186 | 2,795 |
| 45° | 3.5×10⁻³ m²/s | 236 | 3,536 |
数值扩散是空气粘性的200多倍,计算结果还能信吗?
这是一阶精度的情况,实务中用的二阶格式要小得多。但流动越斜穿网格误差越大这一性质依然存在。四面体对任何方向的流动都是斜的,要得到同样精度需要更细的网格。六面体顺着流动,能用较少网格抑制误差。在六面体主导网格中,要让六面体部分位于主要流动区域,尤其壁面附近要用棱柱层顺应流动。六面体与四面体交界处会插入金字塔单元,质量容易下降,所以不要把交界放在流动的重要位置。
生成要点
- 先在壁面加棱柱层(边界层网格)。
- 内部用六面体填充,只在复杂形状附近用四面体补充。
- 六面体方向与主流方向对齐。
- 检查金字塔和过渡部分的质量(扭曲、体积比)。
- 改变网格数确认网格无关性。
Coffee Break 随笔闲谈
“压损对不上的管道”
某多弯管道的压损用四面体网格计算,比实测大约15%。增加网格数差距也难以缩小,网格数达到数千万。改成直管段用顺流向六面体、只有弯头用四面体的六面体主导网格后,网格数降到约三分之一,与实测的差距缩小到百分之几。原因被认为是四面体网格中直管段的速度分布被数值扩散抹平了。
常见错误
错误与对策
| 错误 | 后果 | 对策 |
|---|---|---|
| 壁面无棱柱层 | 壁面摩擦、传热算错 | 边界层网格 |
| 六面体方向与流动斜交 | 优势体现不出 | 与主流对齐 |
| 交界放在重要位置 | 金字塔单元引起误差 | 移动交界 |
| 只按网格数比较 | 忽略面数和计算量 | 也看面数 |
| 不确认网格无关性 | 误差大小不明 | 用3个水平比较 |
我想了解相关内容。
相关主题
本文评价
感谢您的反馈!
有帮助
更详细
报错