二十九、Fluent瞬態時間步長與迭代步數的討論
1.穩態與瞬態
穩態與瞬態是流體計算為了方便而提出的概念,實際上任何流動、傳熱問題都應該是瞬態的,因為這些現象總是在時間維度上進行的。
但是實際上部分流動、傳熱問題在一定的時間之后,不再隨時間而變化,達到了穩定的狀態,當我們只考慮穩定之后的狀態時,就可以用穩態進行計算;而如果我們想要研究達到穩態之前的狀態,就必須使用瞬態進行計算。
那么是不是所有的流動問題最終都能達到瞬態呢?我的理解并不是,比如湍流問題,由于它的隨機性,導致湍流過程總是隨時間呈現不同狀態。但這并不是說湍流不能用穩態模擬,實際上很多湍流都可以使用穩態進行模擬,因為我們只需要關注它宏觀上的規律性。
再比如一杯水蒸發,顯然杯中的水最終會蒸發完,如果我們想要研究水的蒸發過程就必須使用瞬態。
2.瞬態設置
那么瞬態計算需要注意什么呢?
Fluent軟件瞬態計算中有三個比較重要的設置:Number of Time Steps、Time Step Size和Max Iterations/Time Step
3.Max Iterations/Time Step
首先,計算 unsteady flow 的時候,fluent 是從前一個時間算到下一個時間的。
從這個意思上來就認為是“time step”,一個時間接一個時間,而每個時間就相當于一個準穩態,因此計算的時候需要 Max Iterations per Time Step,這個就像你在計算穩態時候需要設置的一樣,在達到 iteration 次數之前收斂就完成這個 time step,否則就算到所規定的次數。
4.Number of Time Steps
對穩態,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取的要更大,總迭代次數也要更大。
5. Time step size 設置依據
有關 time step size 的設定。既然是一個時間接一個時間計算的,那就存在一個問題,兩個時間之間的間隔是多少?
5.1 特征長度依據
比特征長度除以特征速度所得的時間小一至二個量級,比如流體以入口速度1m/s要經過1米的計算段,那么這個time step size就是 0.1至0.01 秒或者更小些。
5.2 最大迭代次數依據
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 的這個水平上。
5.3 收斂方法
如果計算中發現達不到收斂的要求,建議不要盲目增加循環迭代次數,一般默認 10-15 次就夠了,可以相應地適當減小 timestep 來達到收斂標準。
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















