在 Fluent 中,代数多重网格法(AMG, Algebraic Multigrid)是加速线性方程组求解的关键技术。其核心思想是通过在不同粗细的网格层级(Levels)之间传递残差和修正量,来消除不同波长的误差。Fluent中的AMG算法有4种模式:V-Cycle、W-Cycle、F-Cycle 和 Flexible,如下图所示 ,它们决定了求解器在粗细网格之间往返转换的路径和频率。

1 各种模式的特点
1.1 V-Cycle
-
特点: 最简单的循环模式。从最细网格开始,逐层限制(Restriction)下降到最粗网格,在最粗网格上求解后,再逐层内插(Interpolation)和修正,直接返回到最细网格。图形轨迹呈 “V” 字形。 -
代价: 单次循环的计算量最小,内存占用最少。 -
表现: 对常规、高网格质量的标准流动问题效率很高,但在面对复杂物理场(如强烈旋转、高度非线性)时,消除低频误差的能力稍显不足。
1.2 W-Cycle
-
特点: 递归式的循环模式。在下降和上升的过程中,会反复在中间的粗网格层级进行多次“小V型”循环,直到最粗层。图形轨迹类似于 “W” 字形。 -
代价: 单次循环的计算量明显大于 V-Cycle(尤其是粗网格上的平滑次数大幅增加)。 -
表现: 由于在粗网格上停留和优化的时间更长,它能更彻底地消除低频长波误差。在收敛困难的算例中,它可以用更少的循环总步数达到收敛。
1.3 F-Cycle
-
特点: 介于 V-Cycle 和 W-Cycle 之间的折中方案(Flexible V-cycle 的一种变体)。它先执行一个类似于 W-Cycle 的深度粗化探索,然后再以类似于 V-Cycle 的方式直接返回最细网格。 -
代价: 单次计算量和内存介于 V-Cycle 和 W-Cycle 之间。 -
表现: 它的设计初衷是兼顾 W-Cycle 的高收敛率和 V-Cycle 的低单步耗时。在许多复杂流动中,F-Cycle 的性价比(总计算时间)往往是最高的。
1.4 Flexible
-
特点: 这是一种动态、自适应的模式,不再有固定的“V”或“W”轨迹。求解器会根据当前的残差下降速度,实时、动态地决定是继续往更粗的网格下降,还是升回细网格。 -
代价: 灵活多变,难以一概而论,但通常能把计算量精准花在“最需要优化的网格层”上。 -
表现: Fluent 默认的压力方程常采用此设置。它对极度病态的方程(如大长宽比网格、剧烈密度变化的流动)有很强的鲁棒性。
2 特性对比表
|
|
|
|
|
|
|---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 应用中如何选择?
3.1 压力方程 (Pressure)
-
推荐:Flexible -
在不可压缩或弱可压缩流动中,压力方程(Poisson方程)的求解是制约收敛速度的最大瓶颈。Flexible 模式能够针对压力修正场进行极其高效的自适应调整。如果遇到极端网格(如超大壁面高宽比的边界层网格)导致 Flexible 报错或不收敛,可以尝试切换为 W-Cycle 来强制增强粗网格平滑。
3.2 动量方程 (Momentum) 与 能量方程 (Energy)
-
推荐:V-Cycle 或 F-Cycle -
对于中低复杂度的常规流动(如低速管道流、外部绕流等),默认的 V-Cycle 速度最快,总耗时最短。 -
对于高复杂度的流动(如多相流、剧烈化学反应、高超音速冲击波、强旋流),V-Cycle 可能容易产生残差震荡。此时将其提升为 F-Cycle,可以显著增强算法的稳定性,加快总体收敛。
3.3. 湍流方程及其他标量方程
-
推荐:V-Cycle -
湍流输运方程本身的非线性极强,但其方程形式相对动量和压力更加独立。使用最基础的 V-Cycle 即可满足绝大多数需求。将其改为 W 或 F-Cycle 通常不仅不会加速收敛,反而会因为单步计算量过大而浪费大量的 CPU 时间。
(完)

本篇文章来源于微信公众号: CFD之道








评论前必须登录!
注册