用 FLUENT 计算非稳态问题,是不是在计算时必须保证在每个时间步 timestep 里都要收敛
才行,否则计算结果就不对呢?也就是说,在 iteration 选项里, max iteration pertime step 设
为一个值,比如 500,就是如果 500 次迭代后仍未收敛,进入下一步迭代,那对结果会有什
么影响。
对于隐式非定常格式,原则上,每个时间步长内必须保证结果收敛。在 fluent 的帮助中
就有这样的话: “对于不可压流动,在每个时间步内,不可压解必须迭代直至收敛。 ”另外,
我们回归到 fluent 内部计算的本源, 它实质就是一种差分算法, 通过不断逼近来获得真实解,
这样我们就不难理解为什么在每个时间步长内需要收敛了。 max iteration pertime step 设定的
是最大时间步, 在单一步长内, 如果结果已经收敛,则会自动跳至下一时间进行计算。 所以
其设定要纵观全局。 但对于周期性流动, 这种收敛性的要求就相对松动一些。 不过你需要多
计算几个周期,等计算结果达到对时间的周期状态后,再对结果进行储存。
对于显式非定常格式,在 Fluent 帮助中这样说: “一定记住,对于显式非定常格式,每一
个迭代就是一个时间步。 ”
如果每个时间步内结果没有得到收敛,则很有可能你所得到的结果是不真实的,但是一
个时间步内的不真实性应该不 会影响到下一个时间步长内的计算。因为在每一个时间步开
时, fluent 都会进行初始化。在单个时间步内,它实际是按照稳态进行计算的。
time step size 的设定是根据你的计算需要,一般是你的特征长度(比如说管道的
长度)除于特征速度(比如平均速度)的值再小一到两个量级即可,如果你的 time
stip size 太大,计算会提示你的,改小即可。
number of time steps 是这样设定的: number of time steps X time step size
=实际时间积累。比如说,你计算一个射流,你需要计算到 1 秒时候的情况,那
么( number of time steps )= 1 秒/( time step size )。
Fluent 中非稳态时间步长设置
最近所做的非稳态计算,若设置太小,计算时间就太长,设置太大的话就会出现
Global Courant Number 飙升过大的不能继续进行下去的问题。
有网友建议: /dvbbs/?boardid=61&Id=3782
单元最小长度除于流场平均流速,不过这个值可能很小,你可以以这个值为基准进
行调节,一开始可以取大些,如果没有问题,可以再放大些,这样可以缩短计算时
间。
,
若按这种方法,计算下面这个例子: 2mm 10 个网格,流速 1m/s。时间步长 time
steps== 。但是我在进行计算时,设置为 1e-6 ,都无法进行下去。
所以这种换算方法还是只能作为参考。
我现在采用的是自动调节时间步长,目前看来效果还可以。
怎么知道非稳态计算时间步长是合适的?
courant number 与收敛
courant number 实际上是指时间步长和空间步长的相对关
fluent时间步长 来自淘豆网m.daumloan.com转载请标明出处.