日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

一维黎曼c语言,一维黎曼问题数值解及计算程序.docx

發(fā)布時(shí)間:2024/3/24 编程问答 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一维黎曼c语言,一维黎曼问题数值解及计算程序.docx 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

實(shí)用標(biāo)準(zhǔn)文案

一維 Riemann 問(wèn)題數(shù)值解與計(jì)算程序

一維 Riemann問(wèn)題,即激波管問(wèn)題,是一個(gè)典型的一維可壓縮無(wú)黏氣體動(dòng)力

學(xué)問(wèn)題,并有解析解。對(duì)它采用二階精度MacCormack兩步差分格式進(jìn)行數(shù)值求

解。同時(shí),為了初學(xué)者入門(mén)和練習(xí)方便

,這里給出了用

C

語(yǔ)言和

編寫(xiě)的

Fortran77

計(jì)算一維 Riemann問(wèn)題的計(jì)算程序,供大家學(xué)習(xí)參考。

A-1 利用 MacCormack兩步差分格式求解一維Riemann問(wèn)題

1.一維 Riemann問(wèn)題

一維 Riemann問(wèn)題實(shí)際上就是激波管問(wèn)題。激波管是一根兩端封閉、內(nèi)部充

滿(mǎn)氣體的直管,如圖A.1 所示。在直

管中由一薄膜將激波管隔開(kāi), 在薄膜兩

側(cè)充有均勻理想氣體(可以是同一種氣

體,也可以是不同種氣體) ,薄膜兩側(cè)

氣體的壓力、密度不同。當(dāng)t0 時(shí),

氣體處于靜止?fàn)顟B(tài)。當(dāng)t0 時(shí),薄膜

圖 A.1 激波管問(wèn)題示意圖

瞬時(shí)突然破裂, 氣體從高壓端沖向低壓端,同時(shí)在管內(nèi)形成激波、 稀疏波和接觸

間斷等復(fù)雜波系。

2.基本方程組、初始條件和邊界條件

設(shè)氣體是理想氣體。一維Riemann問(wèn)題在數(shù)學(xué)上可以用一維可壓縮無(wú)黏氣體

Euler方程組來(lái)描述。在直角坐標(biāo)系下量綱為一的一維Euler方程組為:

u

f

1

x 1

(A.1)

t

0,

x

u

其中

u

u

, f

u 2

p

(A.2)

E

(E

p)u

文檔

實(shí)用標(biāo)準(zhǔn)文案

這里、 u 、 p 、 E 分別是流體的密度、速度、壓力和單位體積總能。理想氣體

狀態(tài)方程:

p

1

e

1 E

1

u2

v2

(A.3)

2

初始條件: 1

1, u1

0, p1

1 ; 2

0.125, u2

0, p2

0.1。

邊界條件: x

1 和 x

1 處為自由輸出條件,

u0 u1 , uN

uN 1 。

3.二階精度 MacCormack差分格式

兩步差分格式:

MacCormack

n

1

unj

r f jn

f jn 1

u j

2

11 unj

n

1

1

n

1

(A.4)

u nj

n

u j

2

1 r f j 1 2

f j

2

2

2

t

計(jì)算實(shí)踐表明,

兩步差分格式不能抑制激波附近非物

x

理振蕩。因此在計(jì)算激波時(shí),必須采用人工黏性濾波方法:

un

un

1

un

2u n

un

(A.5)

i , j

i , j

2

i 1, j

i, j

i 1, j

為了在激波附近人工黏性起作用,而在光滑區(qū)域人工黏性為零, 需要引入一個(gè)與

密度(或者壓力)相關(guān)的開(kāi)關(guān)函數(shù):

i

1

i

i

i

1

(A.6)

i

1

i

i

i

1

由式 (A.6) 可以看出,在光滑區(qū)域,密度變化很緩,因此值也很小;而在激波

附近密度變化很陡,值就很大。帶有開(kāi)關(guān)函數(shù)的前置人工黏性濾波方法為:

uin, j

uin, j

1

uin

1, j 2uin, j uin 1, j

(A.7)

2

其中參數(shù)往往需要通過(guò)實(shí)際試算來(lái)確定,也可采用線性近似方法得到:

t | a | 1

t | a |

(A.8)

x

x

文檔

實(shí)用標(biāo)準(zhǔn)文案

由于聲速不會(huì)超過(guò)3 ,所以取 | a | 3 ,在本計(jì)算中取0.25 。

4.計(jì)算結(jié)果分析

計(jì)算分別采用標(biāo)準(zhǔn)的C 語(yǔ)言和 Fortran77語(yǔ)言編寫(xiě)程序。計(jì)算中網(wǎng)格數(shù)取

1000 ,計(jì)算總時(shí)間為 T0.4。計(jì)算得到在 T0.4 時(shí)刻的密度、速度和壓力分布

如圖 A.2 ( C 語(yǔ)言計(jì)算結(jié)果)和圖A.3 ( Fortran77語(yǔ)言計(jì)算結(jié)果)所示。采用兩

種不同語(yǔ)言編寫(xiě)程序所得到的計(jì)算結(jié)果完全吻合。

從圖 A.2 和圖 A.3 中可以發(fā)現(xiàn),MacCormack兩步差分格式能很好地捕捉激波,

計(jì)算得到的激波面很陡、 很窄,計(jì)算激波精度是很高的。 采用帶開(kāi)關(guān)函數(shù)的前置

人工濾波法能消除激波附近的非物理振蕩,計(jì)算效果很好。

從圖 A.2 和圖 A.3 中可以看出通過(guò)激波后氣體的密度、壓力和速度都是增加

的;在壓力分布中存在第二個(gè)臺(tái)階,表明在這里存在一個(gè)接觸間斷,在接觸間斷

兩側(cè)壓力是有間斷的, 而密度和速度是相等的。 這個(gè)計(jì)算結(jié)果正確地反映了一維

Riemann問(wèn)題的物理特性,并被激波管實(shí)驗(yàn)所驗(yàn)證。

圖 A.2

采 用

C

語(yǔ)言程序得到的一維

圖 A.3

采用

Fortran77

語(yǔ)言程序得到的一維

Riemann問(wèn)題密度、速度和壓力分布Riemann問(wèn)題密度、速度和壓力分布

文檔

實(shí)用標(biāo)準(zhǔn)文案

A-2一維 Riemann問(wèn)題數(shù)值計(jì)算源程序

C 語(yǔ)言源程序

// MacCormack1D.cpp :定義控制臺(tái)應(yīng)用程序的入口點(diǎn)。

//

/*--------------------------------

總結(jié)

以上是生活随笔為你收集整理的一维黎曼c语言,一维黎曼问题数值解及计算程序.docx的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。