什么是CFD中的"矩陣預(yù)條件"!
2017-03-30 by:CAE仿真在線 來(lái)源:互聯(lián)網(wǎng)
任何一個(gè)矩陣方程組都可以通過(guò)直接求解(高斯消去法或LU分解法)來(lái)計(jì)算。但是,LU分解之后會(huì)把原本稀疏的矩陣變成密集矩陣。所以直接求解法會(huì)耗費(fèi)非常多的計(jì)算資源。同時(shí),CFD計(jì)算中離散的誤差遠(yuǎn)大于矩陣求解的誤差,因此我們沒(méi)必要那么精確的計(jì)算矩陣方程。只要比離散精度高就可以。
對(duì)于稀疏矩陣,通常我們選用迭代求解技術(shù),通常我們估計(jì)一個(gè)初始值,然后系統(tǒng)的使這個(gè)值逼近真實(shí)解。如果每次迭代很經(jīng)濟(jì)并且需要很少的迭代次數(shù)的話,那么迭代求解就比直接求解經(jīng)濟(jì)的多了。在CFD中,我們通常使用迭代求解技術(shù)。
然而,迭代求解器一個(gè)眾所周知的弱點(diǎn)就是不是很穩(wěn)健。雖然迭代求解器可以快速的求解矩陣系統(tǒng),但是這個(gè)缺點(diǎn)導(dǎo)致其在工業(yè)應(yīng)用上收到了嚴(yán)重的限制。穩(wěn)健性和效率可以通過(guò)預(yù)條件(pre-conditioning)來(lái)提高。預(yù)條件矩陣M可以有很多不同的選擇,但是通常其滿足一些最低的要求。比如,求解Mx=b需要是非常經(jīng)濟(jì)的,同時(shí),M應(yīng)該和A接近并且應(yīng)該是非奇異的。
舉例:我們有矩陣系統(tǒng):
其中phi是我們需要求的。如果我們另:A=M-N,我們有:
移項(xiàng)有(注:不要被下面的n和n-1搞暈了,在迭代收斂的時(shí)候,n和n-1的phi是相等的,因此下面這個(gè)方程就是上面那個(gè)方程):
方程左右乘以M的逆,最后有:
在CFD中,我們稱M即為預(yù)條件(預(yù)處理)矩陣(Pre-conditioning Matrix)。
一種非常受歡迎的預(yù)條件矩陣建立于不完全LU分解上,有關(guān)不完全LU分解,coming soon!
Computational Methods for Fluid dynamics. J.H. Ferziger. Page.67.
相關(guān)標(biāo)簽搜索:什么是CFD中的"矩陣預(yù)條件"! Fluent培訓(xùn) Fluent流體培訓(xùn) Fluent軟件培訓(xùn) fluent技術(shù)教程 fluent在線視頻教程 fluent資料下載 fluent分析理論 fluent化學(xué)反應(yīng) fluent軟件下載 UDF編程代做 Fluent、CFX流體分析 HFSS電磁分析