[有限差分法在微分方程中的应用]课程论文
课
程
论
文
有限差分法在微分方程中的应用
本学期学习了《微分方程数值解》,本书中有限差分法给我留下的印象比较深刻,下边说说自己在方面的一点理解,请老师指正。 1. 有限差分法的基本思想:
当系统的数学模型建立后,我们面对的主要问题就是微分积分方程的求解。
基本思想是用离散的只含有限个未知量的差分方程组去近似地代替连续变量的微分方程和定解条件,并把差分方程组的解作为微分方程定解问题的近似解。将原方程及边界条件中的微分用差分来近似,对于方程中的积分用求和或及机械求积公式来近似代替,从而把原微分积分方程和边界条件转化成差分方程组。 2. 有限差分法求解偏微分方程的步骤:
区域离散,即把所给偏微分方程的求解区域细分成由有限个格点组成的网格,这些离散点称作网格的节点;
近似替代,即采用有限差分公式替代每一个格点的导数。
逼近求解,换而言之,这一过程可以看作是用一个插值多项式及其微分来代替偏微分方程的解的过程。
从原则上说,这种方法仍然可以达到任意满意的计算精度。因为方程的连续数值解可以通过减小独立变量离散取值的间格,或者通过离散点上的函数值进行插值计算来近似得到。理论上,当网格步长趋近于零时,差分方程组的解应该收敛于精确解,但由于机器字节的限制,网格步长不可能也没有必要取得无限小,那么差分法的收敛性或者说算法的稳定性就显得至关重要。因此,在运用有限差分法时,除了要保证精度外,还必须要保证其收敛性。 3. 构造差分法的几种形式:
主要草用的是泰勒级数展开的方法。其基本差分表达式主要有三种形式:一阶向前差分、一阶向后差分、一阶中心差分和二阶中心差分等。其中前两种形式为一阶计算精度,后一种为二阶计算精度。
4. 有限差分法的应用:
4.1抛物线形的差分法中的一维常系数抛物线型方程 考虑最简单的以为常系数抛物线型方程
∂u ∂u
Lu =-a 2=f (x ) (x , t ∈Ω)
∂t ∂x
其中Ω是(x.t )平面内的给定区域,可以是有节区域或无解区域;a>0是常数,L 是微分算
子。
根据定解条件的不同,可以将上述方程分为两类: 1. 初值问题
在区域Ω={(x , t ) |-∞0}上求解方程满足初始条件
2
u (x ,0) =φ(x ), -∞
2,初边值问题(混合问题)
在区域Ω={(x , t ) |0
u (x ,0) =φ(x ),0≤x ≤l 和下列边界条件之一的解。
第一边届条件
u (0,t ) =μ1,
u (l , t ) =μ2 0≤t ≤T
第二边界条件
u x (0,t ) =β1,
u x (l , t ) =β2 0≤t ≤T
第三边界条件
(u -α1(t ) u x ) |x =0=r 1(t )
(u -α2(t ) u x ) |x =0=r 2(t ) αi ≥0, i =1, 2, ≤0t ≤T
用适当的差商代替方程中相应的偏导数,可得到以下几种最简差分格式: 古典显示格式:
k
L (1)h u j ≡
+1
u k -u k j j
τ
-a
k k
u k j +1-2u j +u j -1
h
2
=f j k
古典隐式格式:
L u
(2)
h k +1j
≡
+1u k -u k j j
τ
-a
+1k +1+1
u k +u k j +1-2u j j -1
h
2
=f j k +1
加权六点隐式格式:
L u ≡
(3)h k j
+1u k -u k j j
τ
+1k +1+1k k
⎡u k ⎤+u k u k j +1-2u j j -1j +1-2u j +u j -1k +1k -⎢a θ+a (1-θ) ⎥=θf j +(1-θ) f j 22
h h ⎢⎥⎣⎦
4.2椭圆型方程边值问题的差分法
考虑如下两点边值问题
-au ''+bu '+cu =f
u (0)=u 0, u (1)=u 1 x ∈Ω=(0,1)
其中u 0,u 1为常数,系数a=a(x),b=b(x),c=c(x),f=f(x)为一致的充分光滑函数,且满足a(x)>0,c(x)>0.
首先将区间离散化,我们采用剖分部分,取正整数M ,将区间M 等分,的M+1个节点:
0=x 0
其中x j =jh (j =0,1, M ), h =
1
。设U 为定义在节点x j =jh (j =0,1, M ) 上的网格函M
数并用U i 近似u (x j ) 。下边可以得到两点边值问题的有限差分:
A h U j -a j
U j -1-2U j +U j +1
h 2
+b j
U j +1-U j -1
2h
+c j U j =f j
U 0=u 0, U 1=u 1 j =0, 1 , M - 1
上述方程组成为差分方程,它的解就是两点边值问题的差分解,当j =0,1, M -1时忧伤出差分方程可得:
11
-(a j +hb j ) U j -1+(2a j +h 2c j ) U j -(a j -hb j ) U j +1=h 2f j
22
由此得出线性代数方程: =g
(M -1)(M -1)
其中=(U 1, U 2, U M -1, ) , g =(g 1, g 2, g M -1) ,因此A ∈R
T T
1⎡⎤2
2a +h b -(a -hb ) 1111⎢⎥2⎢⎥
112⎢-(a +hb ) ⎥2a +h b 2-(a 2-hb 2) 222
⎢⎥22
A =(a ij ) =⎢⎥12
⎢⎥-(a 3+hb 3) 2a 3+h b 3
2⎢⎥
⎢⎥ ⎢⎥2
2a M -1+h b M -1⎥⎢⎣⎦
g ∈R M -1定义为
1⎡⎤2
h f +(a +hb ) u 1110⎢⎥2⎢⎥2
h f 2⎢⎥
⎥ g =⎢
⎢⎥2
h f M -2⎢⎥
⎢⎥12
⎢h f M -1+(a M -1+hb M -1) u 1⎥⎣2⎦
显然,当h 充分小的时候矩阵A 为按行对角占优的矩阵,即 a i i ≥
∑|a
j ≠i
i j
|i , =1, 2M , -
且存在i 0,使得:a i 0i 0>
∑|a
j ≠i 0
i 0j
|
4.3:双曲线方程的有限差分法
我们考虑线性对流方程的初值问题
∂u ∂u
+a =0,(x,t)∈Ω ∂t ∂x u (x ,0) =φ(x ), -∞
用差分法求解该微分方程的过程和用差分法求解抛物线型方程相类似。
以下我们看看用差分法求解该方程的几种格式,不一一写出具体步骤,只列出结果。 1。 Courant-Isaacson-Rees 格式(迎风格式)
+1u k -u k j j
τ
+a
+
k
u k j -u j -1
h
-a
-
k
u k j +1-u j
h
1
=0 其中a ±=(|a |±a )
2
2.Lax-Friedrichs 格式。
1k +1
k k u k -(u j +1+u k j j -1) u -u j +1j -1+a =0
τ2h
3。Lax-wendroff 格式。
u
k +1
j
r k r 2k k k
=u -(u j +1-u j -1) +(u j +1-2u k +u j j -1)
22
k j
4. 蛙跳(Leap-Frog )格式。
k
u k j +1-u j -1
2τ
+a
k
u k j +1-u j -1
2h
=0
5.Crank-Nicolson 格式。
r k +1k +1+1k k
u k =u -(u j +1-u j -1+u k j j j +1-u j -1)
4
以上是本书中差分法在解决不同类型的初边值问题中的应用,只是一些概括性的知识点,下边我们仅用一个具体的实例来说明差分法的求解问题过程。
考虑扩散方程的第一初边值问题:
∂u ∂2u
=2, 当00 ∂t ∂x
u (x ,0) =sin x , 当0≤x ≤1时 u (0,t ) =u (1, t ) =0, 当t ≥0
用分离变量法可得其解析式为:u (x , t ) =e
-π2t
sin πx ,0≤x ≤1;t ≥0
取J =10, h =0.1, x j =jh (j =0,1, J ) ,τ为时间步长,r =用加权六点隐式格式:
τ
h 2
为网比,对于不同的r ,
L u ≡
(3)h k j
+1u k -u k j j
τ
+1k +1+1k k
⎡u k ⎤+u k u k j +1-2u j j -1j +1-2u j +u j -1k +1k -⎢a θ+a (1-θ) ⎥=θf j +(1-θ) f j 22
h h ⎢⎥⎣⎦
计算上述问题的解u (x , t ) 在(0.5,0.5)处的近似值,计算结果如下表所示,上述问题的解析式在该点的值为u (0.5,0.5)=0.00719188。
5. 总结:
差分法在微分方程数值问题中的应用很广泛,是一个很深奥的很有研究意义的问题,我对它的理解也仅存在于皮毛上,在上面的例子中,仅仅是列举出了抛物线形的差分法中的一维常系数抛物线型方程,对于剩下的两种并没有局出具体的例子来说明,但是其解题思路如上述所叙述的一样。
学习完了这本书,收获有之,更多的是留下的问题,很多问题自己会好好的去理解的。
最后,祝老师新年愉快。