本文描述在Fluent中选择使用压力基求解器的一些参数设置。
注:本文译自Fluent User Guide 32.3,存放备查阅。
”
1 选择压力-速度耦合方法
当使用压力基求解器时,压力-速度耦合方法控制压力和速度的更新方式。该方法可以是分离(压力和速度按顺序更新)或耦合(压力和速度同时更新)。
Fluent 提供以下分离类型的算法:
-
SIMPLE -
SIMPLEC -
PISO -
Fractional Step(FSM)(仅具有非迭代时间推进 (NITA) 的时间相关流动)
一般来说,分离算法单次迭代速度更快,而耦合算法通常需要更少的迭代来收敛。因此,常建议将耦合求解器用于稳态模拟。对于瞬态仿真,耦合求解器具有最佳的稳健性,尤其是在大时间步长时,但 SIMPLEC、PISO 或 NITA 等分离散发可能会为小时间步长提供更快的整体求解时间。
耦合求解器提供以下机制来对方程进行欠松弛处理:
-
伪瞬态Pseudo Transient(仅用于稳态) -
Courant number
在以下条件时,默认选择耦合伪瞬态算法:
-
稳态 -
单相 -
无电池或燃料电池模型 -
无凝固熔化模型
注:压力速度耦合算法仅用于压力基求解器
”
1.1 SIMPLE vs. SIMPLEC
在 Ansys Fluent 中,标准 SIMPLE 算法和 SIMPLEC(SIMPLE-Consistent)算法都可用。SIMPLE 是默认设置,但使用 SIMPLEC 会带来许多好处,特别是因为可以应用额外的欠松弛,如下所述。
对于收敛受压力-速度耦合限制的相对简单的问题(没有启用附加模型的层流),通常可以使用SIMPLEC更快地获得收敛解。对于SIMPLEC,压力校正亚松弛因子通常设置为1.0,这有助于加快收敛速度。然而,在某些问题中,将压力修正亚松弛增加到1.0可能会由于网格歪斜度高而导致计算不稳定。对于这种情况,需要使用一个或多个偏度校正方案,使用稍微保守的欠松弛值(高达0.7),或使用SIMPLE算法。对于包含湍流和/或附加物理模型的复杂流动,SIMPLEC只有在受到压力-速度耦合的限制时才能提高收敛性。通常,它是限制收敛的附加模型参数之一;在这种情况下,SIMPLE和SIMPLEC将给出相似的收敛速度。
1.2 PISO
强烈建议在所有瞬态流计算中使用具有邻域校正的 PISO 算法,尤其是在想要使用较大的时间步长时。(对于使用 LES 湍流模型的问题,通常需要较小的时间步长,使用 PISO 可能会导致计算开销增加,因此应考虑使用 SIMPLE 或 SIMPLEC)。PISO 可以用更大的时间步长保持稳定的计算,动量和压力的欠松弛因子为 1.0。对于稳态问题,与SIMPLE或具有最佳欠松弛因子的SIMPLEC 算法相比,具有邻域校正的 PISO 算法没有提供任何明显的优势。
对于高畸变网格的稳态和瞬态计算,建议使用带歪斜度校正的PISO算法。
使用PISO邻近校正时,建议所有方程的松弛因子为1.0或接近1.0。如果仅对高度扭曲的网格使用PISO“倾斜”校正(无相邻校正),请为“动量”和“压力”设置“欠松弛因子”,使其总和为1(例如,压力方程设置为0.3,动量方程设置为0.7)。
对于大多数问题,不必禁用相邻和倾斜校正之间的默认耦合。但是,对于高度扭曲的网格,建议禁用相邻和倾斜校正之间的默认耦合。
1.3 Fractional Step方法
当选择使用 NITA 方法(Non-Iterative Time Advancement)时,可以使用 Fractional Step method (FSM) 。NITA 方法与 PISO 算法相比,FSM 的计算成本略低。选择 FSM 还是 PISO 取决于实际问题。对于某些问题(例如,使用 VOF 的模拟),FSM 可能不如 PISO 稳定。
在大多数情况下,求解方法的默认值足以设置由于歪斜引起的内部压力校正子迭代的鲁棒收敛性。只有非常复杂的问题(如移动变形网格、滑动界面、VOF模型等)可能需要将压力的松弛减少到0.7或0.8。
1.4 Coupled算法
从Pressure-Velocity Coupling下拉列表中选择Coupled表示正在使用压力基耦合算法。与压力基分离算法相比,该求解器具有一些优势。压力基耦合算法为稳态流动获得了更稳健和有效的单相实现。此算法不适用于使用非迭代时间推进选项 (NITA) 的问题。
注意:在某些使用多孔阶跃边界条件的情况下,耦合算法可能会遇到不响应耦合求解器设置变化的收敛问题。这种行为取决于特定的流动分布和多孔跳跃边界条件值。如果在使用多孔跳跃边界条件和耦合方案的情况下观察到收敛不稳定,建议将压力-速度耦合更改为分离算法之一。
”
1.5 用户输入
可以在Solution Methods任务面板中设置压力-速度耦合算法。
在Pressure-Velocity Coupling下拉列表中选择 SIMPLE、SIMPLEC、PISO、Fractional Step或Coupled。
如果选择 PISO,任务页面将展开以显示压力-速度耦合的附加参数。默认情况下,Skewness Correction 和 Neighbor Correction 的迭代次数设置为 1。如果只想使用 Skewness Correction,则将 Neighbor Correction 的迭代次数设置为 0。同样,如果只想使用 Neighbor Correction,则可以将Skewness Correction的迭代次数设置为 0。对于大多数问题,不需要更改默认迭代值。默认情况下,Skewness-Neighbor Coupling 选项被启用以允许使用 PISO 算法的更经济但不太稳健的变体。
如果在 Pressure-Velocity Coupling 下选择 SIMPLEC,则还必须设置 Skewness Correction,其默认值为 0。
如果选择Coupled而不使用Pseudo Transient选项,则必须在Solution Controls任务页中指定Courant数,其默认设置为200。另外还将指定Momentum和Pressure的Explicit Relaxation Factors,默认情况下设置为0.5。
对于具有非常倾斜网格的问题,可以通过进一步将显式松弛因子减少到0.25来稳定运行。如果Fluent在AMG解算器中立即发散,那么CFL值太高,应该减小。不建议将CFL数减少到10以下,此时对于压力-速度耦合,最好使用分离算法。
在大多数瞬态情况下,CFL数应设置为较大的值,如1E7,显式松弛因子应设置为1.0。
如果选择了Coupled算法并启用 Pseudo Transient 选项,将在 Solution Controls 任务页面中设置 Pseudo Transient Explicit Relaxation Factors。
2 质量通量类型
质量通量的计算方法可以在Solution Methods
面板中的Flux Type
下拉框中选择。
使用压力基求解器时,可以从以下选项中进行选择:
-
Rhie-Chow: distance based
此通量选项应用距离加权高阶速度插值,并针对压力梯度差进行 Rhie-Chow 校正。这是默认选项,建议用于大多数情况(特别是那些具有误差波动非物理反射的情况)。
-
Rhie-Chow: momentum based
该通量选项遵循动量系数加权高阶速度插值,并对压力梯度差进行Rhie-Chow校正。
可以启用 Flux Type 列表旁边的 Auto Select 选项,以便 Fluent 根据问题设置自动选择类型:可压缩流体选择Rhie-Chow: distance based,不可压缩流动选择Rhie-Chow: momentum based。
注意:对于湿蒸汽模型以外的多相流模型,Flux Type列表不可用,而使用Rhie-Chow: momentum based。
”
3 设置亚松弛因子
压力基求解器使用方程的欠松弛来控制每次迭代时计算变量的更新。这意味着使用压力基求解器求解的所有方程,包括由密度基求解器求解的非耦合方程(湍流方程和其他标量方程),都将具有与之相关的欠松弛因子。
在Fluent中,所有变量的默认亚松弛因子都设置为接近最佳的值,以满足最大可能的情况。这些值适用于许多问题,但对于一些特殊的非线性问题(如一些湍流或高瑞利数自然对流问题),谨慎的做法是减小初始亚松弛因子。
使用默认的欠松弛因子开始计算是一种很好的做法。如果残差在前 4 或 5 次迭代后持续增加,则应考虑减少亚松弛因子。
有时,用户可能会更改欠松弛因子并继续计算,结果却发现残差开始增加。这通常是由于过度增加欠松弛因子造成的。一种谨慎的方法是在对欠松弛因子进行更改之前保存data文件,并为求解算法进行几次迭代以适应新的参数。通常欠松弛因子的增加会导致残差略有增加,但随着求解的进行,这些增加通常会消失。如果残差跳跃了几个数量级,此时应该考虑停止计算并返回到保存的最后一个data文件。
注意,粘度和密度在一次迭代到另一次迭代的过程中是欠松弛的。此外,如果直接求解焓方程而不是温度方程(对于非预混燃烧计算),则基于焓的温度更新将不受限制。要查看默认的亚松弛因子,可以单击Solution Controls任务页中的Default按钮。
对于大多数流动问题,默认的亚松弛因子通常不需要修改。但如果观察到计算不稳定或发散行为,则需要将压力、动量、湍动能和湍流耗散率的欠松弛因子从其默认值减少到约0.2、0.5、0.5和0.5,(对于SIMPLEC算法,通常不必降低压力松弛)。在密度与温度强耦合的问题中,如在非常高的瑞利数自然对流或混合对流中,明智的做法是也对温度方程和/或密度进行松弛(即使用小于1.0的松弛因子)。相反,当温度与动量方程不耦合(或弱耦合)时,如在密度恒定的流动中,温度的欠松弛因子可以设置为1.0。
对于其他标量方程(如旋转、组分、混合分数和混合分数方差等),默认的松弛因子对于某些问题来说可能过于激进,特别是在计算开始时。此时可能希望将因子减少到0.8以便于收敛。
可以在Solution Controls面板中设置亚松弛因子,如下图所示。
重要提示:如果使用压力基求解器,则所有方程都将有一个关联的欠松弛因子。如果使用的是密度基求解器,则只有那些按顺序求解的方程才会具有欠松弛因子。
”
如果问题中涉及到组分输运,则可以为每个列出的组分设置欠松弛因子。如果希望所有组分使用相同的亚松弛因子,只需激活选项Set All Species URFs Together。注意激活此选项后,将不再显示单个组分的列表,而是出现一个Species输入框,用户可以在其中指定所有组分的欠松弛因子。
如果修改了亚松弛因子,而想要恢复到默认的亚松弛因子,可以单击Solution Controls任务页中的Default按钮。
注意在最佳设置下,压力-速度耦合算法的收敛性将受到其他标量方程(例如湍流)分离解的限制。为获得最佳求解器性能,需要增大这些方程的亚松弛因子。
本篇文章来源于微信公众号: CFD之道
评论前必须登录!
注册