有限體積法求解二維可壓縮euler方程
——計算流體力學課程大作業
老師: 夏健、劉學強
學生: 徐錫虎
學號: sq0901*******
日期: 2023年2月5日
目錄一、內容摘要2)
二、流動控制方程2)
三、有限體積法的空間離散2)
四、人工耗散3)
五、時間離散4)
六、邊界條件5)
七、計算結果8)
八、結論與展望11)
參考文獻11)
一、內容摘要
本文通過運用jameson有限體積法求解了二維定常和非定常可壓縮euler方程。程式實現語言為c++。其中,使用的網格是三角形非結構網格。
在時間推進上使用的是四步龍—庫塔推進格式。推進的時間步長取的是當地的時間步長。為了消除迭代誤差、round-off等誤差,本文採用了新增人工耗散項的辦法。
另外,本文計算了naca0012翼型在跨音速下不同迎角的情況,並與fluent軟體的計算結果進行了比較,來驗證程式的準確性。
二、流動控制方程
守恆形式的euler方程:
1)其中x和y代表笛卡兒座標系。w是守恆變數。
2)f,g表示通量
3),p , h和e表示密度,壓強,單元總焓和單元總能量。u,v表示笛卡兒座標系下的速度向量。這些量由理想氣體的單位體積的總能量和總焓相互聯絡。
4)5)
三、有限體積法的空間離散
計算域被劃分為互不重疊的單元。在每個單元運用守恆形式的euler方程。由於每個單元相對於時間都是不變的,所以等式(1)可以寫成:
8) 其中和s是單元的體積和邊界。w是單元的平均值。
在對上述方程進行時間離散前,先對空間進行離散,則方程(6)可以寫為:
9)其中表示第k個單元的體積,是第k個單元的守恆變數。表示第k個單元的通量。方程(7)的右邊項可以寫成:
10)其中11)
(8)式中的求和是對第k個單元的所有邊進行的。守恆引數的量是單元中心值,在求通量時,第i條邊的守恆引數值是用左右單元的平均來表示的:
12)引入變數:
13)則第k單元的euler方程可以寫為:
14)在本文中,採用的是jamenson有限體積法,為了減少儲存的相關資訊的量,其儲存的方式選擇的是按邊儲存的方法。在儲存的每條邊的資訊中,包含了這條邊的邊號,左右單元號和邊的端點。在計算通量時採用按邊迴圈的方式:
do i=1,nedge
k=connmatrix(i,1)
a=connmatrix(i,2)
b=connmatrix(i,3)
p=connmatrix(i,4)
flux=function(k,a,b,p)
sum(k)=sum(k)+flux
sum(p)=sum(p)-flux
end do
這裡給出的是fotran語言的形式,我編寫採用的是c,具體表現在上交的程式中。
在計算時間步長、人工耗散項等也可用象這樣按邊迴圈,從此處我們可以看出求解時與單元的形狀無關。
四、人工耗散
人工粘性模型對方法的成功應用起著關鍵作用,人工粘性抑制解在激波附近的振盪,又阻尼解在光滑區域內的高階誤差,對解的線性穩定和收斂於定態是很重要的。本文在方程(14)的右端加入了人工耗散項,如對於單元k,其表示式可以表示為:
15)在有限體積法中,耗散項的公式可以表示為:
16)其中:
17)其中的i表示單元k和p的公共邊,定義為:
18)上面的j表示與k相鄰的單元。
19)20)
其中的量的範圍是:。
在計算時發現上面方法得到的人工耗散項並不太適合。其在光滑區域耗散項太大,而在大剃度區域又顯得太小,為了彌補上面的不足,作下面的修改:
21)自適應係數為:
22)尺度係數為:
23)其中的u,v表示邊上的值,c表示當地聲速。
五、時間離散
方程最後的穩定解是通過時間上的迭代得到的,可以寫為:
24)右邊項的表示式為:
25)為了加速收斂,時間迭代使用的是4步龍—庫塔推進格式。格式如下:
26) 其中的n表示的是當前的時間步,n+1表示的是新的時間步:
27)28)
為了減小計算時間,人工耗散項的計算只在第一步進行,在下面幾步的迭代中保持不變。運用上面的方法計算,可以發現cfl數可以取到,本文中使用的是2.0。
使用顯示格式迭代的主要缺點是由於穩定區域的限制,所以不能使用過大的時間步長。可以用近似的方法估算時間步長,對於任意形狀的網格,可以使用下面的方法:
29)六、邊界條件
1 固面邊界條件
對與無粘流動,固面邊界條件無穿透條件,設其法向的速度通量為零,即。由於壓強項的影響,x-向和y-向的動量通量並不為零。固面的壓強近似的取為其相鄰的單元的單元中心壓強。
廣泛的數值研究證明,如果貼近壁面的單元足夠小,並且人工耗散項運用正確,用這種方法取得的壓強對結果的精度不會產生太大的影響。
2 遠場邊界條件
本文提到的遠場,實際是人為的有界邊界,對於流場中的擾動會傳到很遠的地方。因而對於遠場邊界條件,情況比較複雜,它不能直接給定具體的流場值,需要與流場內的值來共同確定遠邊場的流場值。如果邊界取得過小,則通常採用環量修正。
一般情況下,我們採用無反射邊界條件。
為了保證擾動波不會反射回流場,應用提出的遠場邊界法向一維特徵分析方法,來建立無反射的遠場邊界條件。
一維均熵流動的euler方程可寫成:
30)31)
這裡,動量方程中除去了壓強項,將上式寫成矩陣形式為:
32)這裡:
33)的特徵值為:,
因此,上式的兩族特徵線為:
34)35)
(34)為特徵線,(35)為特徵線。
沿,給出了眾所周知的riemann不變數,:
36)37)
這裡不變數,沿入流特徵線是常數,可以用來流條件計算得到;沿出流特徵線是常數,可以用流場內部向外插值計算:
38)39)
上式中下標「」表示來流值,下標「」表示以計算域內部引數外插獲得的值。
通過riemann不變數,的加減,可獲得遠場的法向速度和音速:
40)41)
根據riemann不變數,按邊界附近資訊傳播的性質把遠場邊界條件分成以下四種情況:
a、 亞音速入流條件,它有三條入流特徵線,需規定三個條件:
42)43)
用向量方法求空間角和距離
在高考的立體幾何試題中,求角與距離是常考查的問題,其傳統的 三步曲 解法 作圖 證明 解三角形 作輔助線多 技巧性強,是教學和學習的難點 向量進入高中教材,為立體幾何增添了活力,新思想 新方法與時俱進,本專題將運用向量方法簡捷地解決這些問題 1 求空間角問題 空間的角主要有 異面直線所成的角 直線和...
求函式值域的幾種方法用
常用函式的值域,這是求其他複雜函式值域的基礎。1.函式的值域為r 2.二次函式當時值域是 當時值域是 3.反比例函式的值域為 4.指數函式的值域為 5.對數函式的值域為r 6.函式的值域為 1,1 函式,的值域為r 一觀察法 觀察法是最簡單的求函式值域的方法,此法適用於那些形式比較簡單的函式 例1求...
3 2 2用向量方法求空間中的角
第三章空間向量 3.2.2用向量方法求空間中的角 科目高二數學班級姓名時間 2015 1 16 一 學習目標 1.理解掌握利用向量方法解決線線角 線面角 二面角的求法 二 學習過程 一 問題 問題1 如何用向量方法求兩異面直線所成的角?求法 設兩異面直線所成角為 它們的方向向量為a,b,則cos 問...