稳态与瞬态是流体计算为了方便而提出的概念,实际上任何流动、传热问题都应该是瞬态的,因为这些现象总是在时间维度上进行的。
但是实际上部分流动、传热问题在一定的时间之后,不再随时间而变化,达到了稳定的状态,当我们只考虑稳定之后的状态时,就可以用稳态进行计算;而如果我们想要研究达到稳态之前的状态,就必须使用瞬态进行计算。

那么是不是所有的流动问题最终都能达到瞬态呢?我的理解并不是,比如湍流问题,由于它的随机性,导致湍流过程总是随时间呈现不同状态。但这并不是说湍流不能用稳态模拟,实际上很多湍流都可以使用稳态进行模拟,因为我们只需要关注它 宏 观上的规律性。

再比如一杯水蒸发,显然杯中的水最终会蒸发完,如果我们想要研究水的蒸发过程就必须使用瞬态。


那么瞬态计算需要注意什么呢?
Fluent软件瞬态计算中有三个比较重要的设置:Number of Time Steps、Time Step Size和Max Iterations/Time Step

首先,计算 unsteady flow 的时候,fluent 是从前一个时间算到下一个时间的。
从这个意思上来就认为是“time step”,一个时间接一个时间,而每个时间就相当于一个准稳态,因此计算的时候需要 Max Iterations per Time Step,这个就像你在计算稳态时候需要设置的一样,在达到 iteration 次数之前收敛就完成这个 time step,否则就算到所规定的次数。
对稳态,Number of iterations表示迭代次数,一个迭代次数就会将所有的网格遍历一遍,完成一次循环。刚开始给网格的值可能不收敛,甚至和收敛网格相差很大,所以需要多次迭代。
而对非稳态来说,需要定义流动时间。一共流动多少秒,由此需要知道 时间间隔 (time step size),在这个时间间隔内,认为是稳态流动。
Max Iterations per Time Step是这个时间间隔最大的迭代次数,也就是说在这个时间间隔内最多迭代完这些步,同时当迭代完这些步数之后,流动就进行了这么多的时间。
Number of time steps表示有多少个这样的时间间隔。所以流动总时间应该是Number of time steps与time step size相乘,由于每个时间间隔最多迭代Max Iterations per Time Step,所以最大的迭代步数应该是Max Iterations per Time Step乘以Number of time steps。
所以当时间间隔取的越小,模拟应该越精确。但是要模拟相同的时间,Number of time steps取的要更大,总迭代次数也要更大。
有关 time step size 的设定。既然是一个时间接一个时间计算的,那就存在一个问题,两个时间之间的间隔是多少?
比特征长度除以特征速度所得的时间小一至二个量级,比如流体以入口速度1m/s要经过1米的计算段,那么这个time step size就是 0.1至0.01 秒或者更小些。
Fluent 中提供了一个调整的判断依据,在每个时间(time step) 计算的 Iterations 在 5-10 次是最理想的,因此,如果每个 time step里 Iterations 的次数大于 10,那就要把 time step size 设置更小些,如果是小于 5 的,就调大些。
但是对于刚开始阶段(startup),这个判断并不合适,因为开始一般要充分收敛,所以在开始的 5-10 个 time step 里,还是应该把 time step size 设置充分小,到后面再逐渐增大 time step size。
特别是一开始不知道如何设定的时候,最好是打开 adaptive 让他自动定义定义时间步长跑最好了。其中最小的时间尺度,我认为最小也只能小到这个比例的 1/100 的这个水平上。
如果计算中发现达不到收敛的要求,建议不要盲目增加循环迭代次数,一般默认 10-15 次就够了,可以相应地适当减小 timestep 来达到收敛标准。
原文链接:
https://mp.weixin.qq.com/s/bjaDZOX3wEmNV-kisYOnuwhttps://mp.weixin.qq.com/s/bjaDZOX3wEmNV-kisYOnuw
以上案例的cas和dat文件均可以 免费 获取,需要的朋友,只需要点赞关注收藏一键三连后私信我即可哦
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删