CFD計(jì)算發(fā)散原因分析
2017-06-09 by:CAE仿真在線 來源:互聯(lián)網(wǎng)
CFD計(jì)算是將描述物理問題的偏微分方程轉(zhuǎn)化為代數(shù)方程組求解,從而得到離散空間上指定點(diǎn)上的值,而其他位置的值通過插值來完成。這本質(zhì)是將非線性方程線性化并求解的過程,我是這樣理解的,對(duì)于物理問題真解隨時(shí)間的變化是一條曲線,而求解過程中不斷的求解曲線的斜率,并實(shí)現(xiàn)時(shí)間的上的步進(jìn)(可以理解為1階導(dǎo)數(shù))。
如果在指定的時(shí)間步長(zhǎng)內(nèi)斜率變化很小,這種步進(jìn)是可以滿足方程要求的,并可以得到將來任意時(shí)刻的近似解。然而,如果變化比較大時(shí),實(shí)際的變化過程將不能通過線性化方法來處理,這時(shí)候再使用這種方法就會(huì)出現(xiàn)問題。隨著時(shí)間的推移,數(shù)值解越來越偏離真解,最終引起發(fā)散。對(duì)于我們求解的流動(dòng)問題,有下面幾種可能會(huì)引起計(jì)算過程的發(fā)散。
這點(diǎn)很容易理解,時(shí)間步長(zhǎng)過長(zhǎng)可能會(huì)造成時(shí)間段內(nèi),斜率變化較大,從而會(huì)造成數(shù)值解偏離真解。一般而言,對(duì)于顯式方法要求在指定的時(shí)間步長(zhǎng)內(nèi)流體流動(dòng)不能超過一個(gè)網(wǎng)格(庫朗數(shù)限制)。
對(duì)于NS方程SIMPLE系列算法而言,需要通過壓力來顯式修正表面流率和速度,如果修正次數(shù)過少,通常會(huì)造成修正后的速度和真實(shí)速度偏離較大,下一時(shí)間步求解速度的時(shí)候會(huì)得到一個(gè)不真實(shí)的表面流率,從而影響下一個(gè)時(shí)刻的速度求解,進(jìn)而影響壓力,長(zhǎng)期計(jì)算會(huì)影響造成誤差積累設(shè)置發(fā)散。因此,壓力修正次數(shù)要有一定的限制。一般而言對(duì)于2d問題,2~3次能夠滿足要求,而對(duì)于3d問題3~4次應(yīng)該可以,但也和具體問題有關(guān)系,同一個(gè)問題3d的比2d的要求修正次數(shù)多。
在網(wǎng)格正交性比較差的情況下,直接利用正交網(wǎng)格導(dǎo)出的擴(kuò)散項(xiàng)離散過程通常會(huì)引起誤差,通常將離散過程分為正交和非正交兩部分,正交部分隱式處理,非正交部分顯示處理。非正交中壓力值采用了上一層迭代的值,因此會(huì)影響收斂性。當(dāng)網(wǎng)格質(zhì)量較差時(shí),可以指定一定量的非正交循環(huán),不需要太多3次以內(nèi)即可。
擴(kuò)散過程描述的是從物理量從高濃度向低濃度的傳輸過程,負(fù)擴(kuò)散系數(shù)會(huì)造成低濃度向高濃度的傳輸,這和實(shí)際物理現(xiàn)象不符的,長(zhǎng)期模擬下去會(huì)造成局部濃度過度增加,從而造成發(fā)散。引起負(fù)擴(kuò)散系數(shù)原因很多,比如湍流模型求出來的湍流粘性為負(fù)值,或者你誤將擴(kuò)散項(xiàng)前面的-寫成了+。
邊界條件不合理也會(huì)引起方程的發(fā)散,比如開口系統(tǒng)只有進(jìn)口沒有出口。對(duì)于不可壓縮流而言,邊界條件的設(shè)置方法見前面博文。需要指出的時(shí),湍流k-e模型中入口通常需要根據(jù)經(jīng)驗(yàn)關(guān)系式指定,而并非隨意給值,這常常是初學(xué)者常見的問題。
對(duì)于一些問題,離散后的代數(shù)方程需要采用一些性能優(yōu)越的代數(shù)方程求解器。特別是對(duì)于3d問題,網(wǎng)格單元數(shù)越多對(duì)代數(shù)方程求解器要求越高,如果采用傳統(tǒng)的pcg(pbicg)+傳統(tǒng)預(yù)條件有時(shí)候在指定的迭代步內(nèi)(openfoam默認(rèn)1001)很難收斂到你指定的精度。這時(shí),可以選用GAMG或者pcg+GAMG等代數(shù)求解器,以確保較少時(shí)間步收斂到指定解。
源項(xiàng)過大是引起方程發(fā)散的一個(gè)重要原因,當(dāng)自己寫程序或者做耦合計(jì)算的時(shí)候,不妨檢查一下你的源項(xiàng)。
對(duì)流項(xiàng)的離散格式對(duì)收斂性的影響很多cfd的書上都有介紹。 一般而言低階格式較穩(wěn)定,高階穩(wěn)定性則較差。
對(duì)于cfd計(jì)算初始場(chǎng)往往設(shè)置具有較大的隨意性,特別是對(duì)于穩(wěn)態(tài)問題更是如此。如果設(shè)置的初值偏離真實(shí)物理量太遠(yuǎn)會(huì)造成一開始就發(fā)散。對(duì)于穩(wěn)態(tài)問題,可以采用勢(shì)流的求解結(jié)果作為初始場(chǎng)進(jìn)行進(jìn)一步迭代,這樣會(huì)大大改善收斂性。
有些求解的物理量通常是有界的,比如體積分率應(yīng)該在[0 1]之間,而k 和 e 應(yīng)當(dāng)是大于0的數(shù)目,而在求解過程中由于離散方程植入不慎,會(huì)造成求解變量不在其物理范圍之內(nèi),從而造成發(fā)散。因此對(duì)于有界量跟蹤方程植入過程應(yīng)特別注意。
文章綜合于網(wǎng)絡(luò),如有侵權(quán)請(qǐng)聯(lián)系刪除!
相關(guān)標(biāo)簽搜索:CFD計(jì)算發(fā)散原因分析 Fluent培訓(xùn) Fluent流體培訓(xùn) Fluent軟件培訓(xùn) fluent技術(shù)教程 fluent在線視頻教程 fluent資料下載 fluent分析理論 fluent化學(xué)反應(yīng) fluent軟件下載 UDF編程代做 Fluent、CFX流體分析 HFSS電磁分析