
發布
注冊
/
登錄Fluent收斂曲線的案例
【轉載】Fluent中殘差曲線continuity不收斂的問題
continuity不收斂的問題
(1)連續性方程不收斂是怎么回事?
在計算過程中其它指數都收斂了,就continuity不收斂是怎么回事。
這和fluent程序的求解方法SIMPLE有關。SIMPLE根據連續方程推導出壓力修正方法求解壓力。由于連續方程中
流場耦合項被過渡簡化,使得壓力修正方程不能準確反映流場的變化,從而導致該方程收斂緩慢。
你可以試驗SIMPLEC方法,應該會收斂快些。
在計算模擬中,continuity總不收斂,除了加密網格,還有別的辦法嗎?別的條件都已經收斂了,就差它自己
了,還有收斂的標準是什么?是不是到了一定的尺度就能收斂了,比如10-e5具體的數量級就收斂了
continuity
是質量殘差,具體是表示本次計算結果與上次計算結果的差別,如果別的條件收斂了,就差它。可
以點report,打開里面FLUX選項,算出進口與出口的質量流量差,看它是否小于0.5%.如果小于,可以判斷它
收斂.
(2)
fluent殘差曲線圖中continuity是什么含義?
是質量守恒方程的反映,也就是連續性的殘差。這個收斂的快并不能說明你的計算就一定正確,還要看動量
方程的迭代計算。
展開 ANSYS Workbench非線性分析收斂曲線解讀
進行非線性分析時,收斂性是大家非常關心的一個問題。在Ansys workbench中,可以通過Details of “Solution Information”中選擇“Solution Output=Force Convergence”來查看收斂情況,其中,最直觀的莫過于力收斂曲線了。
Solution Output選項
力收斂曲線如下圖所示:
力收斂曲線圖
判斷收斂的方法很簡單,只要“計算的力收斂曲線”落在“力收斂準則”曲線之下,就表示該載荷步或子步收斂了。
該模型中有兩個載荷步,分析設置中時間步長設置為“Program Contrlled”.
除了看上述的力收斂曲線圖,我們可以設置“Solution Output= Solve Output”查看計算輸出信息,從其中可以更詳細地看到收斂情況。
可以將計算輸出的信息與力收斂曲線圖對比起來看,就更容易理解力收斂圖了。
第1個載荷步中,第1個分析子步經過了15次迭代收斂(圖中每個圓點代表一次迭代)。
經過4個分析子步,第1個載荷步完成加載并收斂。第2個載荷步程序自動設置的信息如下:
初始子步數量為5,載荷步的分析時間為1s,因此初始的時間步長為0.2s。
第2個載荷步的第1個分析子步,經過25次計算迭代后,還不收斂。程序進行自動二分,將時間步長除以2,變為0.1s。
自動二分是一種用于解決非線性分析過程中收斂困難的策略。當收斂失敗發生在某個子步中,程序會自動減小時間步長,通常是前一個步長的一半左右。然后,程序會從前一個成功收斂的時間子步繼續求解。如果再次遇到收斂失敗,程序會繼續減小時間步長并繼續求解,直到達到收斂或達到指定的最小時間步長值。這種方法有助于逐步逼近正確解,并確保分析的穩定性和準確性。
展開 fluent使用經驗 y+ 周期性邊界條件 收斂標準 修改fluent中單位
3.三種判斷收斂的方法:(1)殘差達到一個可以接受的程度:默認出了能量是10^-6以外,其余的全是10^-3。
(2)求解值不再隨迭代發生改變:有時候,殘差還在下降,但是某些監視的流動變量不再發生變化即可。
(3)系統的質量、動量、能量達到平衡:利用flux report實現,要求凈不平衡量小于0.2%。
4.創建一對周期性邊界的的方法:(1)在命令框中按回車,得到命令提示符>
(2)輸入mesh/modify-zones/make-periodic,再根據提示選擇相應的面。
5.outflow邊界條件不需要給定任何入口的物理條件,但是應用也會有限制,大致為以下四點:
1.只能用于不可壓縮流動
2.出口處流動充分發展
3.不能與任何壓力邊界條件搭配使用(壓力入口、壓力出口)
4.不能用于計算流量分配問題(比如有多個出口的問題)
6.在壓力出口中,會要求輸入相應的backflow turbulent intensity等值,這些值只有在迭代時產生返流的時候才會使用,
通常設置成一個合理的值。算例14中,設置為intensity 10%,diameter hydraulic按實際模型數值。
7.后處理的時候,顯示速度矢量圖的時候,箭頭的長度可以不按速度的大小給出,而僅由箭頭的顏色決定,具體的操作:
Vector options.勾選Fixed Length
8.波爾茲曼數能表征傳熱中對流傳熱和輻射傳熱所占的比例,具體的表達式在第14個例子的最后。
展開 FLUENT不收斂案例及解決方法
今天分享一個FLUENT的不收斂案例及其解決方法。計算的對象是一個新型的渦扇發動機加力燃燒室(圖1)。在這種新型加力燃燒室中,火焰穩定器被整合到整流支板上,因此整流支板和整流錐都需要冷卻。在整流支板和整流錐上開了很多小孔,冷卻氣從這些孔滲出,形成冷卻氣膜。
圖1 加力燃燒室
這個算例模擬的是實驗的工況。實驗中沒有在加力燃燒室內燃燒,而只是在“主流入口”處引入高溫氣體,在“冷卻氣入口”處引入冷卻氣,以檢驗氣膜冷卻的效能。
整流支板共有15塊,為了減小計算量,只計算其中的一塊(360°/15=24°)。主流入口和冷卻氣入口都采用“mass-flow-inlet”條件,其中主流入口的流量是0.8kg/s,總溫是1241.3K,冷卻氣入口的流量是0.024kg/s,總溫是490.3K。出口采用“pressure-outlet”條件,反壓是101325Pa(絕對壓力)。由于形狀比較復雜,特別是其中有很多小孔,所以采用非結構網格,四面體單元。流體的狀態方程采用理想氣體(ideal-gas)模型,湍流模型采用Realizable k-ε模型。采用基于壓力的求解器。
采用定常算法計算不收斂(圖2;這里我們使用FLUENT默認的收斂條件,即能量方程的殘差降低到1e-6以下,其余方程降低到1e-3以下)。考慮到可能是分離流誘發的非定常效應導致不收斂(見公眾號先前的文章“為何我這個流動總是算不收斂?我要砸電腦!”),我們嘗試使用非定常算法。但是不幸的是非定常算法仍然不能在每個時間步內收斂。非定常計算的典型殘差曲線如圖3所示。
圖2 定常計算的殘差曲線
圖3 非定常計算仍然不收斂。此圖是時間步長設為3×10-6秒時的結果。圖中顯示了5個時間步的殘差曲線。
為了弄清不收斂的原因,我們用MATLAB編寫兩個小程序。
展開 
三十二、Fluent收斂判斷標準及方法
Fluent迭代計算流程</strong></p><p> </p><p><strong>1.1 計算流程</strong></p><p><br></p><p>在講述收斂之前,我們先了解一下Fluent是如何進行迭代求解的。</p><p>在建模劃分網格后,通過一系列設置,單擊Calculation,Fluent開始計算,其流程如下:</p><ol><li>根據初始化值,假設流場物理量初值為Q0</li><li>在初值基礎上,根據守恒方程,對流場進行計算,得出新的流場物理量值Q1</li><li>比較Q0與Q1的值,|Q1-Q0|稱為絕對誤差,|Q1-Q0|/Q1為相對誤差。</li><li>若誤差小于設定值P,則達到收斂;否則,未達到收斂,取新的迭代值Q2進行計算,重復以上步驟。</li></ol><p> <img src="https://mmbiz.qpic.cn/mmbiz_png/8tJMdLVYZyicRKfutZe5xPg3lTv8ADcu3knGv8hoMiaxWXvaRicumZLAZPwOqfajkhK7zibJ9FCDYO1nYa9pkLs72Q/640?wx_fmt=png"> </p><p> </p><p> </p><p><strong>1.2 殘差的理解</strong></p><p><br></p><p>檢測的的物理量主要有速度、質量、能量、湍流參數等,如上圖1</p><p><br></p><p>這里的誤差并不是殘差Residual,實際上殘差的計算要復雜的多,但是為了理解方便,我們可以認為殘差等同于誤差。
展開 四十三、Fluent增強收斂性-偽瞬態計算
wx_fmt=png" width="100%"> </p><p><br></p><p>Automatic:Fluent會自動計算偽時間步長,自動時間尺度計算通常比較保守,將時間尺度因子增加到3或10會提高收斂速度。降低到0.3或0.1可使收斂性更好。</p><p><br></p><p>Length Scale Method:微調偽時間步長大小,有兩種方式:</p><p>Conservative:默認值,對于三維,使用網格體積的立方體根,對于二維,使用面積的平方根。</p><p>Aggressive:使用最大幾何范圍,比Conservative方式時間步長更大。</p><p><br></p><p><br></p><p>Verbosity:整數值0、1、2,默認是0,值為1將打印偽時間步長。值為2將打印有關計算的其他細節。</p><p><br></p><p><strong>3.2 Solid Time Scale</strong></p><p><br></p><p>只有當區域中存在固體區域,或在多孔介質模型、固化與熔融模型啟用了能量方程,Solid Time Scale才會出現在界面中。</p><p><br></p><p>User-Specified:可以輸入Pseudo Time Step Size。</p><p>Automatic:Fluent會自動計算偽時間步長</p><p><br></p><p><br></p><p><strong>4. 多相流偽時間步長設置</strong></p><p> </p><p>a. 上述的偽時間步長設置在多相流中同樣適用</p><p><br></p><p>b. 對于穩態問題,不應該僅基于殘差來判斷收斂性。為了更好地判斷收斂性,還應該監視特定位置的變量,直到該值基本不變。</p><p><br></p><p>c.
展開 大多數Fluent不收斂問題的通用解決辦法
抗生素是常見的消炎藥
如果我們將Fluent的算例比喻成正常的人體,那么出現的問題(比如計算不收斂、發散等情況)就可以看作是一種病癥,需要有針對性的進行處理。當然,對于特定的錯誤,產生問題的原因是非常多的:比如網格問題、物理模型選擇、邊界條件設定、求解設置等。每個案例情況不一樣,解決的方法也各不相同,大多數情況都需要“窄譜抗生素”來進行具體問題的具體分析。
Fluent案例的“病”,通常會表現為“計算不收斂”這一癥狀
顯然,解決這些個性化的問題,需要工程師具備有相當豐富的軟件操作能力和行業使用經驗,才能夠順利完成任務,這些并不是在短時間內能夠快速掌握的技巧。因此,本文嘗試推薦一種“廣譜抗生素”來應對Fluent案例常見的“不收斂”問題,而且經過實踐證明,這一方法對于大多數的情況還是有一定效果的。
本次局部“廣譜抗生素”的藥方就是:局部加密網格。
網格自適應技術可以高效加密局部網格
我們都知道,Fluent網格的要求通常要滿足兩個條件,一是效率、二是準確。如果所有位置的網格都非常密,那么計算效率一定很低;相反,如果所有位置的網格都很稀疏,那么求解的準確性就會收到影響。
所以,最為優質的網格就是:該密的位置密,該稀疏的位置稀疏。
那么哪些位置需要密的網格呢?兩個位置,一是精細幾何細節的位置(曲邊、狹縫等),二是有大梯度變量的位置。除此之外的區域,都要求使用粗網格,從而提高計算效率。
幾何模型中的精細特征可以方便的在網格劃分階段進行加密
根據“廣譜抗生素”的藥方,我們需要加密大梯度變量區域的網格。目前的Fluent仿真經驗告訴我們,有相當一部分的仿真計算不收斂問題,都是由于網格不夠密所導致的。
展開 FLUENT收斂型噴嘴內不可壓縮流動模擬
本例的目的是了解守恒定律在確定通過收斂噴嘴的不可壓縮空氣流物理過程中的作用。
1、啟動FLUENT并導入網格
(1)在Windows系統下執行“開始”→“所有程序”→ANSYS 2021 R1→Fluid Dynamics→Fluent 2021 R1命令,啟動Fluent 2021 R1。
(2)單擊主菜單中File→Read→Mesh命令,導入.msh網格文件。
2、定義模型
單擊命令結構樹中General按鈕,彈出General(總體模型設定)面板,在Solver中Time選擇Steady,進行穩態計算,2D Space選擇Axisymmetric。
3、設置邊界條件
(1)在邊界條件面板中,雙擊inlet彈出邊界條件設置對話框。Velocity Magnitude輸入10,單擊OK按鈕確認退出。
(2)雙擊outlet彈出邊界條件設置對話框。保持默認值,單擊OK按鈕確認退出。
4、初始條件
單擊主菜單中Solution→Initialization按鈕,彈出Solution Initialization(初始化設置)面板。
Initialization Methods中選擇Hybrid Initialization,單擊Initialize按鈕進行初始化。
5、計算求解
單擊主菜單中Solving→Run Calculation按鈕,彈出Run Calculation(運行計算)面板。
在Number of Iterations中輸入15000,單擊Calculate開始計算。
6、結果后處理
(1)進入CFD-Post界面。
展開 Fluent中計算收斂標準淺析
我們關心的是這個過程中流場參數隨時間的變化規律,比如說投彈中,彈體隨時間的位置等等,所以對于非定常計算,需要根據你的具體要求來設置監測曲線,比如說監測彈體位置隨時間的變化曲線。當然了,Fluent對于非定常計算采用的是雙時間推進(具體的理論請參閱相關資料,我這里三言兩語講不清楚,怕誤人子弟),對于偽時間步內的迭代,還是要保證其收斂的,就是將單步迭代步數調大。
綜上所述,你首先要搞清楚你計算的問題是定常的還是非定常的,如果是定常的就要看收斂曲線,如果是非定常的,那就不需要看收斂曲線了。
FLUENT中判斷收斂的三種方法
判斷計算是否收斂,沒有一個通用的方法。通過殘差值判斷的方法,對一些問題或許很有效,但在某些問題中往往會得出錯誤的結論。因此,正確的做法是,不僅要通過殘差值,也要通過監測所有相關變量的完整數據,以及檢查流入與流出的物質和能量是否守恒的方法來判斷計算是否收斂。
1、監測殘差值。
在迭代計算過程中,當各個物理變量的殘差值都達到收斂標準時,計算就會發生收斂。Fluent默認的收斂標準是:除了能量的殘差值外,當所有變量的殘差值都降到低于10-3 時,就認為計算收斂,而能量的殘差值的收斂標準為低于10-6。
2、計算結果不再隨著迭代的進行發生變化。
有時候,因為收斂標準設置得不合適,物理量的殘差值在迭代計算的過程中始終無法滿足收斂標準。然而,通過在迭代過程中監測某些代表性的流動變量,可能其值已經不再隨著迭代的進行發生變化。此時也可以認為計算收斂。
3、整個系統的質量,動量,能量都守恒。
在Flux Reports
對話框中檢查流入和流出整個系統的質量,動量,能量是否守恒。守恒,則計算收斂。不平衡誤差少于0.1%,也可以認為計算是收斂的。
展開 Fluent中計算收斂標準淺析
FLUENT中殘差的概念:
殘差是cell各個face的通量之和,當收斂后,理論上當單元內沒有源項使各個面流入的通量也就是對物理量的輸運之和應該為零。最大殘差或者RSM殘差反映流場與所要模擬流場(只收斂后應該得到的流場,當然收斂后得到的流場與真實流場之間還是存在一定的差距)的殘差,殘差越小越好,由于存在數值精度問題,不可能得到0殘差,對于單精度計算一般應該低于初始殘差1e-03以下才好,當注意具體情況,看各個項的收斂情況(比方說連續項不易收斂而能量項容易)。
一般在FLUENT中可以進行進出口流量監控,當殘差收斂到一定程度后,還要看進出口流量是否穩定平衡,才可確定收斂與否(翼型計算時要監控升阻力的平衡)。
殘差在較高位震蕩,需要檢查邊界條件是否合理,其次檢查初始條件是否合理,比如激波的流場,初始條件的不合適會造成流場的振蕩。有時流場可能有分離或者回流,這本身是非定常現象,計算時殘差會在一定程度上發生振蕩,這是如果進出口流量是否達到穩定平衡,也可以認為流場收斂。另外fluent缺省采用多重網格,在計算后期將多從網格設置為0可以避免一些波長的殘差在細網格上發生震蕩。
計算收斂標準淺析
收斂曲線,實際上就是殘值曲線。求解微分方程的時候,都是采用迭代方法進行迭代。對于同一個節點的同一個物理值,第N次迭代的結果是c1,第N+1次迭代的結果是c2,那改點同一個物理值的殘值就可以定義為c2-c1。所以當殘值很小的時候,也就是c1和c2基本上一樣,即流場參數不變化,達到穩定了,所以就可以認為計算收斂了。一般來說,計算流體力學中殘值并不簡單的等于c2-c1,應該是單元格的通量項殘差,不過作用跟c2-c1是一樣的。在fluent的求解中,為了防止殘值過大導致計算出錯,在迭代中加上了松弛因子,也就是說fluent中的殘值應該等于通量項殘值*松弛因子。
展開 大多數Fluent不收斂問題的通用解決辦法
對于成熟的Fluent案例,出現計算不收斂的情況是非常正常的,此時,有針對性的加密大梯度變量區域的網格,能夠有效減少數值振蕩,從而加速收斂。可以認為是一劑非常可靠的“廣譜抗生素”。
廣譜抗生素是常見的消炎藥,如阿奇霉素、頭孢等。當感染是由多種細菌引起的,或者不清楚是哪種細菌引起的時候,就會考慮盡量用廣譜的抗生素,因為能夠覆蓋更多可能的病原。
與之對應的就是“窄譜抗生素”,它是專門殺滅某一種或一類細菌的藥物;當然,此類藥物的應用場景就比較小了,我們通常需要對感染部位進行一系列的細菌培養,才能確定細菌的種類,再對癥下藥。
抗生素是常見的消炎藥
如果我們將Fluent的算例比喻成正常的人體,那么出現的問題(比如計算不收斂、發散等情況)就可以看作是一種病癥,需要有針對性的進行處理。當然,對于特定的錯誤,產生問題的原因是非常多的:比如網格問題、物理模型選擇、邊界條件設定、求解設置等。每個案例情況不一樣,解決的方法也各不相同,大多數情況都需要“窄譜抗生素”來進行具體問題的具體分析。
Fluent案例的“病”,通常會表現為“計算不收斂”這一癥狀
顯然,解決這些個性化的問題,需要工程師具備有相當豐富的軟件操作能力和行業使用經驗,才能夠順利完成任務,這些并不是在短時間內能夠快速掌握的技巧。因此,本文嘗試推薦一種“廣譜抗生素”來應對Fluent案例常見的“不收斂”問題,而且經過實踐證明,這一方法對于大多數的情況還是有一定效果的。
展開 
大多數Fluent不收斂問題的通用解決辦法
ICEMCFD中的體加密方法
有了局部加密的網格,我們的殘差通常就會有針對性的降下來了,“廣譜抗生素”對于一些問題的適用性還是顯而易見的,最明顯的局部網格加密,就是邊界層網格,只加密大梯度的近壁面位置,從而加速仿真的收斂效率。
邊界層網格的本質是局部加密
結語:對于成熟的Fluent案例,出現計算不收斂的情況是非常正常的,此時,有針對性的加密大梯度變量區域的網格,能夠有效減少數值振蕩,從而加速收斂。可以認為是一劑非常可靠的“廣譜抗生素”。
[問題討論]Fluent殘差收斂標準問題
如果變化很小,符合你的要求,即可認為是收斂了。一般來說,壓力的收斂相對比較慢一些的。
因此是否收斂不能簡單看殘差圖,還有許多其他的重要標準,比如進出口流量差、壓力系數波動等等。盡管殘差仍然維持在較高數值,但憑其他監測也可判斷是否收斂。最重要的就是是否符合物理事實或試驗結論。
殘差曲線是否滿足只是一個表面的現象,還要看進口和出口總量差不得大于1%,而且即使這樣子,收斂解也不一定準確,它和網格劃分/離散化誤差,以及屋里模型的準確性都有關系.所以得有試驗數據做對比活著理論分析了.
當然最終是否正確是要看是否與實驗數據相符合!但既然有殘差圖的話,總應該可以大概的看出是否收斂吧?是否要殘差要小到一定的程度,或者是殘差不在增長,就可以一定程度上認為是收斂的.
殘差的大小不能決定是否收斂,我在用FLUENT計算時,多采用監測一個面的速度(或者是壓力、紊動能等參數)基本上不隨著計算時間的推移而變化,就認為基本達到收斂。
本文轉自網絡,感謝原作者。
對文章中具體內容感興趣或者對使用CATIA幾何建模,ANSYS ICEM網格生成,Pointwise軟件使用方法,ANSYS Fluent軟件,CFD++軟件,STARCCM軟件及開源軟件SU2軟件感興趣的讀者可以關注技術鄰賬號:Oler或添加作者QQ3116264744。
展開 FLUENT不收斂通常解決辦法(轉)
①、一般首先是改變初值,嘗試不同的初始化,事實上好像初始化很關鍵,對于收斂。
②、FLUENT的收斂最基礎的是網格的質量,計算的時候看怎樣選擇CFL數,這個靠經驗
③、首先查找網格問題,如果問題復雜比如多相流問題,與模型、邊界、初始條件都有關系。
④、有時初始條件和邊界條件(如很多復雜室內流場pressure outlet 就比outflow邊界條件的收斂性要好,因為很多時候室內回風口要符合outflow邊界條件的fully developed turbulence 還是很難的)嚴重影響收斂性,曾經作過一個計算反反復復,通過修改網格,重新定義初始條件,包括具體的選擇的模型, 還有老師經常用的方法就是看看哪個因素不收斂,然后尋找和它有關的條件,改變相應參數。就收斂了
⑤、A.檢查是否哪里設定有誤:比方用mm的unit建構的mesh,忘了scale;比方給定的邊界條件不合理。B從算至發散前幾步,看presure分布,看不出來的話,再算幾步, 看看問題大概出在那個區域。 C網格,配合第二點作修正,就重建個更漂亮的,或是更粗略的來處理。D再找不出來的話,換個solver。
⑥、解決的辦法是設幾個監測點,比如出流或參數變化較大的地方,若這些地方的參數變化很小,就可以認為是收斂了,盡管此時殘值曲線還沒有降下來。這時再檢查下流量是否守恒,若這時流量也守恒,則確實是收斂了------對很多復雜的室內流場計算問題經常出現這個情況
⑦、調節松弛因子也能影響收斂,不過代價是收斂速度。
看了流量是否平衡嗎?在report->flux里面操作,mass flow rate,把所有進出口都選上,compute一下,看看nut flux是什么水平,如果它的值小于總進口流量的1%,并且其他檢測量在繼續迭代之后不會發生波動,也可以認為你的解是收斂的。
展開 Fluent不收斂的解決方法【轉】
Fluent不收斂的解決方法
1、一般首先是改變初值,嘗試不同的初始化,事實上好像初始化很關鍵,對于收斂。
2、FLUENT的收斂最基礎的是網格的質量,計算的時候看怎樣選擇CFL數,這個靠經驗
3、首先查找網格問題,如果問題復雜比如多相流問題,與模型、邊界、初始條件都有關系。
4、有時初始條件和邊界條件嚴重影響收斂性,曾經作過一個計算反反復復,通過修改網格,重新定義初始條件,包括具體的選擇的模型,還有經常用的方法就是看看哪個因素不收斂,然后尋找和它有關的條件,改變相應參數。就收斂了
5、a.檢查是否哪里設定有誤:比方用mm的unit建構的mesh,忘了scale;比方給定的邊界條件不合理。
b.從算至發散前幾步,看presure分布,看不出來的話,再算幾步, 看看問題大概出在那個區域。
c.網格,配合第二點作修正,就重建個更漂亮的,或是更粗略的來處理
d.再找不出來的話,換個solver。
6、解決的辦法是設幾個監測點,比如出流或參數變化較大的地方,若這些地方的參數變化很小,就可以認為是收斂了,盡管此時殘值曲線還沒有降下來。
7、調節松弛因子也能影響收斂,不過代價是收斂速度。
展開