本書主要就守恒律方程的數(shù)值方法從理論到算法實現(xiàn)進行詳細(xì)介紹,內(nèi)容由淺入深。針對算法的實施及應(yīng)用,以嚴(yán)格的數(shù)學(xué)理論為基礎(chǔ),圍繞核心計算技術(shù),進行深入分析和討論。從守恒律方程的介紹開始,逐步介紹了相應(yīng)的數(shù)值技術(shù),并進行了探討。就經(jīng)典的計算方法而言,作者以小部分內(nèi)容涵蓋了有限差分和有限體積,用主要的篇幅介紹高精度計算方法。針對高階計算方法,書中介紹了針對守恒律方程的高階時間積分方法及空間離散格式,例如:Runge-Kutta方法、高階限制器、ENO格式、間斷Galerkin方法及譜方法。同時,從理論分析角度,就高階方法所面臨的挑戰(zhàn)進行了討論。本書附帶教學(xué)及自學(xué)Matlab及C++代碼,為理解和應(yīng)用相應(yīng)的算法提供了基礎(chǔ)。
更多科學(xué)出版社服務(wù),請掃碼獲取。
1. 1999.09-2003.07 西安交通大學(xué)數(shù)學(xué)系,學(xué)士
2. 2003.09-2006.02 西安交通大學(xué)數(shù)學(xué)系,碩士
3. 2006.02-2009.12 西安交通大學(xué)動力工程與工程熱物理,博士1. 2024.01-至今:問境智能聯(lián)合研究中心,主任,特聘教授
2. 2018.12-至今:倫敦帝國理工學(xué)院,航空系研究員 (PI)
3. 2018.09-至今:上海交通大學(xué),副教授
4. 2012.10-2018.10:倫敦帝國理工學(xué)院,航空系及數(shù)學(xué)系,副研究員/研究員 (PI)
5. 2017.02-2018.08:英國諾丁漢大學(xué),工程系,訪問研究院
6. 2010.03-2012.05:巴黎第六大學(xué),力學(xué)系與達朗貝爾研究院,博士后計算數(shù)學(xué)1. 主持上海市海外高層次人才項目--"千人計劃"(本書依托項目)
2. 主持國家自然科學(xué)基金"湍流結(jié)構(gòu)的生成演化與作用機理"重大研究計劃培育項"渦扇發(fā)動機中湍流特性及寬頻噪生產(chǎn)生機理的數(shù)值研究"(項目編號:91852106,倫敦帝國理工榮譽研究;Journal of Hydrodynamics 副主編;中國空氣動力學(xué)會計算空氣動力學(xué)專業(yè)委員會委員;中國空氣動力學(xué)會智能空氣動力學(xué)專業(yè)組委員。
目錄
中文版序言
Preface to the Chinese Edition
譯者序言
原書序言
MATLAB腳本
第1章 介紹
1.1 面臨的挑戰(zhàn) 3
1.2 守恒律的歷史 8
1.3 連續(xù)介質(zhì)力學(xué)中的偉大方程 10
1.3.1 線性方程 10
1.3.2 非線性方程 13
1.4 測試案例及軟件 14
1.4.1 一維問題 14
1.4.2 二維問題 19
1.5 待解法和發(fā)現(xiàn)的問題 21
1.6 讀者及閱讀建議 23
參考文獻 23
第2章 標(biāo)量守恒律方程
2.1 弱解 29
2.2 熵條件與解 32
2.3 熵函數(shù) 38
參考文獻 45
第3章 守恒律系統(tǒng)
3.1 線性系統(tǒng) 47
3.2 黎曼問題 52
3.3 熵條件與熵函數(shù) 58
參考文獻 63
第4章 從連續(xù)到離散
4.1 守恒與守恒形式 66
4.2 單調(diào)性和熵條件 70
參考文獻 83
第5章 有限差分法 84
5.1 線性問題 85
5.1.1 一致性、穩(wěn)定性和收斂性 88
5.1.2 非光滑問題 95
5.2 非線性問題 97
5.3 有限差分法的運用 99
5.3.1 邊界條件 100
5.3.2 線性波動方程 101
5.3.3 伯格斯方程 103
5.3.4 麥克斯韋方程組 107
5.3.5 歐拉方程 111
參考文獻 118
第6章 有限體積法 120
6.1 戈杜諾夫法 120
6.2 近似黎曼求解器 125
6.2.1 Roe通量 125
6.2.2 Engquist-Osher通量 131
6.2.3 Harten-Lax-van Leer (HLL)通量 132
6.3 中心格式 134
6.4 有限體積方法的運用 136
6.4.1 歐拉方程 136
參考文獻 143
第7章 多維問題 145
7.1 二維單調(diào)格式的運用 147
7.1.1 伯格斯方程 147
7.1.2 非凸問題 150
7.1.3 歐拉方程 153
參考文獻 162
第8章 高階精度及其挑戰(zhàn) 164
8.1 優(yōu)點 164
8.1.1 相位誤差分析 169
8.2 缺點 173
8.2.1 總變差穩(wěn)定性 173
8.2.2 熵穩(wěn)定性 185
8.3 嚴(yán)重缺點 200
8.3.1 吉布斯現(xiàn)象 202
8.3.2 是否重要 207
8.3.3 如果重要,可以做什么 211
參考文獻 219
第9章 強穩(wěn)定性保持的時間積分 222
9.1 龍格-庫塔法 225
9.1.1 顯式強穩(wěn)定性保持(SSP)龍格-庫塔格式 227
9.1.2 隱式SSP龍格-庫塔格式 230
9.1.3 階次障礙 232
9.2 多步法 237
參考文獻 238
第10章 基于限制器的高階精度方法 240
10.1 通量限制格式 241
10.1.1 通量校正傳輸(FCT)格式 241
10.1.2 TVD-穩(wěn)定的高階格式 243
10.1.3 正格式 250
10.1.4 通量限制格式的運用 254
10.2 斜率限制格式 266
10.2.1 守恒律方程的單調(diào)上游中心格式(MUSCL) 266
10.2.2 基于拉格朗日重構(gòu)的多項式方法 271
10.2.3 斜率限制格式的運用 275
10.3 中心格式 283
10.3.1 中心格式的運用 289
10.4 拓展到多維問題 298
10.4.1 伯格斯方程 298
10.4.2 非凸標(biāo)量方程 306
10.4.3 歐拉方程 308
參考文獻 315
第11章 本質(zhì)無振蕩格式 319
11.1 插值與重構(gòu) 319
11.2 ENO方法 326
11.2.1 守恒律方程的 ENO 法 329
11.2.2 一些理論 331
11.2.3 ENO方法的運用 335
11.3 WENO方法 353
11.3.1 WENO的變種 359
11.3.2 良平衡格式 364
11.3.3 更多理論 368
11.3.4 WENO方法的運用 370
11.4 處理非均勻網(wǎng)格 378
11.5 從一維拓展 380
11.5.1 非笛卡兒邊界上的插敘 382
11.5.2 標(biāo)量方程 383
11.6 歐拉方程 386
參考文獻 392
第12章 間斷伽遼金方法 396
12.1 基本概念 402
12.1.1 局部近似 405
12.1.2 關(guān)鍵性質(zhì) 417
12.1.3 誤差估計 423
12.1.4 相位誤差分析 427
12.2 非光滑問題 430
12.2.1 隱藏精度的研究 432
12.2.2 濾波 440
12.2.3 非線性耗散 449
12.2.4 斜率限制器 464
12.2.5 基于WENO的限制器 473
12.2.6 極值保持限制器 479
12.3 相關(guān)公式 483
12.3.1 譜懲罰方法 485
12.3.2 譜有限體積格式 487
12.3.3 譜差分格式 488
12.3.4 通量重構(gòu)格式 491
12.4 擴展到多維問題 495
12.5 間斷伽遼金方法的運用 499
12.5.1 線性波動方程 500
12.5.2 伯格斯方程 506
12.5.3 麥克斯韋方程 510
12.5.4 歐拉方程 513
參考文獻 523
第13章 譜方法 533
13.1 傅里葉模式和節(jié)點 534
13.1.1 連續(xù)傅里葉展開 534
13.1.2 離散傅里葉展開 540
13.2 傅里葉譜方法 545
13.2.1 傅里葉-伽遼金方法 545
13.2.2 傅里葉配置法 548
13.3 非線性問題 553
13.3.1 斜對稱形式 553
13.3.2 黏性消去法 556
13.4 后處理技術(shù) 562
13.4.1 濾波 562
13.4.2 傅里葉-帕德重構(gòu) 568
13.4.3 克服吉布斯現(xiàn)象 574
13.5 譜方法的運用 585
13.5.1 伯格斯方程 585
13.5.2 麥克斯韋方程 589
13.5.3 歐拉方程 592
參考文獻 596
索引 601
11.2.3 ENO方法的運用 335
11.3 WENO方法 353
11.3.1 WENO的變種 359
11.3.2 良平衡格式 364
11.3.3 更多理論 368
11.3.4 WENO方法的運用 370
11.4 處理非均勻網(wǎng)格 378
11.5 從一維拓展 380
11.5.1 非笛卡兒邊界上的插敘 382
11.5.2 標(biāo)量方程 383
11.6 歐拉方程 386
參考文獻 392
第12章 間斷伽遼金方法 396
12.1 基本概念 402
12.1.1 局部近似 405
12.1.2 關(guān)鍵性質(zhì) 417
12.1.3 誤差估計 423
12.1.4 相位誤差分析 427
12.2 非光滑問題 430
12.2.1 隱藏精度的研究 432
12.2.2 濾波 440
12.2.3 非線性耗散 449
12.2.4 斜率限制器 464
12.2.5 基于WENO的限制器 473
12.2.6 極值保持限制器 479
12.3 相關(guān)公式 483
12.3.1 譜懲罰方法 485
12.3.2 譜有限體積格式 487
12.3.3 譜差分格式 488
12.3.4 通量重構(gòu)格式 491
12.4 擴展到多維問題 495
12.5 間斷伽遼金方法的運用 499
12.5.1 線性波動方程 500
12.5.2 伯格斯方程 506
12.5.3 麥克斯韋方程 510
12.5.4 歐拉方程 513
參考文獻 523
第13章 譜方法 533
13.1 傅里葉模式和節(jié)點 534
13.1.1 連續(xù)傅里葉展開 534
13.1.2 離散傅里葉展開 540
13.2 傅里葉譜方法 545
13.2.1 傅里葉-伽遼金方法 545
13.2.2 傅里葉配置法 548
13.3 非線性問題 553
13.3.1 斜對稱形式 553
13.3.2 黏性消去法 556
13.4 后處理技術(shù) 562
13.4.1 濾波 562
13.4.2 傅里葉-帕德重構(gòu) 568
13.4.3 克服吉布斯現(xiàn)象 574
13.5 譜方法的運用 585
13.5.1 伯格斯方程 585
13.5.2 麥克斯韋方程 589
13.5.3 歐拉方程 592
參考文獻 596
索引 601
11.2.3 ENO方法的運用 335
11.3 WENO方法 353
11.3.1 WENO的變種 359
11.3.2 良平衡格式 364
11.3.3 更多理論 368
11.3.4 WENO方法的運用 370
11.4 處理非均勻網(wǎng)格 378
11.5 從一維拓展 380
11.5.1 非笛卡兒邊界上的插敘 382
11.5.2 標(biāo)量方程 383
11.6 歐拉方程 386
參考文獻 392
第12章 間斷伽遼金方法 396
12.1 基本概念 402
12.1.1 局部近似 405
12.1.2 關(guān)鍵性質(zhì) 417
12.1.3 誤差估計 423
12.1.4 相位誤差分析 427
12.2 非光滑問題 430
12.2.1 隱藏精度的研究 432
12.2.2 濾波 440
12.2.3 非線性耗散 449
12.2.4 斜率限制器 464
12.2.5 基于WENO的限制器 473
12.2.6 極值保持限制器 479
12.3 相關(guān)公式 483
12.3.1 譜懲罰方法 485
12.3.2 譜有限體積格式 487
12.3.3 譜差分格式 488
12.3.4 通量重構(gòu)格式 491
12.4 擴展到多維問題 495
12.5 間斷伽遼金方法的運用 499
12.5.1 線性波動方程 500
12.5.2 伯格斯方程 506
12.5.3 麥克斯韋方程 510
5.1 extend.m 100
5.2 LinwaveMDriver1D.m 101
5.3 LinwaveM1D.m 101
5.4 LinwaveMrhs1D.m 102
5.5 LinwaveLF.m 102
5.6 LinwaveLW.m 103
5.7 BurgersMDriver1D.m 104
5.8 BurgersM1D.m 105
5.9 BurgersMrhs1D.m 105
5.10 BurgersLF.m 106
5.11 BurgersLW.m 106
5.12 BurgersRoe.m 106
5.13 MaxwellMDriver1D.m 107
5.14 CavityExact.m 108
5.15 MaxwellM1D.m 108
5.16 MaxwellMrhs1D.m 109
5.17 MaxwellLF.m 109
5.18 MaxwellLW.m 110
5.19 EulerMDriver1D.m 111
5.20 EulerM1D.m 112
5.21 EulerMrhs1D.m 113
5.22 EulerLF.m 113
5.23 EulerLLF.m 114
5.24 EulerLW.m 114
6.1 Chebtau2p.m 130
6.2 Chebeps.m 130
6.3 EulerRoe.m 137
6.4 EulerHLL.m 138
6.5 EulerHLLC.m 140
7.1 BurgersMDriver2D.m 147
7.2 BurgersM2D.m 148
7.3 BurgersMrhs2D.m 148
7.4 KPPMDriver2D.m 150
7.5 KPPM2D.m 150
7.6 KPPMrhs2D.m 151
7.7 KPPxLF.m 151
7.8 KPPyLF.m 152
7.9 EulerMDriver2D.m 153
7.10 EulerM2D.m 154
7.11 EulerMrhs2D.m 154
7.12 EulerLF2Dx.m 155
7.13 EulerLF2Dy.m 156
7.14 EulerHLL2Dx.m 157
7.15 EulerHLL2Dy.m 158
7.16 IsentropicVortex2D.m 159
8.1 FilterFD.m 213
10.1 minmod.m 242
10.2 FluxLimit.m 254
10.3 LinwaveFLrhs1D.m 255
10.4 BurgersFLrhs1D.m 258
10.5 EulerFLrhs1D.m 260
10.6 EulerFLcharrhs1D.m 263
10.7 EulerChar.m 265
10.8 maxmod.m 270
10.9 minmodTVB.m 271
10.10 SlopeLimit.m 275
10.11 LinwaveSLrhs1D.m 276
10.12 BurgersSLrhs1D.m 279
10.13 EulerSL1D.m 280
10.14 EulerSLrhs1D.m 281
10.15 extendstag.m 289
10.16 LinwaveCrhs1D.m 290
10.17 BurgersFlux.m 292
10.18 BurgersJac.m 292
10.19 BurgersCrhs1D.m 293
10.20 EulerCrhs1D.m 294
10.21 EulerFlux.m 296
10.22 EulerJac.m 297
10.23 BurgersFLrhs2D.m 298
10.24 BurgersSLrhs2D.m 300
10.25 BurgersCrhs2D.m 302
10.26 BurgersFlux2Dx.m 305
10.27 BurgersFlux2Dy 305
10.28 BurgersJac2Dx.m 305
10.29 BurgersJac2Dy.m 306
10.30 KPPFlux2Dx.m 306
10.31 KPPFlux2Dy.m 307
10.32 KPPJac2Dx.m 307
10.33 KPPJac2Dy.m 307
10.34 EulerSL2D.m 309
10.35 EulerSLrhs2D.m 309
10.36 EulerFlux2Dx.m 312
10.37 EulerFlux2Dy.m 312
10.38 EulerJac2Dx.m 313
10.39 EulerJac2Dy.m 314
11.1 ReconstructWeights.m 324
11.2 LinearWeights.m 325
11.3 ddnewton.m 328
11.4 ENO.m 335
11.5 LegendreGQ.m 336
11.6 BurgersENODriver1D.m 337
11.7 BurgersENO1D.m 338
11.8 BurgersENOrhs1D.m 339
11.9 MaxwellENODriver1D.m 341
11.10 MaxwellENO1D.m 341
11.11 MaxwellENOrhs1D.m 342
11.12 MaxwellUpwind.m 345
11.13 EulerENODriver1D.m 347
11.14 EulerENO1D.m 348
11.15 EulerENOrhs1D.m 349
11.16 lagrangeweights.m 355
11.17 Qcalc.m 357
11.18 betarcalc.m 357
11.19 WENO.m 371
11.20 MaxwellWENO1D.m 372
11.21 EulerWENOcharrhs1D.m 375
11.22 KPPWENOrhs2D.m 384
11.23 EulerWENODriver2D.m 386
11.24 EulerWENO2D.m 387
11.25 EulerWENOrhs2D.m 388
12.1 LegendreP.m 406
12.2 LegendreGL.m 412
12.3 VandermondeDG.m 413
12.4 GradLegendreP.m 415
12.5 GradVandermondeDG.m 415
12.6 DmatrixDG.m 415
12.7 FilterDG.m 444
12.8 HeatDGrhs1D.m 454
12.9 HeatFlux.m 455
12.10 Nonvisc1.m 456
12.11 Nonvisc2.m 458
12.12 Entvisc.m 460
12.13 SlopeLimitCSDG.m 467
12.14 SlopeLimitBSBDG.m 469
12.15 MomentLimitDG.m 470
12.16 WENOlimitDG.m 474
12.17 WENODGWeights.m 477
12.18 extprelimitDG.m 482
12.19 extendDG.m 499
12.20 LinwaveDGDriver1D.m 501
12.21 LinwaveDG1D.m 501
12.22 LinwaveDGrhs1D.m 503
12.23 BurgersDGDriver1D.m 506
12.24 BurgersDG1D.m 507
12.25 BurgersDGrhs1D.m 508
12.26 MaxwellDGDriver1D.m 510
12.27 MaxwellDG1D.m 511
12.28 MaxwellDGrhs1D.m 512
12.29 EulerDGDriver1D.m 514
12.30 EulerDG1D.m 515
12.31 EulerDGrhs1D.m 516
12.32 EulerQtoRDG.m 518
12.33 EulerRtoQDG.m 519
13.1 Fourierdx.m 538
13.2 FourierD.m 542
13.3 Fourier-VanishHypVisc.m 560
13.4 FourierF.m 567
13.5 FourierPade.m 570
13.6 SingularFourierPade.m 571
13.7 GegenbauerP.m 578
13.8 GegenbauerRecon.m 580
13.9 GegenbauerGQ.m 583
13.10 GegenbauerPade.m 584
13.11 BurgersSpecDriver1D.m 586
13.12 BurgersSpec1D.m 586
13.13 BurgersSpeechs1D.m 587
13.14 MaxwellSpecDriver1D.m 590
13.15 MaxwellSpec1D.m 590
13.16 MaxwellSpecDriver1D.m 591
13.17 EulerSpecDriver1D.m 593
13.18 EulerSpec1D.m 594
13.19 EulerSpeechs1D.m 596