关于压力松弛因子的疑问
-
使用rhoSimpleFoam计算圆管内流动时,发现收敛时time step error很大,进出口质量流量也相差较大,修改网格、数值格式、边界条件均无效,后对照tutorial,发现问题出在压力松弛因子。原本为避免发散,将松弛因子均设为了0.3,然后逐渐增加至0.7~0.9,这样设置就会出现上述问题,参照tutorial将压力松弛给到1,此时进出口流量守恒。
针对压力松弛因子,从第5200步开始,做了如下测试:-
将field中的压力松弛因子设置为1,其余0.9,5951收敛:time step error=118.87,phi=0.00751(0.00779)
-
将equations中的压力松弛因子设置为1,其余0.9,5275收敛:time step error=0.00196268,phi=0.00779(0.00779)
-
将equations与field中的压力松弛因子均设置为1,其余0.9,5268收敛:time step error=0.00283641,phi=0.00779(0.00779)
-
将equations与field中的压力松弛因子均设置为0.9,其余0.9,5786收敛:time step error=130.74,phi=0.00748(0.00779)
可以看出:equations中的压力松弛因子的设定是进出口量守恒的关键,请问这是为什么?是否所有计算中都要将equations中的压力松弛因子最终给到1? 谢谢!
-
-
@东岳
这几天在算复杂模型,发现对于我的算例初场很差时,将equations中压力松弛因子先调低再调到1是有必要的,可以保证前期不发散,后期time step error的sum local持续降低。
值得注意的是我的算例中包含10个圆通道,采用相同的fvSolution时(equations中压力松弛因子为1),8个通道的sum可以降到0.001,2个通道的sum维持在1左右,但是检查进出口质量流量相差不大,不知道为什么。
这个可以当作一个trick吧,如果time step error降不下去,可以试着调一下equations中的压力松弛因子。 -
-
-