官术网_书友最值得收藏!

1.2 計算流體力學(xué)(CFD)基礎(chǔ)

計算流體動力學(xué)(Computational Fluid Dynamics, CFD)是近代流體力學(xué)、數(shù)值數(shù)學(xué)和計算機(jī)科學(xué)結(jié)合的產(chǎn)物,是一門具有強大生命力的邊緣科學(xué)。

1.2.1 CFD概述

CFD以電子計算機(jī)為工具,應(yīng)用各種離散化的數(shù)學(xué)方法,對流體力學(xué)的各類問題進(jìn)行數(shù)值實驗、計算機(jī)模擬和分析研究,以解決各種實際問題。

計算流體力學(xué)和相關(guān)的計算傳熱學(xué)、計算燃燒學(xué)的原理是用數(shù)值方法求解非線性聯(lián)立的質(zhì)量、能量、組分、動量和自定義的標(biāo)量的微分方程組,求解結(jié)果能預(yù)報流動、傳熱、傳質(zhì)、燃燒等過程的細(xì)節(jié),并成為過程裝置優(yōu)化和放大定量設(shè)計的有力工具。計算流體力學(xué)的基本特征是數(shù)值模擬和計算機(jī)實驗,它從基本物理定理出發(fā),在很大程度上替代了耗資巨大的流體動力學(xué)實驗設(shè)備,在科學(xué)研究和工程技術(shù)中產(chǎn)生巨大的影響。

計算流體力學(xué)是目前國際上一個強有力的研究領(lǐng)域,是進(jìn)行傳熱、傳質(zhì)、動量傳遞及燃燒、多相流和化學(xué)反應(yīng)研究的核心和重要技術(shù),廣泛應(yīng)用于航天設(shè)計、汽車設(shè)計、生物醫(yī)學(xué)工業(yè)、化工處理工業(yè)、渦輪機(jī)設(shè)計、半導(dǎo)體設(shè)計、HAVC&R等諸多工程領(lǐng)域,板翅式換熱器設(shè)計是CFD技術(shù)應(yīng)用的重要領(lǐng)域之一。

CFD在最近20年中得到飛速的發(fā)展,除了計算機(jī)硬件工業(yè)的發(fā)展給它提供了堅實的物質(zhì)基礎(chǔ)外,還主要因為無論分析的方法或?qū)嶒灥姆椒ǘ加休^大的限制。例如,由于問題的復(fù)雜性,既無法作分析解,也因費用昂貴而無力進(jìn)行實驗確定,而CFD的方法正具有成本低和能模擬較復(fù)雜或較理想的過程等優(yōu)點。

經(jīng)過一定考核的CFD軟件可以拓寬實驗研究的范圍,減少成本昂貴的實驗工作量。在給定的參數(shù)下用計算機(jī)對現(xiàn)象進(jìn)行一次數(shù)值模擬相當(dāng)于進(jìn)行一次數(shù)值實驗,歷史上也曾有過首先由CFD數(shù)值模擬發(fā)現(xiàn)新現(xiàn)象而后由實驗予以證實的例子。

CFD軟件一般都能推出多種優(yōu)化的物理模型,如定常和非定常流動、層流、紊流、不可壓縮和可壓縮流動、傳熱、化學(xué)反應(yīng)等。對每一種物理問題的流動特點,都有適合它的數(shù)值解法,用戶可選擇顯式或隱式差分格式,以期在計算速度、穩(wěn)定性和精度等方面達(dá)到最佳。

CFD軟件之間可以方便地進(jìn)行數(shù)值交換,并采用統(tǒng)一的前、后處理工具,這就省去了科研工作者在計算機(jī)方法、編程、前后處理等方面投入的重復(fù)、低效的勞動,而可以將主要精力和智慧用于物理問題本身的探索上。

1.2.2 CFD求解力學(xué)問題的過程

圖1-4 CFD求解流程框圖

所有CFD問題的求解過程都可用圖1-4表示。如果所求解的問題是瞬態(tài)問題,則可將圖1-4的過程理解為一個時間步的計算過程,循環(huán)這一過程求解下個時間步的解。下面對各求解步驟進(jìn)行簡單介紹。

1.建立控制方程

建立控制方程是求解任何問題前都必須首先進(jìn)行的。一般來講,這一步是比較簡單的。因為對于一般的流體流動而言,可直接寫出其控制方程。假定沒有熱交換發(fā)生,則可直接將連續(xù)方程與動量方程作為控制方程使用。一般情況下,需要增加湍流方程。

2.確定邊界條件和初始條件

初始條件與邊界條件是控制方程有確定解的前提,控制方程與相應(yīng)的初始條件、邊界條件的組合構(gòu)成對一個物理過程完整的數(shù)學(xué)描述。

初始條件是所研究對象在過程開始時刻各個求解變量的空間分布情況。對于瞬態(tài)問題,必須給定初始條件。對于穩(wěn)態(tài)問題,不需要初始條件。

邊界條件是在求解區(qū)域的邊界上所求解的變量或其導(dǎo)數(shù)隨地點和時間的變化規(guī)律。對于任何問題,都需要給定邊界條件。

3.劃分計算網(wǎng)格

采用數(shù)值方法求解控制方程時,都是想辦法將控制方程在空間區(qū)域上進(jìn)行離散,然后求解得到離散方程組。要想在空間域上離散控制方程,必須使用網(wǎng)格。現(xiàn)已發(fā)展出多種對各種區(qū)域進(jìn)行離散以生成網(wǎng)格的方法,這些方法統(tǒng)稱為網(wǎng)格生成技術(shù)。

不同的問題采用不同數(shù)值解法時,所需要的網(wǎng)格形式是有一定區(qū)別的,但生成網(wǎng)格的方法基本是一致的。目前網(wǎng)格分結(jié)構(gòu)網(wǎng)格和非結(jié)構(gòu)網(wǎng)格兩大類。

簡單地講,結(jié)構(gòu)網(wǎng)格在空間上比較規(guī)范,如對一個四邊形區(qū)域,網(wǎng)格往往是成行成列分布的,行線和列線比較明顯。而非結(jié)構(gòu)網(wǎng)格在空間分布上沒有明顯的行線和列線。

對于二維問題,常用的網(wǎng)格單元有三角形和四邊形等形式;對于三維問題,常用的網(wǎng)格單元有四面體、六面體、三菱體等形式。在整個計算域上,網(wǎng)格通過節(jié)點聯(lián)系在一起。

目前各種CFD軟件都配有專用的網(wǎng)格生成工具,如FLUENT使用Gambit作為前處理軟件。多數(shù)CFD軟件可接收采用其他CAD或CFD/FEM軟件產(chǎn)生的網(wǎng)格模型。例如,F(xiàn)LUENT可以接收ANSYS所生成的網(wǎng)格。

4.建立離散方程

對于在求解域內(nèi)所建立的偏微分方程,理論上是有真解(或稱精確解或解析解)的。但由于所處理問題自身的復(fù)雜性,一般很難獲得方程的真解。因此就需要通過數(shù)值方法把計算域內(nèi)有限數(shù)量位置(網(wǎng)格節(jié)點或網(wǎng)格中心點)上的因變量值當(dāng)作基本未知量來處理,從而建立一組關(guān)于這些未知量的代數(shù)方程組,然后通過求解代數(shù)方程組來得到這些節(jié)點值,而計算域內(nèi)其他位置上的值則根據(jù)節(jié)點位置上的值來確定。

由于所引入的應(yīng)變量在節(jié)點之間的分?jǐn)?shù)假設(shè)及推導(dǎo)離散化方程的方法不同,所以形成了有限差分法、有限元法、有限體積法等不同類型的離散化方法。

對于瞬態(tài)問題,除了在空間域上的離散外,還要涉及在時間域上的離散。離散后,將要涉及使用何種時間積分方案的問題。

5.離散初始條件和邊界條件

前面所給定的初始條件和邊界條件是連續(xù)性的,如在靜止壁面上速度為0,現(xiàn)在需要針對所生成的網(wǎng)格,將連續(xù)型的初始條件和邊界條件轉(zhuǎn)化為特定節(jié)點上的值,如靜止壁面上共有90個節(jié)點,則這些節(jié)點上的速度值應(yīng)均設(shè)為0。

商用CFD軟件往往在前處理階段完成網(wǎng)格劃分后,直接在邊界上指定初始條件和邊界條件,然后由前處理軟件自動將這些初始條件和邊界條件按離散的方式分配到相應(yīng)的節(jié)點上。

6.給定求解控制參數(shù)

在離散空間上建立了離散化的代數(shù)方程組,并施加離散化的初始條件和邊界條件后,還需要給定流體的物理參數(shù)和湍流模型的經(jīng)驗系數(shù)等。此外,還要給定迭代計算的控制精度、瞬態(tài)問題的時間步長和輸出頻率等。

7.求解離散方程

進(jìn)行上述設(shè)置后,生成了具有定解條件的代數(shù)方程組。對于這些方程組,數(shù)學(xué)上已有相應(yīng)的解法,如線性方程組可采用Gauss消去法或Gauss-Seidel迭代法求解,而對于非線性方程組,可采用Newton-Raphson方法。

商用CFD軟件往往提供多種不同的解法,以適應(yīng)不同類型的問題。這部分內(nèi)容屬于求解器設(shè)置的范疇。

8.顯示計算結(jié)果

通過上述求解過程得出了各計算節(jié)點上的解后,需要通過適當(dāng)?shù)氖侄螌⒄麄€計算域上的結(jié)果表示出來,這時,可采用線值圖、矢量圖、等值線圖、流線圖、云圖等方式來表示計算結(jié)果。

● 線值圖是指在二維或三維空間上,將橫坐標(biāo)取為空間長度或時間歷程,將縱坐標(biāo)取為某一物理量,然后用光滑曲線或曲面在坐標(biāo)系內(nèi)繪制出某一物理量沿空間或時間的變化情況。

● 矢量圖是直接給出二維或三維空間里矢量(如速度)的方向及大小,一般用不同顏色和長度的箭頭表示速度矢量。矢量圖可以比較容易地讓用戶發(fā)現(xiàn)其中存在的漩渦區(qū)。

● 等值線圖是用不同顏色的線條表示相等物理量(如溫度)的一條線。

● 流線圖是用不同顏色的線條表示質(zhì)點運動軌跡。

● 云圖是使用渲染的方式,將流場某個截面上的物理量(如壓力或溫度)用連續(xù)變化的顏色塊表示其分布。

1.2.3 CFD數(shù)值模擬方法和分類

CFD的數(shù)值解法有很多分支,這些方法之間的區(qū)別主要在于對控制方程的離散方式。根據(jù)離散原理的不同,CFD大體上可以分為有限差分法(FDM)、有限元法(FEM)和有限體積法(FVM)。

1.有限差分法

有限差分法(FDM)是計算機(jī)數(shù)值模擬最早采用的方法,至今仍被廣泛運用。該方法將求解域劃分為差分網(wǎng)格,用有限個網(wǎng)格節(jié)點代替連續(xù)的求解域。

有限差分法以Taylor級數(shù)展開的方法,把控制方程中的導(dǎo)數(shù)用網(wǎng)格節(jié)點上的函數(shù)值的差商代替,從而創(chuàng)建以網(wǎng)格節(jié)點上的值為未知數(shù)的代數(shù)方程組。

該方法是一種直接將微分問題變?yōu)榇鷶?shù)問題,從而可以用近似數(shù)值解法求解,數(shù)學(xué)概念直觀,表達(dá)簡單,是發(fā)展較早且比較成熟的數(shù)值方法。

從有限差分格式的精度來劃分,有一階格式、二階格式和高階格式;從差分的空間形式來考慮,可分為中心格式和逆風(fēng)格式;考慮時間因子的影響,差分格式還可分為顯格式、隱格式、顯隱交替格式等。

目前常見的差分格式主要是上訴幾種格式的組合,不同的組合構(gòu)成不同的差分格式。差分方法主要適用于有結(jié)構(gòu)網(wǎng)格,網(wǎng)格的步長一般根據(jù)實際情況和柯郎穩(wěn)定條件決定。

2.有限元法

有限元法(FEM)的基礎(chǔ)是變分原理和加權(quán)余量法,其基本求解思想是把計算域劃分為有限個互不重疊的單元,在每個單元內(nèi),選擇一些合適的節(jié)點作為求解函數(shù)的插值點,將微分方程中的變量改寫成由各變量或其導(dǎo)數(shù)的節(jié)點值與所選用的插值函數(shù)組成的線性表達(dá)式,借助于變分原理或加權(quán)余量法,將微分方程離散求解。

采用不同的權(quán)函數(shù)和插值函數(shù)形式,便于構(gòu)成不同的有限元方法。有限元法最早應(yīng)用于結(jié)構(gòu)力學(xué),后來隨著計算機(jī)的發(fā)展逐漸用于流體力學(xué)的數(shù)值模擬。

在有限元法中,把計算域離散剖分為有限個互不重疊且相互連接的單元,在每個單元內(nèi)選擇基函數(shù),用單元基函數(shù)的線性組合來逼近單元中的真解,整個計算域上總體的基函數(shù)可以看作由每個單元基函數(shù)組成,而整個計算域內(nèi)的解可以看作由所有單元上的近似解構(gòu)成。

有限元方法的基本思路和解題步驟可歸納如下。

(1)建立積分方程。根據(jù)變分原理或方程余量與權(quán)函數(shù)正交化原理,建立與微分方程初邊值問題等價的積分表達(dá)式,這是有限元法的出發(fā)點。

(2)區(qū)域單元剖分。根據(jù)求解區(qū)域的形狀及實際問題的物理特點,將區(qū)域剖分為若干相互連接、不重疊的單元。區(qū)域單元劃分是采用有限元方法的前期準(zhǔn)備工作,這部分工作量比較大,除了給計算單元和節(jié)點進(jìn)行編號和確定相互之間的關(guān)系之外,還要表示節(jié)點的位置坐標(biāo),并列出自然邊界和本質(zhì)邊界的節(jié)點序號和相應(yīng)的邊界值。

(3)確定單元基函數(shù)。根據(jù)單元中節(jié)點數(shù)目及對近似解精度的要求,選擇滿足一定插值條件的插值函數(shù)作為單元基函數(shù)。有限元方法中的基函數(shù)是在單元中選取的,由于各單元具有規(guī)則的幾何形狀,所以在選取基函數(shù)時可遵循一定的法則。

(4)單元分析。將各個單元中的求解函數(shù)用單元基函數(shù)的線性組合表達(dá)式進(jìn)行逼近;再將近似函數(shù)代入積分方程,并對單元區(qū)域進(jìn)行積分,可獲得含有待定系數(shù)(即單元中各節(jié)點的參數(shù)值)的代數(shù)方程組(稱為單元有限元方程)。

(5)總體合成。在得出單元有限元方程之后,將區(qū)域中所有單元有限元方程按一定法則進(jìn)行累加,形成總體有限元方程。

(6)邊界條件的處理。一般邊界條件有3種形式,分別為本質(zhì)邊界條件(狄里克雷邊界條件)、自然邊界條件(黎曼邊界條件)、混合邊界條件(柯西邊界條件)。對于自然邊界條件,一般在積分表達(dá)式中可自動得到滿足。對于本質(zhì)邊界條件和混合邊界條件,需按一定法則對總體有限元方程進(jìn)行修正滿足。

(7)解有限元方程。根據(jù)邊界條件修正的總體有限元方程組,是含所有待定未知量的封閉方程組,采用適當(dāng)?shù)臄?shù)值計算方法求解,可求得各節(jié)點的函數(shù)值。

3.有限體積法

有限體積法(Finite Volume Method, FVM)又稱為控制體積法。其基本思路是:將計算區(qū)域劃分為一系列不重復(fù)的控制體積,并使每個網(wǎng)格點周圍有一個控制體積;將待解的微分方程對每一個控制體積積分,便得出一組離散方程。

其中的未知數(shù)是網(wǎng)格點上的因變量的數(shù)值。為了求出控制體積的積分,必須假定值在網(wǎng)格點之間的變化規(guī)律,即假設(shè)值分段分布的剖面。

從積分區(qū)域的選取方法看來,有限體積法屬于加權(quán)剩余法中的子區(qū)域法;從未知解的近似方法看來,有限體積法屬于采用局部近似的離散方法。簡而言之,子區(qū)域法屬于有限體積法的基本方法。

有限體積法的基本思路易于理解,并能得出直接的物理解釋。離散方程的物理意義就是因變量在有限大小的控制體積中的守恒原理,如同微分方程表示因變量在無限小的控制體積都得到滿足,在整個計算區(qū)域,自然也就得到滿足一樣,這是有限體積法吸引人的優(yōu)點。

某些離散方法,如有限差分法,僅當(dāng)網(wǎng)格極其細(xì)密時,離散方程才滿足積分守恒;而有限體積法即使在粗網(wǎng)格情況下,也顯示出準(zhǔn)確的積分守恒。

就離散方法而言,有限體積法可視為有限單元法和有限差分法的中間物,有限單元法必須假定值符號網(wǎng)格點之間的變化規(guī)律(即插值函數(shù)),并將其作為近似解;有限差分法只考慮網(wǎng)格點上的數(shù)值而不考慮其在網(wǎng)格點之間如何變化;有限體積法只尋求節(jié)點值,這與有限差分法相類似,但有限體積法在尋求控制體積的積分時,必須假定值在網(wǎng)格點之間的分布,這又與有限單元法相類似。

在有限體積法中,插值函數(shù)只用于計算控制體積的積分,得出離散方程后,便可忘掉插值函數(shù);如果需要的話,可以對微分方程中不同的項采取不同的插值函數(shù)。

1.2.4 有限體積法計算區(qū)域的離散

從前面的介紹中可以看出,有限體積法是一種分塊近似的計算方法,因此其中比較重要的步驟是計算區(qū)域的離散和控制方程的離散。

所謂區(qū)域的離散化,實際上就是用一組有限個離散的點來代替原來的連續(xù)空間。一般的實施過程是:把所計算的區(qū)域劃分成許多個互不重疊的子區(qū)域(sub-domain),確定每個子區(qū)域中的節(jié)點位置及該節(jié)點所代表的控制體積。區(qū)域離散后,得到以下4種幾何要素。

● 節(jié)點:需要求解的未知物理量的幾何位置。

● 控制體積:應(yīng)用控制方程或守恒定律的最小幾何單位。

● 界面:定義了與各節(jié)點相對應(yīng)的控制體積的界面位置。

● 網(wǎng)格線:連接相鄰兩節(jié)點面形成的曲線簇。

一般把節(jié)點看成是控制體積的代表。在離散過程中,將一個控制體積上的物理量定義并存儲在該節(jié)點處。一維問題的有限體積法計算網(wǎng)格如圖1-5所示,二維問題的有限體積法計算網(wǎng)格如圖1-6所示。

圖1-5 一維控制體積網(wǎng)格

圖1-6 二維控制體積網(wǎng)格

計算區(qū)域離散的網(wǎng)格有兩類:結(jié)構(gòu)化網(wǎng)格和非結(jié)構(gòu)化網(wǎng)格。

結(jié)構(gòu)化網(wǎng)格(structured grid)的節(jié)點排列有序,即給出了一個節(jié)點的編號后,立即可以得出其相鄰節(jié)點的編號,所有內(nèi)部節(jié)點周圍的網(wǎng)格數(shù)目相同。

結(jié)構(gòu)化網(wǎng)格具有實現(xiàn)容易、生成速度快、網(wǎng)格質(zhì)量好、數(shù)據(jù)結(jié)構(gòu)簡單化的優(yōu)點,但不能實現(xiàn)復(fù)雜邊界區(qū)域的離散。

非結(jié)構(gòu)化網(wǎng)格的內(nèi)部節(jié)點以一種不規(guī)則的方式布置在流場中,各節(jié)點周圍的網(wǎng)格數(shù)目不盡相同。這種網(wǎng)格雖然生成過程比較復(fù)雜,但卻有極大的適應(yīng)性,對復(fù)雜邊界的流場計算問題特別有效。

1.2.5 有限體積法控制方程的離散

前面給出的流體流動問題的控制方程,無論是連續(xù)性方程、動量方程,還是能量方程,都可寫成如式1-205所示的通用形式。

對于一維穩(wěn)態(tài)問題,其控制方程如式1-206所示。

式1-206中,從左到右各項分別為對流項、擴(kuò)散項和源項。方程中的φ是廣義變量,可以是速度、溫度或濃度等一些待求的物理量。Γ是相應(yīng)于φ的廣義擴(kuò)散系數(shù),S是廣義源項。變量φ在端點AB的邊界值為已知。

有限體積法的關(guān)鍵一步是在控制體積上積分控制方程,在控制體積節(jié)點上產(chǎn)生離散的方程。對一維模型方程1-206,在圖1-5所示的控制體積P上進(jìn)行積分,有

式1-207中,ΔV是控制體積的體積值。當(dāng)控制體積很微小時,ΔV可以表示為ΔV·A,這里A是控制體積界面的面積。從而有

從式1-208可以看到,對流項和擴(kuò)散項均已轉(zhuǎn)化為控制體積界面上的值。有限體積法最顯著的特點之一就是離散方程中具有明確的物理插值,即界面的物理量要通過插值的方式由節(jié)點的物理量來表示。

為了建立所需形式的離散方程,需要找出如何表示式1-208中界面ew處的ρuΓφ為了計算界面上的這些物理參數(shù)(包括其導(dǎo)數(shù)),需要一個物理參數(shù)在節(jié)點間的近似分布。和。在有限體積法中規(guī)定,ρuΓφ等物理量均是在節(jié)點處定義和計算的。因此,

可以想象,線性近似是可以用來計算界面物性值的最直接,也是最簡單的方式。這種分布叫作中心差分。如果網(wǎng)格是均勻的,則單個物理參數(shù)(以擴(kuò)散系數(shù)Γ為例)的線性插值結(jié)果是

(ρuφA)的線性插值結(jié)果是

與梯度項相關(guān)的擴(kuò)散通量的線性插值結(jié)果是

對于源項S,它通常是時間和物理量φ的函數(shù)。為了簡化處理,將S轉(zhuǎn)化為如下線性方式:

式中,SC是常數(shù),SP是隨時間和物理量φ變化的項。將式1-210~式1-212代入式1-208,有

整理后得到

記為

a PφP=aWφW+aEφE+b

式1-214中

對于一維問題,控制體積界面 ew 處的面積AeAw均為1,即單位面積。這樣ΔVx,式1-215各系數(shù)可轉(zhuǎn)化為

根據(jù)aPφP=aWφW+aEφE+b,每個節(jié)點上都可建立此離散方程,通過求解方程組,就可得到各物理量在各節(jié)點處的值。

為了方便,定義兩個新的物理量FD,其中F表示通過界面上單位面積的對流質(zhì)量通量(convective mass flux),簡稱對流質(zhì)量流量,D 表示界面的擴(kuò)散傳導(dǎo)性(diffusion conductance)。定義表達(dá)式為

這樣,FD在控制界面上的值分別為

在此基礎(chǔ)上,定義一維單元的Peclet數(shù)Pe

式1-219中,Pe表示對流與擴(kuò)散的強度之比。當(dāng)Pe為0時,對流擴(kuò)散演變?yōu)榧償U(kuò)散問題,即流場中沒有流動,只有擴(kuò)散;當(dāng)Pe>0時,流體沿x方向流動,當(dāng)Pe數(shù)很大時,對流擴(kuò)散問題演變?yōu)榧儗α鲉栴}。一般在中心差分格式中,有Pe<2的要求。

將式1-218代入式1-216中,有

瞬態(tài)問題與穩(wěn)態(tài)問題相似,主要是瞬態(tài)項的離散。其一維瞬態(tài)問題的通用控制方程為

該方程是一個包含瞬態(tài)及源項的對流擴(kuò)散方程。從左到右,方程中的各項分別是瞬態(tài)項、對流項、擴(kuò)散項及源項。方程中的φ是廣義變量,如速度分量、溫度、濃度等,Γ為相應(yīng)于φ的廣義擴(kuò)散系數(shù),S為廣義源項。

對瞬態(tài)問題用有限體積法求解時,在將控制方程對控制體積進(jìn)行空間積分的同時,還必須對時間間隔Δt進(jìn)行時間積分。對控制體積所作的空間積分與穩(wěn)態(tài)問題相同,這里僅敘述對時間的積分。

將式1-221在一維計算網(wǎng)格上對時間及控制體積進(jìn)行積分,有

整理后,有

式1-223中,A是圖1-5中控制體積P的界面處的面積。

在處理瞬態(tài)項時,假定物理量φ在整個控制體積P上均具有節(jié)點處值φP,并用線性插值(φP-φP0)/Δt來表示?φ/?t。源項也分解為線性方式S=SC+SPφP。對流項和擴(kuò)散項的值按中心差分格式通過節(jié)點處的值來表示,則有

假定變量φP對時間的積分為

式1-225中,上標(biāo)0代表t時刻;φP是時刻的值;f為0與1之間的加權(quán)因子,當(dāng)f=0時,變量取老值進(jìn)行時間積分,當(dāng)f=1時,變量采用新值進(jìn)行時間積分。將φPφEφWSC+SPφP進(jìn)行時間積分,由式1-224可得到

整理后得

擴(kuò)展FD的定義,即乘以面積A,有

代入方程1-227,得

同樣也向穩(wěn)態(tài)問題引入a PaWa E,式1-229變?yōu)?/p>

式1-230中

根據(jù)f的取值,瞬態(tài)問題對時間的積分有幾種方案,當(dāng)f=0時,變量的初值出現(xiàn)在方程1-230的右端,從而可直接求出在現(xiàn)時刻的未知變量值,這種方案稱為顯式時間積分方案。

當(dāng)0< f <1時,現(xiàn)時刻的未知變量出現(xiàn)在方程的兩端,需要解由若干方程組成的方程組才能求出現(xiàn)時刻的變量值,這種方案稱為隱式時間積分方案。

● 當(dāng)f =1時,稱為全隱式時間積分方案。

● 當(dāng)f =1/2時,稱為Crank-Nicolson時間積分方案。

進(jìn)一步將一維問題擴(kuò)展為二維與三維問題。在二維問題中,計算區(qū)域離散見圖1-6。發(fā)現(xiàn)只是增加第二坐標(biāo)y,控制體積增加的上下界面,分別用n(north)和s(south)表示,相應(yīng)的兩個鄰點記為NS。在全隱式時間積分方案下的二維瞬態(tài)對流-擴(kuò)散問題的離散方程為

式1-232中

在三維問題中,計算區(qū)域離散如圖1-7所示(兩個方向的投影)。在二維的基礎(chǔ)上增加第三坐標(biāo)z,控制體積增加的前后界面,分別用t(top)和b(bottom)表示,相應(yīng)的兩個鄰點記為TB。在全隱式時間積分方案下的三維瞬態(tài)對流擴(kuò)散問題的離散方程為

圖1-7 三維計算區(qū)域離散網(wǎng)格在兩個方向上的投影

式1-234中

有限體積法常用的離散格式有中心差分格式、一階迎風(fēng)格式、混合格式、指數(shù)格式、乘方格式、二階迎風(fēng)格式、QUICK格式。

各種離散格式對一維、穩(wěn)態(tài)、無源項的對流-擴(kuò)散問題的通用控制方程(如式1-236所示),均能得到如式1-237所示的形式,對于高階情況如式1-238所示。

式1-238中,對于一階情況,a P=aW+a E+(Fe-Fw),對于二階情況,a P=aW+a E+WWa EE+a +(Fe-Fw),其中系數(shù)aWaE取決于所使用的離散格式(高階還有aWWaEE)。各種離散格式系數(shù)aWaE的計算公式見表1-5。

表1-5 不同離散格式下系數(shù)aW和aE的計算公式

1.2.6 CFD常用算法

流場計算的基本過程是在空間上用有限體積法(或其他類似方法)將計算區(qū)域離散成許多小的體積單元,在每個體積單元上對離散后的控制方程組進(jìn)行求解。

其本質(zhì)是對離散方程進(jìn)行求解,一般可以分為分離解法(segregated method)和耦合解法(coupled method)兩大類,各自又根據(jù)實際情況擴(kuò)展成具體的計算方法。

分離解法不直接求解聯(lián)立方程組,而是順序地、逐個地求解各變量代數(shù)方程組。分離解法中應(yīng)用廣泛的是壓力修正法,其求解基本過程如下。

(1)假定初始壓力場。

(2)利用壓力場求解動量方程,得到速度場。

(3)利用速度場求解連續(xù)方程,使壓力場得到修正。

(4)根據(jù)需要,求解湍流方程及其他標(biāo)量方程。

(5)判斷當(dāng)前時間步上的計算是否收斂。若不收斂,返回第二步,迭代計算;若收斂,重復(fù)上述步驟,計算下一時間步的物理量。

壓力修正法有很多實現(xiàn)方式,其中,壓力耦合方程組的半隱式方法(SIMPLE算法)應(yīng)用最為廣泛,也是各種商用CFD軟件普遍采納的算法。

耦合解法同時求解離散方程組,聯(lián)立求解出各變量(等),其求解過程如下。

(1)假定初始壓力和速度等變量,確定離散方程的系數(shù)及常數(shù)項等。

(2)聯(lián)立求解連續(xù)方程、動量方程、能量方程。

(3)求解湍流方程及其他標(biāo)量方程。

(4)判斷當(dāng)前時間步上的計算是否收斂。若不收斂,返回第二步,迭代計算;若收斂,重復(fù)上述步驟,計算下一時間步的物理量。

1.SIMPLE算法

SIMPLE算法就是求解壓力耦合方程的半隱方法(Semi-Implicit Method for Pressure Linked Equations),它是Patankar與Spalding在1972年提出的。

在常規(guī)離散方法中,壓力梯度項的離散會遇到問題。

如圖1-8所示,對P控制體積分后,的貢獻(xiàn)為Pw-Pe,如we為單元中點,則

圖1-8 一維控制體積網(wǎng)格

因此,動量方程將包含相間隔(而非相鄰)節(jié)點間的壓力差。

這樣導(dǎo)致求解精度降低,且形成鋸齒狀的壓力場,如圖1-9所示。

圖1-9 一維鋸齒狀壓力場

這類鋸齒狀壓力場對動量方程而言與均勻場相同(奇偶差),因此,高度不均勻的壓力場將被動量方程的特殊離散化當(dāng)作均勻的壓力場處理。

連續(xù)方程的離散也會遇到問題,如對于一維問題。

對控制體積分后:

ue-uw= 0

uE-uW= 0(跳開了P點)

這樣也會導(dǎo)致奇偶差。

對以上出現(xiàn)的離散問題,用交錯網(wǎng)格法能較好地解決,如圖1-10所示。在此方法中,將速度變量uv直接設(shè)置在P控制體的邊界面上,即P控制體邊界面上的uv不再通過主節(jié)點上的值求得,而是直接解得。

圖1-10 交錯網(wǎng)格

SIMPLE算法的基本思想可描述為:對于給定的壓力場(它可以是假定的值,或是上一次迭代計算所得到的結(jié)果),求解離散形式的動量方程,得出速度場。因為壓力場是假定的或不精確的,這樣,由此得到的速度場一般不滿足連續(xù)方程,因此,必須對給定的壓力場加以修正。

修正的原則是:與修正后的壓力場相對應(yīng)的速度場能滿足這一迭代層次上的連續(xù)方程。據(jù)此原則,把由動量方程離散形式所規(guī)定的壓力與速度的關(guān)系代入連續(xù)方程的離散形式,從而得到壓力修正方程,由壓力修正方程得出壓力修正值,接著根據(jù)修正后的壓力場,求得新的速度場,然后檢查速度場是否收斂,若不收斂,用修正后的壓力值作為給定的壓力場,開始下一層次的計算;如此反復(fù),直到獲得收斂的解。

在上述求解過程中,如何獲得壓力修正值(即如何構(gòu)造壓力修正方程),以及如何根據(jù)壓力修正值確定“正確”的速度(即如何構(gòu)造速度修正方程),是SIMPLE算法的兩個關(guān)鍵問題。為此,下面先解決這兩個問題,然后給出SIMPLE算法的求解步驟。

(1)速度修正方程。

考察一個直角坐標(biāo)系下的二維層流穩(wěn)態(tài)問題。設(shè)有初始的猜測壓力場p*,我們知道,動量方程的離散方程可借助該壓力場得以求解,從而求出相應(yīng)的速度分量u*v*

根據(jù)動量方程的離散方程,有

現(xiàn)在,定義壓力修正值p'為正確的壓力場p與猜測的壓力場p*之差,有

同樣地,定義速度修正值u'和v',以聯(lián)系正確的速度場(u, v)與猜測的速度場(u*,v*),有

將正確的壓力場p代入動量離散方程,得到正確的速度場(u, v)。現(xiàn)在,通過離散的動量方程與式1-240和式1-241,并假定源項b不變,有

引入壓力修正值與速度修正值的表達(dá)式1-242~式1-244,方程1-245和方程1-246可寫成

可以看出,由壓力修正值p'可求出速度修正值(u',v')。式1-247和式1-248還表明,任意一點上速度的修正值由兩部分組成:一部分是與該速度在同一方向上的相鄰兩節(jié)點間壓力修正值之差,這是產(chǎn)生速度修正值的直接動力;另一部分是由鄰點速度的修正值所引起的,這又可以視為四周壓力的修正值對所討論位置上速度改進(jìn)的間接影響。

為了簡化方程1-247和方程1-248的求解過程,在此,引入如下近似處理:略去方程中與速度修正值相關(guān)的。該近似是SIMPLE算法的重要特征。略去后的影響將在后面介紹的SIMPLEC算法中討論。于是有

以上兩式中

將式1-249和式1-250所描述的速度修正值代入方程1-243和方程1-244,有

對于,存在類似的表達(dá)式

以上兩式中

式1-252~式1-256表明,如果已知壓力修正值p',便可對猜測的速度場(u*,v*)作出相應(yīng)的速度修正,得到正確的速度場(u, v)。

(2)壓力修正方程。

在上面的推導(dǎo)中,只考慮了動量方程,其實,如前所述,速度場還受連續(xù)方程的約束。這里暫不討論瞬態(tài)問題。對于穩(wěn)態(tài)問題,連續(xù)方程可寫為

圖1-11 離散連續(xù)方程的標(biāo)量控制體積

針對圖1-11所示的標(biāo)量控制體積,連續(xù)方程滿足如下離散形式。

將正確的速度值,即式1-252~式1-256,代入連續(xù)方程的離散方程1-258,有

整理后,得

式1-260可簡化為

式1-261中

式1-261表示連續(xù)方程的離散方程,即壓力修正值p’的離散方程。方程中的源項b'是)所導(dǎo)致的“連續(xù)性”不平衡量。通過求解式1-261,可得到空間所有位置的壓力修正值p'。由于不正確的速度場(u*,v*

ρ是標(biāo)量控制體積界面上的密度值,同樣需要通過插值得到,這是因為密度ρ是在標(biāo)量控制體積中的節(jié)點(即控制體積的中心)定義和存儲的,在標(biāo)量控制體積界面上不存在可直接引用的值。無論采用何種插值方法,對于交界面所屬的兩個控制體積,必須采用同樣的ρ值。

為了求解方程1-261,還必須對壓力修正值的邊界條件作出說明。實際上,壓力修正方程是動量方程和連續(xù)方程的派生物,不是基本方程,故其邊界條件也與動量方程的邊界條件相聯(lián)系。

在一般的流場計算中,動量方程的邊界條件通常有兩類。

第一類,已知邊界上的壓力(速度未知)。

第二類,已知沿邊界法向的速度分量。

若已知邊界壓力,可在該段邊界上令p*=,則該段邊界上的壓力修正值p'應(yīng)為零。這類邊界條件類似于熱傳導(dǎo)問題中已知溫度的邊界條件。

若已知邊界上的法向速度,在設(shè)計網(wǎng)格時,最好令控制體積的界面與邊界相一致,這樣,控制體積界面上的速度為已知。

(3)SIMPLE算法的計算步驟。

至此,已經(jīng)得出了求解速度分量和壓力所需要的所有方程。根據(jù)前面介紹的SIMPLE算法的基本思想,可給出SIMPLE算法的計算流程,如圖1-12所示。

圖1-12 SIMPLE算法流程圖

2.其他算法

基于SIMPLE算法的改進(jìn)算法包括SIMPLEC、SIMPLER和PISO。下面介紹這些改進(jìn)算法,并對各算法進(jìn)行對比。

(1)SIMPLER算法。

SIMPLER是英文SIMPLE revised的縮寫,是SIMPLE算法的改進(jìn)版本。它是由SIMPLER算法的創(chuàng)始人之一Patankar完成的。

在SIMPLER算法中,為了確定動量離散方程的系數(shù),一開始就假定了一個速度分布,同時又獨立地假定了一個壓力分布,兩者之間一般是不協(xié)調(diào)的,從而影響了迭代計算的收斂速度。

實際上,與假定的速度場相協(xié)調(diào)的壓力場是可以通過動量方程求出的,因此不必在初始時刻單獨假定一個壓力場。

另外,在SIMPLER算法中對壓力修正值p'采用了欠松弛處理,而松弛因子是比較難確定的,因此,速度場的改進(jìn)與壓力場的改進(jìn)不能同步進(jìn)行,最終影響收斂速度。于是,Patankar便提出了這樣的想法:p'只用修正速度,壓力場的改進(jìn)則另謀更合適的方法。將上述兩方面的思想結(jié)合起來,就構(gòu)成了SIMPLER算法。

在SIMPLER算法中,經(jīng)過離散后的連續(xù)方程1-258用于建立一個壓力的離散方程,而不用來建立壓力修正方程,從而可直接得到壓力,而不需要修正。但是,速度仍需要通過SIMPLE算法中的方程1-252~方程1-256來修正。

將離散后的動量方程式重新改寫后,有

在SIMPLER算法中,定義偽速度

這樣,式1-262和式1-263可以變?yōu)?/p>

以上兩式中的系數(shù)d,仍沿用式1-251。同樣可寫出的表達(dá)式。然后將的表達(dá)式代入離散后的連續(xù)方程1-258,有

整理后,得到離散后的壓力方程為

式1-269中

方程1-269中的系數(shù)與前面的壓力修正方程中的系數(shù)相同,差別僅在于源項b。這里的源項 b 是用偽速度來計算的。因此,離散后的動量方程式,可借助上面得到的壓力場來直接求解。這樣,可求出速度分量u*v*。SIMPLER算法流程圖如圖1-13所示。

圖1-13 SIMPLER算法流程圖

在SIMPLER算法中,初始的壓力場與速度場是協(xié)調(diào)的,且由SIMPLER算法算出的壓力場不必作欠松弛處理,迭代計算時比較容易得到收斂解。但在SIMPLER的每一層迭代中,要比SIMPLE算法多解一個關(guān)于壓力的方程組,一個迭代步內(nèi)的計算量較大。總體而言,SIMPLER算法的計算效率要高于SIMPLE算法。

(2)SIMPLEC算法。

SIMPLEC是英文SIMPLE consistent的縮寫,意為協(xié)調(diào)一致的SIMPLE算法。它也是SIMPLE的改進(jìn)算法之一。

在SIMPLE算法中,為求解的方便,略去了速度修正方程中的項,從而把速度的修正完全歸結(jié)為由于壓差項的直接作用。這一做法雖然不影響收斂解的值,但加重了修正值p'的負(fù)擔(dān),使得整個速度場迭代收斂速度降低。

在略去時,犯了一個“不協(xié)調(diào)一致”的錯誤。為了能略去而同時又能使方程基本協(xié)調(diào),在方程1-247的等號兩端同時減去,有

與其鄰點的修正值具有相同的數(shù)量級,因而略去所產(chǎn)生的影響遠(yuǎn)比在方程1-247中不計所產(chǎn)生的影響要小得多。于是有

式1-271中

類似地,有

式1-273中

將式1-273和式1-274代入式1-252和式1-253,得到修正后的速度計算式:

這就是SIMPLEC算法。SIMPLEC算法與SIMPLE算法的計算步驟相同,只是速度修正方程中的系數(shù)項d的計算公式有所區(qū)別。

由于SIMPLEC算法沒有像SIMPLE算法那樣將項忽略,因此,得到的壓力修正值p'一般是比較合適的,因此,在SIMPLEC算法中可不再對p'進(jìn)行欠松弛處理。但據(jù)作者的經(jīng)驗,適當(dāng)選取一個稍小于1的app'進(jìn)行欠松弛處理,對加快迭代過程中解的收斂也是有效的。

(3)PISO算法。

PISO是pressure implicit with splitting of operators的縮寫,意為壓力的隱式算子分割算法。PISO算法是Issa于1986年提出的,起初是針對非穩(wěn)態(tài)可壓流動的無迭代計算所建立的一種壓力速度計算程序,后來在穩(wěn)態(tài)問題的迭代計算中也較廣泛地使用了該算法。

PISO算法與SIMPLE、SIMPLEC算法的不同之處在于:SIMPLE和SIMPLEC算法是兩步算法,即一步預(yù)測(圖1-12中的步驟1)和一步修正(圖1-12中的步驟2和步驟3);而PISO算法增加了一個修正步,包含一個預(yù)測步和兩個修正步,在完成了第一步修正得到(u, v, p)后尋求二次改進(jìn)值,目的是使它們更好地同時滿足動量方程和連續(xù)方程。PISO算法由于使用了預(yù)測—修正—再修正3步,從而可加快單個迭代步中的收斂速度。下面介紹這3個步驟。

① 預(yù)測步。

使用與SIMPLE算法相同的方法,利用猜測的壓力場p*,求解動量離散方程式1-240與式1-241,得到速度分量u*v*

② 第一步修正。

所得到的速度場(u*, v*)一般不滿足連續(xù)方程,除非壓力場p*是準(zhǔn)確的。現(xiàn)引入對SIMPLE的第一個修正步,該修正步給出一個速度場(u**, v**),使其滿足連續(xù)方程。此處的修正公式與SIMPLE算法中的完全一致,只不過考慮到在PISO算法還有第二個修正步,因此,使用不同的記法。

這組公式用于定義修正后的速度u**v**

就像在SIMPLE算法中一樣,將式1-280和式1-281代入連續(xù)方程1-258,得到壓力修正方程。求解該方程,產(chǎn)生第一個壓力修正值p'。一旦壓力修正值已知,可通過式1-280和式1-281獲得速度分量u**v**

③ 第二步修正。

為了強化SIMPLE算法的計算,PISO要進(jìn)行第二步的修正。u**v**的動量離散方程如下。

再次求解動量方程,可以得到兩次修正的速度場(u***,v***)。

注意修正步中的求和項是用速度分量u**v**來計算的。

從式1-284中減去式1-282,從式1-285中減去式1-283,有

式1-286和式1-287中,記號p''是壓力的二次修正值。有了該記號,p***可表示為

u***v***的表達(dá)式代入連續(xù)方程1-258,得到二次壓力修正方程:

式1-289中,。可寫出各系數(shù)如下。

現(xiàn)在,求解方程1-289,就可得到二次壓力修正值p'',從而可得到二次修正的壓力場。

最后,求解方程1-286與方程1-287,得到二次修正的速度場。

在瞬態(tài)問題的非迭代計算中,壓力場p***與速度場(u***, v***)被認(rèn)為是準(zhǔn)確的。對于穩(wěn)態(tài)流動的迭代計算,PISO算法的實施過程如圖1-14所示。

圖1-14 PISO算法流程圖

PISO算法要兩次求解壓力修正方程,因此,它需要額外的存儲空間來計算二次壓力修正方程中的源項。盡管該方法涉及較多的計算,但對比發(fā)現(xiàn),它的計算速度很快,總體效率比較高。FLUENT的用戶手冊推薦,對于瞬態(tài)問題,PISO算法有明顯的優(yōu)勢;而對于穩(wěn)態(tài)問題,可能選擇SIMPLE或SIMPLEC算法更合適。

3.SIMPLE系列算法的比較

SIMPLE算法是SIMPLE系列算法的基礎(chǔ),目前在各種CFD軟件中均提供這種算法。SIMPLE的各種改進(jìn)算法主要是提高了計算的收斂性,從而可縮短計算時間。

在SIMPLE算法中,壓力修正值p'能夠很好地滿足速度修正的要求,但壓力修正不是十分理想。改進(jìn)后的SIMPLER算法只用壓力修正值p'來修正速度,另外構(gòu)建一個更加有效的壓力方程來產(chǎn)生“正確”的壓力場。

由于在推導(dǎo)SIMPLER算法的離散化壓力方程時,沒有任何項被忽略,因此所得到的壓力場與速度場相適應(yīng)。

在SIMPLER算法中,正確的速度場將導(dǎo)致正確的壓力場,而在SIMPLE算法中則不是這樣。因此SIMPLER算法是在很高的效率下正確計算壓力場的,這一點在求解動量方程時有明顯優(yōu)勢。

雖然SIMPLER算法的計算量比SIMPLE算法高出30%左右,但其較快的收斂速度使得計算時間減少30%~50%。

SIMPLEC算法和PISO算法總體上與SIMPLER算法具有同樣的計算效率,相互之間很難區(qū)分誰高誰低,對于不同類型的問題每種算法都有自己的優(yōu)勢。

一般來講,動量方程與標(biāo)量方程(如溫度方程)如果不是耦合在一起的,則PISO算法在收斂性方面顯得很好,且效率較高。而在動量方程與標(biāo)量方程耦合非常密切時,SIMPLEC和SIMPLER算法的效果可能更好些。

1.2.7 計算域網(wǎng)格生成技術(shù)

網(wǎng)格分布是流動控制方程數(shù)值離散的基礎(chǔ),因此,網(wǎng)格生成技術(shù)是CFD成功實現(xiàn)數(shù)值模擬的關(guān)鍵前提之一,網(wǎng)格質(zhì)量的好壞直接影響到計算的斂散性及結(jié)果的精度。

網(wǎng)格生成的難度和耗費在整個模擬計算程序中占有較大的比重,“從某種角度看,自動生成繞復(fù)雜外形的理想網(wǎng)格甚至比編制一個三維的流場解程序更困難,即使在CFD高度發(fā)達(dá)的國家,網(wǎng)格生成仍占一個計算任務(wù)全部人力與時間的60%”,由此可見網(wǎng)格生成在實現(xiàn)流場解算功能過程中的重要性。

網(wǎng)格生成的實質(zhì)是物理求解域與計算求解域的轉(zhuǎn)換。一般而言,物理域與計算域間的轉(zhuǎn)換應(yīng)滿足下述基本條件。

(1)生成的網(wǎng)格使物理求解域上的計算節(jié)點與計算求解域上的計算節(jié)點一一對應(yīng),不致于出現(xiàn)物理對應(yīng)關(guān)系不確定的多重映射節(jié)點。

(2)生成的網(wǎng)格能夠準(zhǔn)確反映求解域的復(fù)雜幾何邊界形狀變化,能夠便于邊界條件的處理。

(3)物理求解域上的網(wǎng)格應(yīng)連續(xù)光滑求導(dǎo),保證控制方程離散過程中一階甚至多階偏導(dǎo)數(shù)的存在性、連續(xù)性。網(wǎng)格中出現(xiàn)的尖點、突躍點都將導(dǎo)致算法發(fā)散。

(4)網(wǎng)格的疏密易于控制,能夠在氣動參數(shù)變化劇烈的位置,如擊波面、壁面等處加密網(wǎng)格,而在氣動參數(shù)變化平緩的位置拉疏網(wǎng)格。

計算機(jī)技術(shù)的發(fā)展為計算流體力學(xué)步入工程實用階段提供了可能,如何有效地處理復(fù)雜的物面邊界,生成高質(zhì)量的計算網(wǎng)格,是目前計算流體力學(xué)一個重要的研究課題。

結(jié)構(gòu)化網(wǎng)格在拓?fù)浣Y(jié)構(gòu)上相當(dāng)于矩形域內(nèi)的均勻網(wǎng)格,其節(jié)點定義在每一層的網(wǎng)格線上,因此對于復(fù)雜外形物體要生成貼體的結(jié)構(gòu)網(wǎng)格是比較困難的。而非結(jié)構(gòu)化網(wǎng)格節(jié)點的空間分布完全是隨意的,沒有任何結(jié)構(gòu)特性,適應(yīng)性強,因而適合于處理復(fù)雜幾何外形,并且由于非結(jié)構(gòu)化網(wǎng)格在其生成過程中都要采用一定的準(zhǔn)則進(jìn)行優(yōu)化判定,因而生成的網(wǎng)格質(zhì)量較高。

Wimslow最早在20世紀(jì)60年代利用有限面積法用三角形網(wǎng)格對Poisson方程進(jìn)行了數(shù)值求解;而20世紀(jì)90年代以后,國外學(xué)者Dawes、Hah、Prekwas等采用了非結(jié)構(gòu)化網(wǎng)格進(jìn)行流場的數(shù)值求解,國外的著名商業(yè)CFD軟件,如FLUENT、Star-CD等在20世紀(jì)90年代后都將結(jié)構(gòu)化網(wǎng)格計算方法推廣到非結(jié)構(gòu)化網(wǎng)格上。

近年來,國內(nèi)學(xué)者也開始對非結(jié)構(gòu)化網(wǎng)格進(jìn)行深入的研究與探討,由此可見非結(jié)構(gòu)化網(wǎng)格已成為目前計算流體力學(xué)學(xué)科中的一個重要方向。

非結(jié)構(gòu)化網(wǎng)格的生成方法有很多,較常用到的有兩種:Delaunay三角化方法和推進(jìn)陣面法(advancing front method)。

(1)Delaunay三角化方法。

Delaunay三角化方法是按一定的方式在控制體內(nèi)布置節(jié)點。定義一個凸多邊形外殼,將所有的點都包含進(jìn)去,并在外殼上進(jìn)行三角化的初始化。

將節(jié)點逐個加入已有的三角化結(jié)構(gòu)中,根據(jù)優(yōu)化準(zhǔn)則破壞原有的三角化結(jié)構(gòu),并建立新的三角化結(jié)構(gòu),對有關(guān)數(shù)據(jù)結(jié)構(gòu)進(jìn)行更新后,繼續(xù)加點,直到所有的節(jié)點都加入其中,三角化過程結(jié)束。所生成的三角形網(wǎng)格,可以通過光順技術(shù)進(jìn)一步提高質(zhì)量。

常用的一種網(wǎng)格光順方法稱為Laplacian光順方法,這種光順方法是通過將節(jié)點向這個節(jié)點周圍的三角形所構(gòu)成的多邊形的形心的移動來實現(xiàn)的。

(2)推進(jìn)陣面法。

推進(jìn)陣面法是網(wǎng)格和節(jié)點同時生成的一種生成方法,它的基本方法為:根據(jù)網(wǎng)格密度控制的需要,在平面上布置一些控制點,給每一個控制點定義一個尺度。根據(jù)這些控制點將平面劃分成大塊的三角形背景網(wǎng)格。

每一個背景網(wǎng)格中的所有點的尺度都可以根據(jù)其3個頂點的尺度插值得到。因此相當(dāng)于布置了一個遍布整個平面的網(wǎng)格尺度函數(shù)。根據(jù)內(nèi)邊界定義初始陣面,按順時針方向進(jìn)行陣面初始化。初始化陣面上的每一條都稱為活動邊。

由初始陣面上的一條活動邊開始推進(jìn),根據(jù)該活動邊的中點所落入的背景網(wǎng)格插值確定該點的尺度,根據(jù)該點的尺度及有關(guān)的規(guī)則確定將要生成的節(jié)點位置。

判定該節(jié)點是否應(yīng)被接納,并根據(jù)情況生成新的三角形單元,更新陣面,并沿陣面的方向繼續(xù)推進(jìn)生成三角形,直至遇到外邊界,網(wǎng)格生成結(jié)束。

主站蜘蛛池模板: 尚义县| 仁布县| 湟源县| 大埔县| 台北市| 榆社县| 古田县| 正镶白旗| 宝应县| 黎川县| 正蓝旗| 凤阳县| 松原市| 桦甸市| 吉林市| 四子王旗| 会同县| 伊川县| 潜山县| 延边| 孟津县| 永泰县| 长治市| 温泉县| 惠水县| 平谷区| 安义县| 荃湾区| 清水县| 土默特左旗| 襄垣县| 旌德县| 赫章县| 乳源| 凌云县| 灌南县| 太康县| 长岭县| 太康县| 岳西县| 会昌县|