OpenFOAM-3.0 没有对压力场进行松弛因子的设定??
-
上面是2.4的userguide 下面是3.0 guide 为什么 3.0 没有对压力场进行松弛因子的设定 -
Hi,
抱歉,编程指南上面那个50目前我已经更改了,稍后发布。
3.0并没有省略松弛因子,3.0中的
".*"
是通配符,表示所有的变量都包含进去了。
另外,放在field中和放在equation中的不同之处在于,field中的松弛是对求解后的场直接松弛,equation中的松弛,是对矩阵进行松弛。俩种区别请参考:低松弛
-
谢谢东岳大神的解答。很详细。
-
数值传热学和Fluent中一般压力的亚松弛因子为0.3,速度的亚松弛因子为0.7,且一般认为压力和速度的亚松弛因子相加为1, 3.0中压力和速度亚松弛因子均取0.9感觉很奇怪。
-
@dyj19901127 是在一个具体的算例中?还是只是在这个图片中?哪个算例?
-
@李东岳
老师,最近我也在关注松弛因子的影响,所以找了一下
比如在incompressible/simpleFoam/pitzDaily算例中,fvSolution就是类似这样设置的,请问这样是认为p的松弛因子为0.9了吗
(当然simpleFoam的airfoil算例就是把p单独列出来了) -
@dyj19901127 p 0.3 U 0.7 这种组合是 SIMPLE 算法的常用设置,但对于 SIMPLEC 算法,U 0.9 p 0.9 或者 U 0.7 p 0.7 这样的组合是很常见的。
-
@evensun
不是,如果是上面截图那样,只在 equations 部分设置了松弛因子,那么 p 的松弛就是1.0,也就是不松驰。SIMPLEC 算法对于网格比较好的算例,p可以不松驰。但是对于复杂几何,一般 p 也会给小于1的松弛,以提高计算稳定性。 -
p是否松弛主要取决于网格是吗老师
老师因为我是新手,所以想请教一下,从您的经验上看,哪些因素对SIMPLEC算法收敛性影响较大呢呢,比如网格,离散格式,松弛因子,还有别的吗 -
@xpqiu 可是东岳老师说“.*”是通配符,那不是p的松弛因子为0.9吗?
-
@warnerchang 要看定义在哪个关键字下。定义在 equations 关键字下的,只会对类似 UEqn.relax() 这样的起作用,也就是说,只会用于 fvMatrix 的隐式松弛。而压力的松弛其实是对一个 field 的显式松弛,
$$
p^{n+1} = \alpha_p p^{n+1} + (1-\alpha_p)p^n
$$
对于这种松弛,松弛因子会在 relaxationFactors 下面的 fields 关键字下去查找,而不会去 equations 关键字下去查找。P.S.:以上针对的是类 SIMPLE 算法来讨论的,其他算法可能不完全一样。
-
@evensun
p 是否松弛,我认为主要取决于网格。有些变种的算法,甚至可以对p进行超松弛,也就是松弛因子大于1。
除了这三个,还跟计算前的初始化有关系。比如计算前用 potentialFoam 初始化一下速度场,一般会提高稳定性以及加速收敛。另外,如果再用某种方式对边界层附近的速度分布初始化一下,也可能加速收敛。 -
@xpqiu 噢噢,明白了,谢谢老师讲解的这么明白!
论坛登录问题反馈可联系 li.dy@dyfluid.com