自适应网格加密(AMR)

分类:流体分析(CFD) | 2026-10-01 改写
AMR网格理论CAE可视化 - 技术模拟图
自适应网格细分(AMR)

理论:只在需要处加密

概述

🙋

我想做液滴落到水面上的CFD,但要细致表示界面,网格就要几千万个。

🎓

因为界面只是计算域的一小部分,你却让全域同样细。AMR在计算过程中观察解,只在界面、激波这类数值急剧变化处分割网格,没发生变化的地方保持粗网格。界面移动时加密区域也随之移动。用得好,同样精度下把网格数减少一个数量级以上并不罕见。但要注意决定在哪里加密的“指标”的选择,以及粗细网格交界的处理。

加密指标

$$ \eta_i = h_i^{\,2}\,\left|\frac{\partial^2 u}{\partial x^2}\right|_i \quad (\text{refine if } \eta_i > \varepsilon_{ref},\ \text{coarsen if } \eta_i < \varepsilon_{crs}) $$

$h_i$ 为单元尺寸,二阶导数为解的弯曲程度。线性插值误差约为 $h^2$ 与曲率之积,所以这个值大的单元就分割,足够小的就合并变粗。实际求解器按问题选择指标,如梯度大小、体积分数(界面)、涡量等。

对时间步长的影响

$$ \Delta t \le \mathrm{CFL}\,\frac{h_{min}}{|u| + c} $$

显式格式中时间步长由最小单元决定。AMR每加密一级,单元尺寸减半,时间步长也减半。使用只让细单元以小步长推进的“局部时间步”(子循环),可抑制总计算时间。

Coffee Break 随笔闲谈

始于天体物理与激波

AMR的思想形成于20世纪80年代,Berger和Oliger为双曲型方程(处理激波等波动的方程)提出了叠加细网格块的方法,Berger和Colella又将其扩展到激波计算。它在天体物理计算中尤其有用,如恒星爆炸、星系形成这类广阔空间中只有小区域剧烈变化的问题。如今它已成为商业CFD软件中处理自由表面流、燃烧、射流等的常规功能。

算例:表示陡峭锋面所需单元数

在区间[0, 1]上用单元内线性插值表示陡峭锋面 $u = \tanh((x-0.5)/w)$。比较均匀网格与只把误差大的单元二分的方法(AMR)使最大误差降到阈值以下所需的单元数。

锋面宽度允许误差均匀网格AMR比值最小单元
0.011%31726120.0020
0.010.1%99256180.0010
0.0021%1,54530520.00049
0.0020.1%5,00970720.00012
🙋

锋面越陡,AMR的效果越大。

🎓

对。均匀网格必须按锋面宽度把全域都加密,而AMR只需在锋面附近加密。这是一维的情况,二维、三维中均匀网格数按细度的平方、立方增加,而AMR只在锋面(线或面)附近加密,差距更大。但AMR的单元大小不一,每个单元的计算量和数据管理比均匀网格重,单元数之比并不直接等于计算时间之比。

用法与注意事项

设置要点

  1. 指标要选最能表示所关注现象的量(界面用体积分数,激波用压力梯度,涡用涡量)。
  2. 确定最大加密级数,确认最小单元能表示现象的最小尺度。
  3. 确定加密频率;锋面在两次自适应之间移动超过一个单元,就会跑出加密区域。
  4. 改变阈值,确认结果不变(AMR下的网格无关性)。

注意事项

  • 粗细交界:相邻单元尺寸比控制在2倍以内,还需要保证守恒量不泄漏的修正。
  • 壁面附近:边界层膨胀层与AMR有时不兼容,壁面附近常用固定网格。
  • 并行负载:加密区域集中在部分处理器上会导致负载不均变慢,需要重新分配负载。
Coffee Break 随笔闲谈

“加密区域总是慢半拍”

用AMR追踪高速移动的火焰或激波时,加密区域可能追不上,锋面跑进粗网格中。于是锋面变模糊,指标值也变小,不再加密,形成恶性循环。对策是缩短加密间隔,或在锋面前方留出余量加密(缓冲层)。对静止现象有效的AMR设置,对运动现象未必能直接用,要随时间确认锋面位置和加密区域位置。

常见错误

错误与对策

错误后果对策
指标与现象不匹配需要的地方仍然粗选择表示现象的量
加密间隔过长锋面跑进粗网格缩短间隔、缓冲层
不看阈值敏感度结果依赖设置改变阈值比较
按单元数比估算时间低估计算时间考虑小步长和管理开销
忽略粗细交界守恒质量等泄漏使用守恒修正
🙋

我想自己试试网格细度的影响。

🎓

可以用网格收敛工具和网格无关性研究工具试试网格细度与误差,用CFD网格质量检查看网格质量。其他网格技术见重叠网格、膨胀层和多面体网格,确认方法见网格无关性。

关联模拟器

在本领域的交互式模拟器中体验理论

模拟器列表

相关分析领域

热分析V&V·质量保证结构分析
本文评价
感谢您的反馈!
有帮助
更详细
报错
有帮助
0
更详细
0
报错
0