天天看點

《精通CFD動網格工程仿真與案例實戰》——1.2 CFD分析方法與基本步驟

本節書摘來自異步社群《精通cfd動網格工程仿真與案例實戰》一書中的第1章,第1.2節,作者: 隋洪濤 , 李鵬飛 , 馬世虎 , 更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

精通cfd動網格工程仿真與案例實戰

計算流體力學(computational fluid dynamics —cfd)是一門通過數值方法求解流體控制方程組來預測流體的流動、傳熱、傳質、化學反應等相關實體現象的學科。cfd計算結果對産品的概念設計、産品詳細設計、産品問題查找與分析以及重新設計産品都有很大的幫助。最近幾年,cfd分析在工業設計中發揮着越來越大的作用。cfd分析與實驗都是解決問題的工具,兩者互相補充。cfd分析的優點在于能得到流場中任意位置的任意實體量的值,便于問題的分析。在實際應用中,它能夠減少實驗次數,進而降低實驗成本。

1.2.1 cfd分析方法

cfd常用的數值方法有有限差分法、有限元法和有限體積法。邊界元法在cfd中應用較少,在計算電磁學領域應用相對較多一些。有限差分法是最經典的方法,它将微分方程離散到網格點上,将方程中無限小的微分化為有限小的差分來求解。有限差分法在流體力學中應用廣泛,發展也比較成熟。但為了能獲得高精度的差分格式,通常要求網格十分光滑,否則會導緻較大誤差。對複雜幾何的流動,難以做到網格十分光滑。有限元法是把積分形式的方程離散到有限小的集體單元裡求解。有限元法對網格的要求較小,既可以是結構化網格也可以是非結構化網格。但為了保證解的精确性,有限元法在每隔單元裡要進行某種權重積分,計算時記憶體占用量大且耗時。有限體積(finite volume)法,首先将計算域離散成一組控制體(網格單元);然後在這組控制體上求解品質守恒、動量守恒、能量守恒、組分守恒等方程組,将偏微分方程組離散為代數方程系統;然後通過數值的方法求解所有的代數方程組,逐漸接近流場的真實解。有限體積法優點是首先是對網格的正交性沒有特别要求,可以大量使用非結構化網格,進而可以對複雜幾何問題進行求解;其次是計算時該算法對記憶體的占用很小,便于精細地模拟流場細節。

fluent解算器是基于有限體積法的,polyflow和fidap是基于有限元法的。目前,fluent測試的網格單元數量已經突破10億,并行效率很高。

1.2.2 cfd分析基本步驟

cfd軟體一般分為三部分:前處理器、解算器和後處理器,如圖1.1所示。這也就形成了cfd分析的基本步驟。

步驟1 :實體問題的分析與前處理。

步驟1.1:定義模拟的目标。

步驟1.2:确定模拟的計算域範圍。

步驟1.3:設計與生成網格。

步驟2:解算器執行。

步驟2.1:設定數值模型。

步驟2.2:計算并監控解的過程。

步驟3:後處理。

步驟3.1:檢查計算結果。

步驟3.2:分析并考慮如何修正模型。

《精通CFD動網格工程仿真與案例實戰》——1.2 CFD分析方法與基本步驟

https://yqfile.alicdn.com/654e4342ae4f2ad33c64c1db448518aaada9d661.png" >

下面較詳細地了解每一步的工作。

從多年技術支援工作來看,許多工程師很關注軟體的操作或算法的選取,經常忽視對實體問題的分析。而實際上用cfd軟體解決問題時最重要的是對實體問題的分析,定義适當的模拟目标、對實體問題合理簡化、确定合适的模拟方法。在定義模拟目标時,需要很清楚地回答如下一些問題。

(1)需要得到什麼樣的結果(如壓力降,品質流率或阻力等)?這些結果将被如何使用?

在回答上述問題時,首先需要分析實體問題中包含哪些實體現象(如湍流、可壓縮性、輻射等),哪個或哪幾個實體現象是主要的,哪些是次要的;然後考慮哪些是必須簡化假設的;其次是可以做哪些簡化假設(如對稱簡化、周期性簡化等);最後考慮軟體中有哪些模型可以解決問題,還有哪些實體現象需要編寫特有的udf來解決。

(2)需要什麼樣的模拟精度?

模拟的精度要合理,并不是越高越好。

(3)需要多長時間得到計算結果?

模拟的周期也影響着目标的确定,如果時間緊就需要更多的簡化,如果時間寬松就可以模拟得更加詳細些。

步驟1.2:确定模拟的計算域範圍

首先要考慮如何将關心的問題從一個完整的較大的系統中隔離出來;然後取定計算域的起始與終止位置,在确定此計算域範圍時要分析在邊界上是否有邊界條件資訊、這些邊界條件類型能否與這些資訊比對、是否能将計算域的邊界确定在有合理資料的位置;其次分析問題能否簡化為二維問題或軸對稱問題。

如圖1.2所示,假如關心的問題是旋流分離器的分離效果,對周圍管道、閥等部件不關心。那麼就可以将其中的旋流分離器從整個系統中分割出來,而不必對整個系統進行模拟。而分割出來的旋流分離器的進口和出口可以給出一組邊界值,通過分析就可以模拟出旋流分離器的特性。

《精通CFD動網格工程仿真與案例實戰》——1.2 CFD分析方法與基本步驟

步驟1.3:設計與生成網格

圖1.3所示是fluent所支援的網格類型。根據幾何的複雜程度和流動特點選擇合适的網格單元類型。對于簡單的幾何,一般情況下四邊形、六面體網格的品質較高,而且單元數量較少(相對于三角形、四面體網格而言)。如果網格線與流動方向一緻時,四邊形、六面體網格還可以降低僞耗散。對于複雜幾何(如圖1.4所示汽車發動機艙網格),網格線與流動方向一般不會一緻,此時四邊形、六面體網格并沒有特别的優勢,而三角形、四面體網格對複雜幾何的适應能力很強,建議使用三角形、四面體網格。有些情況下,根據幾何特點可使用混合網格。圖1.5所示為發動機閥門口混合網格,右邊直管部分幾何規則使用六面體網格;彎管部分有閥門幾何複雜,使用四面體網格;從六面體網格到四面體網格由金字塔形五面體網格過渡;到了下面缸體部分,幾何又很規則,此時用三棱柱五面體網格。對于一些複雜的比較特殊的幾何還可以考慮使用不連續網格(non-conformal mesh),即網格面兩側的網格節點對應,網格線不連續。圖1.6所示為油膜冷卻不連續網格。流體從下部箱體内通過很小的孔噴到上部非常大的空間内,由于上部大空間與噴孔的幾何尺度相差太大,很難用統一尺度來生成網格。此時可以上下兩部分分别按照自己的尺度生成網格,然後兩個區域之間以不連續的網格界面對接,計算時實體量會在此界面上插值。

《精通CFD動網格工程仿真與案例實戰》——1.2 CFD分析方法與基本步驟
《精通CFD動網格工程仿真與案例實戰》——1.2 CFD分析方法與基本步驟

生成網格時,不僅要考慮網格的類型,而且要考慮網格的分辨率問題。首先,考慮網格的密度能否足夠分辨出關鍵的幾何,如一個圓形面至少需要5個以上網格單元才能近似模拟;其次,考慮梯度大的區域網格是否足夠密;再者,考慮是否可使用網格自适應技術提高網格的分辨率。

最後還需要考慮網格的數量與計算機條件(如記憶體、cpu數量與速度)相比對。

綜上所述,判定網格品質好壞的标準有如下幾條:

(1)網格數量要足夠,尤其是要能足夠分辨關鍵幾何;

(2)梯度大的地方網格密,梯度小的地方網格可以疏(以節約計算資源);

(3)網格從密到疏的過渡要均勻;

(4)網格等角度扭曲率要盡可能小,一般情況下四面體網格的等角度扭曲率小于0.85,六面體網格的等角度扭曲率小于0.8,複雜幾何的非關鍵位置此要求可适當放松;

(5)六面體網格長寬比要盡可能小,一般情況下不大于1∶3,邊界層網格等特殊情況下可适當放松此要求;

(6)根據幾何複雜程度和流動特點合理搭配使用四面體和六面體網格。

根據上述标準和長期的應用實踐可以逐漸培養讀者對cfd網格的審美觀,最終能夠很順利地對各種幾何作出漂亮的、高品質的cfd網格。

步驟2:解算器執行

步驟2.1:設定數值模型

對于一個給定的問題,需要作如下工作:

(1)選擇實體模型,如湍流、燃燒、多相流等;

(2)定義材料屬性,如流體、固體、混合材料等;

(3)指定工作條件;

(4)指定邊界條件;

(5)提供初始值;

(6)設定解算器控制參數,如松弛因子、庫朗數等;

(7)設定收斂監控曲線。

步驟2.2:計算并監控解的過程

離散守恒型方程是通過數值疊代的過程進行計算的,直到收斂。判斷收斂的标準如下:

(1)疊代一定的次數;

(2)殘差降低一定的量級,一般情況下需要降低3個以上量級;

(3)殘差不再進一步降低,即殘差曲線參數值随疊代的繼續進行基本保持不變;

(4)全局守恒量達到平衡(如管道的流量進出口數值相等)或特征實體量曲線平直(如阻力、升力等);

是否收斂需要使用上述标準綜合判斷。收斂解的精度也是需要關注的,它主要與下列因素有關:

(1)實體模型的精度;

(2)網格的分辨率;

(3)問題的設定。

是以,為了提高解的精度,需要對上述問題細緻地考察。

步驟3:後處理

步驟3.1:檢查計算結果

當計算收斂之後,需要檢查計算結果并提取有用的資料。一般情況下,可以通過彩色圖像、曲線和具體實體量的數值報告來提取資料。圖像和曲線可以回答如下一些問題:

(1)全局流态是否合理?

(2)某些區域是否出現了分離?

(3)什麼地方形成激波、剪切層等?

(4)關鍵的流動特性是否準确計算出來?

回答這些問題時,需要基于流體力學基礎知識。

具體實體量的數值報告可以幫助我們定量的分析結果:

(1)力/力矩;

(2)平均換熱系數;

(3)某些實體面的面積分與體積分;

(4)通量平衡。

步驟3.2:分析并考慮如何修正模型

在對結果進行分析的基礎上,需要考慮如何修正模型改進計算結果。首先考慮實體模型的合理性,如需要分析流動是否是湍流,是否是非定常,是否有可壓縮性,是否有三維效應等;其次是分析邊界條件的正确性,如計算域是否足夠大,邊界條件的類型是否恰當,邊界的值是否合理等;另外分析網格是否足夠,如網格是否需要自适應以提高計算精度,解是否與網格無關,邊界的分辨率是否需要改進等。根據上述分析,相應的對問題設定進行調整以獲得更加理想的計算結果。