|
|
[求助]
一个老生常谈的话题----亚松弛因子
由于流体力学中要求解非线性的方程,在求解过程中,控制变量的变化是很必要的,这就通过松弛因子来实现的.它控制变量在每次迭代中的变化.也就是说,变量的新值为原值加上变化量乘以松弛因子。
一般来讲,大家都是在收敛不好的时候,采用一个较小的欠松弛因子。 Fluent里面用的是欠松弛,主要防止两次迭代值相差太大引起发散。
松弛因子的值在0~1之间,越小表示两次迭代值之间变化越小,也就越稳定,但收敛也就越慢。
由于FLUENT所解方程组的非线性,我们有必要控制的变化。一般用亚松驰方法来实现控制,该方法在每一部迭代中减少了的变化量。亚松驰最简单的形式为:单元内变量等于原来的值加上亚松驰因子a与变化的积分离解算器使用亚松驰来控制每一步迭代中的计算变量的更新。这就意味着使用分离解算器解的方程,包括耦合解算器所解的非耦合方程(湍流和其他标量)都会有一个相关的亚松驰因子。
注:在FLUENT中,所有变量的默认亚松驰因子都是对大多数问题的最优值。这个值适合于很多问题,但是对于一些特殊的非线性问题(如:某些湍流或者高Rayleigh数自然对流问题),在计算开始时要慎重减小亚松驰因子。
使用默认的亚松驰因子开始计算是很好的习惯。如果经过4到5步的迭代残差仍然增长,你就需要减小亚松驰因子。
有时候,如果发现残差开始增加,你可以改变亚松驰因子重新计算。
但是此时,我有一个问题,就是关于亚松弛因子-----liquid fraction update
我的计算模型主要是3D的VOF和熔化凝固模型。对于亚松弛因子的设定如下:
![]()
本来都是默认设定的。liquid fraction update的默认值为0.9.
可是在计算中间,连续性残差不稳,出现突然上升的情况。
![]()
此时的Global Courant Number还是小于1的。一个解决办法是减小时间步。可是时间步减小,计算到指定时间所需要的时间步就多了。于是我将liquid fraction update的亚松弛因子由默认的0.9改为0.5接着往下计算,“躲过”了这次的不稳定。
![]()
可是,这样直接修改松弛因子接着往下算,有没有问题?对结果有没有影响?
有的朋友说既然改变了亚松弛因子,就要从头开始算。--------不是我不想从头开始算,主要是我前面的数据已经连续计算5天(120小时)了,重头再来的话,工程浩大。
对于到底取多少松弛因子,有的朋友说多测试,只是问题又来了,我的一个数据计算得上十天,如果一个一个测试,那么时间。。。。。。?
好了,我总结一下自己的问题吧。
1 亚松弛因子是否可以在计算中途改变,改变前后结果是否有继承性?
2 对于亚松弛因子的设定,除了按照默认设定,经验设定,还有其他办法吗?
啰嗦了半天,谢谢大家了 |
» 猜你喜欢
售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急
已经有3人回复
售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急
已经有3人回复
售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急
已经有3人回复
售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急
已经有3人回复
售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急
已经有3人回复
售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急
已经有4人回复
售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急
已经有4人回复
售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急
已经有4人回复
售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急
已经有4人回复
售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急
已经有4人回复
|