偏微分数值解

  • 格式:doc
  • 大小:252.00 KB
  • 文档页数:12

一、 实验目的
1、 了解并掌握不同差分格式的稳定性;
2、 能够掌握比较不同差分格式数值效应的能力。

二、 实验问题
取a=1,2,4, h=0.1, 0.08τ=,用以下几种差分格式求解对流方程
01,0(0,)()0,0t x u au x u x f x x +=⎧⎪≤⎧⎨==⎨⎪>⎩⎩
得t=4时数值结果。

用图示说明算法的稳定性和间断点附近的计算效果,并进行相应的数值分析。

迎风格式(upwind):
111()n n n n j j j j u u a u u λ++-=--
Lax-friedrichs
格式: 1111111()()22
n n n n n j j j j j u u u a u u λ++-+-=+-- Lax-wendroff 格式:
1
22111111()(2)22n n
n n n n n j j
j j j j j u u a u u a u u u λλ++-+-=--+-+ 修正迎风格式:
11(1)n n n j j p j p u du d u +---=+-
这里p=[ a λ],d= a λ-[ a λ],/0.8h λτ==.为网格比,记
号[x]表示不超过x 的最大整数。

三、实验原理
τ=划分网格。

首先取[10,10]
x∈-,[0,4]
t∈。

按照h=0.1,0.08
再由各种差分格式通过已知的第1层网格点数值可以求出第2
层网格点的数值。

以此类推,通过逐层的信息最终求得在第4
层网格点数值结果。

注意:这里x,t的取值范围应当包含间断点。

同时,在所需求
的第4层也应当包含间断点。

这点要求可以通过初始估算得出。

四、实验过程
根据要求将网格中x划分为200格,t划分为50格。

首先通过
matlab构造一个大的零矩阵。

然后分别利用差分格式代入并作
图。

1、取a=1
迎风格式(upwind):
Lax-friedrichs 格式:
Lax-wendroff 格式:
修正迎风格式:
2、取a=2
迎风格式(upwind):
Lax-friedrichs 格式:
Lax-wendroff 格式:修正迎风格式:
3、取a=4
迎风格式(upwind)
Lax-friedrichs 格式:
Lax-wendroff 格式:修正迎风格式:
五、总结
1、从以上的作图分析可以验证:当1
aλ≤时,以上差分格式是收敛的;当1
aλ>时,只有修正迎风格式是收敛的。

这与理论相符。

2、当a=1时,迎风格式在间断点附近从1迅速光滑的递减到
0;Lax-friedrichs格式在间断点附近从1迅速递减到0,
但在途中有阶梯状;Lax-wendroff格式在间断点附近从1
先小幅上升后再迅速光滑递减到0;修正迎风格式与迎风
格式区别不大,都是在间断点附近从1迅速光滑的递减到
0。

3、当a=1,2,4时,修正迎风格式的间断点(0,0)分别按照特
征线方程变为第四层的(4,4),(8,4)和(16,4)。

4、随着a的数值的不断变大,迎风格式(upwind),lax-friedrichs
格式,Lax-wendroff 格式的不稳定性越来越大。

例如,
当a=2时,Lax-friedrichs格式的最大偏差量级为10^8,
当a=4时,Lax-friedrichs格式的最大偏差量级为10^23。

5、在差分格式不稳定时,迎风格式相比其他格式的波动更大。