第二章-有限差分法的基本概念
节点( x j , tn )记为( j, n).
0
x
间距h 0称为空间步长,间距 0称为时间步长.
2 用Taylor级数展开方法建立差分格式
设 f ( x ) 在 x0 的某个邻域 U (x0 , ) 内具有直 到n 1阶的导数,则 x U (x0 , ) 有 f ( x ) f (x0 ) f (x0 )(x x0 ) -
两层格式:计算n+1层时只用到n层数据,前后仅涉 及 到两个时间层.
对同一微分方程可以建立种种不同形式的差分格式.
在(1.1)中u对t 采用向前差商,u对x采用向后差商和中心
差商得
n ujn1 unj un u j j 1 0 a (左偏格式) h 0 u j fj n n u jn 1 u n u u j 1 j 1 j 0 a (中心格式) 2h 0 u j fj
(1.10)
初值问题(1.1)的差分格式
n n u jn 1 u n u u j j1 j a 0 (显式右偏格式) (1.11) h 0 u j fj
t
n+1
n=3 n=2 n n=1 j j+1 n=0 x
j=0
1
2
3
4
5
n 1 u 显格式:计算 j 时不用n+1层还未计算出的节点.
u ( x j , t n ) O( ), (向前差商) t
(1.2)
u ( x j 1, tn ) u ( x j , tn ) u ( x j , t n ) O(h), (向前差商) (1.3) h x u ( x j , tn ) u ( x j 1, tn ) u ( x j , t n ) O(h), (向后差商) (1.4) h x u ( x j 1, tn ) u ( x j 1, tn ) u ( x j , t n ) O(h2 ), (中心差商) (1.5) 2h x
有限差分法步骤:
Step1.将定解区域离散化为网格离散节点的集合;
Step2.将待求的偏微分方程定解问题转化为一组 相 应的差分方程组;
Step3.根据差分方程组解出各离散点处的待求函数 值——离散解.
§1
有限差分格式
以最简单一维对流方程为例,引入用差分
方法求偏微分方程数值解的一些概念,说明求 解过程和原理. 考虑对流方程的初值问题
(1.12)
(1.13)
考虑扩散方程的初值问题
u 2u a x2 , t u ( x , 0) f (x),
x R, t 0,
x R,
(1.14)
差分格式:
n n n u jn 1 u n u 2 u u j j 1 j j1 0 a 2 h u 0 f j 0, 1, 2, - , j j
课件邮箱:nmofpde@
密码:2014fengxiaoli
数值求解过程:
1.区域剖分
2.微分方程的离散
有限差分法
3.初始和边界条件处理
4.离散系统的性态研究 (误差分析)
第2章
有限差分方法的基本概念
有限差分方法优点: 1、概念清晰;
2、方法简单,直观;
3、系数矩阵有很好的结构和性质。
(1.15)
3 积分方法
t
n+1 {( x, t ) | x j h h x x j , t n t t n 1} 2 2
u 2u 对(1.14)积分有: t dxdt a x2 dxdt D D
xj h 2
j 0, 1, 2 , -
n 0,1, 2 , - , (1.9)
这里 / h称为网格比.
(1.8)和(1.9)称为方程(1.1)的(有限)差分方程.
问题(1.1)中的初始条件的离散形式是 u 0 f f ( x ), j 0, 1, 2, - ,
j j j
[u(t , x) u(t , x)]dx
n n
h xj 2
a
x 应用数值积分可得: [u(tn , x j ) u(tn , x j )]h
由于u是方程(1.1)的解,所以满足 u ( x j , tn ) a u ( x j , tn ) 0, t x (1.6)
因此从(1.2)和(1.3)得到 u ( x j , t n 1 ) u ( x j , tn ) u ( x j 1, t n ) u ( x j , t n ) a h (1.7) O( h),
u a u 0 x R, t 0 x t u(x,0) f (x) x R
(1.1)
1 网格剖分(区域的离散化)
网格剖分可以采用两组平行于x轴和t轴
的直线形成的网覆盖区域D,它们的交点称 为网格点(节点) t tn n n 0,1, 2 , x x j jh j 0, 1, 2 , t
f (n) ( x0 ) ( x x0 ) n Rn( x ) n! R ( x)是余项,且R ( x) o(( x x ) n )( x x ).
n n 0 0
设u是方程(1.1)的解,对于任何节点( j, n),u的微商
与差商之间的关系式
u ( x j , t n 1 ) u ( x j , t n )
为了保证逼近精度要求,实际取步长h与 是较
小的量,特别在进行理论分析的极限过程中它们都
趋向于零.这样可以用方程
1 n un u j j
n un u j1 j
h 近似代替,其中u n表示u ( x , t )的近似值.
j j n
a
0
(1.8)
将(1.8)改写成便于计算的形式
1 n n n un u u a ( u j j j ), j1
有限差分法
有限差分法finite difference method用差分代替微分,是有限差分法的基本出发点。
是一种微分方程和积分微分方程数值解的方法。
把连续的定解区域用有限个离散点构成的网格来代替,这些离散点称作网格的节点;把连续定解区域上的连续变量的函数用在网格上定义的离散变量函数来近似;把原方程和定解条件中的微商用差商来近似,积分用积分和来近似,于是原微分方程和定解条件就近似地代之以代数方程组,即有限差分方程组,解此方程组就可以得到原问题在离散点上的近似解。
然后再利用插值方法便可以从离散解得到定解问题在整个区域上的近似解。
如何根据问题的特点将定解区域作网格剖分;如何把原微分方程离散化为差分方程组以及如何解此代数方程组。
此外为了保证计算过程的可行和计算结果的正确,还需从理论上分析差分方程组的性态,包括解的唯一性、存在性和差分格式的相容性、收敛性和稳定性。
对于一个微分方程建立的各种差分格式,为了有实用意义,一个基本要求是它们能够任意逼近微分方程,这就是相容性要求。
另外,一个差分格式是否有用,最终要看差分方程的精确解能否任意逼近微分方程的解,这就是收敛性的概念。
此外,还有一个重要的概念必须考虑,即差分格式的稳定性。
因为差分格式的计算过程是逐层推进的,在计算第n+1层的近似值时要用到第n层的近似值,直到与初始值有关。
前面各层若有舍入误差,必然影响到后面各层的值,如果误差的影响越来越大,以致差分格式的精确解的面貌完全被掩盖,这种格式是不稳定的,相反如果误差的传播是可以控制的,就认为格式是稳定的。
只有在这种情形,差分格式在实际计算中的近似解才可能任意逼近差分方程的精确解。
最常用的方法是数值微分法,比如用差商代替微商等。
另一方法叫积分插值法,因为在实际问题中得出的微分方程常常反映物理上的某种守恒原理,一般可以通过积分形式来表示。
此外还可以用待定系数法构造一些精度较高的差分格式。
龙格库塔龙格-库塔(Runge-Kutta)方法是一种在工程上应用广泛的高精度单步算法。
3第二章有限差分方法基础解读
3第二章有限差分方法基础解读有限差分方法是数值计算中常用的一种方法,用于求解偏微分方程的数值解。
它的基本思想是将连续的空间或时间域离散化为有限的点,然后用差分近似代替导数,将偏微分方程转化为差分方程,从而得到问题的数值解。
有限差分方法的基础概念有三个:差分节点、差分近似和差分方程。
差分节点是指将连续的自变量区域划分为离散的点,这些点被称为节点。
差分近似是指用函数在差分节点上的函数值来近似代替它们的导数值。
差分方程是指在差分节点上建立的方程,用来表示问题的数值解。
在有限差分方法中,常用的几种差分格式有:向前差分、向后差分和中心差分。
其中,向前差分是将函数在节点$x_i$处的导数近似为$f'(x_i)≈\frac{f(x_i+h)-f(x_i)}{h}$,向后差分是将函数在节点$x_i$处的导数近似为$f'(x_i)≈\frac{f(x_i)-f(x_i-h)}{h}$,中心差分是将函数在节点$x_i$处的导数近似为$f'(x_i)≈\frac{f(x_i+h)-f(x_i-h)}{2h}$。
这些差分格式的选择要根据问题的具体情况和求解的精度要求来确定。
有限差分方法中,差分方程的建立是非常重要的一步。
一般来说,差分方程的建立需要利用边界条件和初始条件。
对于初始条件,通常是指给定问题在初始时刻或初始位置上的条件;而边界条件是指给定问题在边界上的条件。
缺乏良好的边界条件和初始条件会导致差分方程无法建立或无法得到合理的数值解。
因此,在使用有限差分方法求解偏微分方程时,需要仔细考虑问题的边界条件和初始条件,并将其合理地纳入差分方程中。
有限差分方法还包括时间步长和空间步长的选择。
时间步长是指时间域上的离散间隔,空间步长是指空间域上的离散间隔。
时间步长和空间步长的选取要兼顾问题的稳定性和精度要求。
一般来说,时间步长和空间步长越小,计算的精度越高,但计算量也会增加。
因此,在具体应用中,需要根据问题的特点和计算资源的限制来选择合适的步长。
有限差分法
两端都要给定边界条件(双程坐标) 。
9
(C) 双曲型方程:适当的边界条件和初始条件,与波动传 播的性质有关 如:一维对流方程
∂u ∂u +c =0 ∂t ∂x u (x ,0) = f (x )
解为 u (x , t ) = f (x − ct ) ,代表一个向右(c > 0 时)或向左 ( c < 0 时)传播的波形。必须在波形传来的一侧提供边界条 件(单程坐标) 。
10
不适定的例子:
utt + u xx = 0 u (x ,0) = u t (x ,0) = 0
拉普拉斯方程+非闭域边界条件,解为 u (x , t ) ≡ 0 。 然而,若定解条件为 u (x ,0) = 0, ut (x ,0) =
u (x , t ) = 1 sin nx ,解为 n
1 sinh nt sin nx n
(
)
n n um+1 = um −
cτ n n um +1 − um −1 2h
(
)
设计算到第 n 步时的累积误差
n ~n εn = 计算值um − 差分法精确解um m
反之
n ~n um = εn + um m
15
则第 n+1 步的计算值
~n ~ n cτ u n − u n ~ ~ um+1 = um − m +1 m −1 2h cτ n cτ n n n = um − um +1 − um −1 + εn − εm +1 − εn −1 m m 2h 2h n = um+1 + εn +1 m
uin +1 − uin −1 uin+1 − uin +1 − uin −1 − uin−1 −α =0 Lh u = τ h2 ατ 2 ⎛ ∂ 2u ⎞ τ 2 ⎛ ∂ 3u ⎞ Ti = Lh u − Lu (x i , t n ) = 2 ⎜ 2 ⎟ + ⎜ 3 ⎟ − L 截断误差 6 ⎜ ∂t ⎟i h ⎜ ∂t ⎟i ⎝ ⎠ ⎝ ⎠
第二章 有限差分法
(x
xi )3
1 4 f 4! x4
(x
xi )4
在式 2.2.1 中,分别取 x xi h, x xi h ,
得
2.2.1
f h2 2 f h3 3 f h4 4 f
fi1, j
fi, j
h( ) x
2
x2
6
x3 24 x4
fi1, j
fi,
j
h( f x
)
h2 2
2 f x2
h3 6
x
f y
fi1, j1
fi1, j1 fi1, j1 4hl
fi1, j1
2.2.14
4 f x 2 y 2
2 x2
2 f
y 2
1 h2l 2
( fi1, j1 2 fi1, j
fi1, j1 2 fi, j1 4 fi, j
2 fi, j1 fi1, j1 2 fi1, j fi1, j1 )
3 f y3
fi2, j 2 fi1, j 2 fi1, j 2l 3
fi2, j
2.2.12
4 f y 4
fi2, j 4 fi1, j 6 fi, j 4 fi1, j l4
fi2, j
另外,利用式样2.2.6 至 2.2.9, 可以导出混合导数的中心差分公 式
2.2.13
2 f xy
位于V内的结点称为内结点,位于V和S以外的结点称为外部结点,如图2-1所示。
除特殊情况外,我们一般只考虑位于V内和S上(简记为V+S)的结点,即内部结
点和边界结点。结点 xi , yi 简记为i, j
,函数f在此点的值简记为fi, j 。
y
外部虚拟结点
有限差分法的基本原理
f (x) ≈
2h
中心二阶差商
′′
f (x+h)−2f (x)+f (x−h)
f (x) ≈
h2
O(h) O(h)
2
O(h )
2
O(h )
其中,h表示网格间距,O(hn)表示截断误差与hn成正比。可以看出,中心差商比前向或后向差商具有更高的精度。
误差分析
有限差分法求得的数值解与真实解之间存在误差,这些误差主要来源于以下几个方面:
常用差分格式
有限差分法中最重要的步骤是构造合适的差分格式来近似微分项。根据泰勒展开式,可以得到以下常用的一阶和二阶差分格式:
差分格式
表达式
截断误差
前向一阶差商
′
f (x+h)−f (x)
f (x) ≈
h
后向一阶差商
′
f (x)−f (x−h)
f (x) ≈
h
中心一阶差商
′
f (x+h)−f (x−h)
截断误差:由于使用有限项级数来近似无穷级数而产生的误差; 舍入误差:由于计算机对小数进行四舍五入而产生的误差;
离散误差:由于对连续区域进行离散化而产生的误差; 稳定性误差:由于数值格式的稳定性不足而导致误差的累积或放大。
为了减小误差,一般可以采取以下措施:
选择更高阶或更精确的差分格式; 减小网格间距或时间步长; 选择合适的初始条件和边界条件; 选择稳定且收敛的数值格式。
+
。 2
h)
为了验证上述方法的正确性,我们取M = 10, N = 100,则原问题可以写为如下形式:
则该问题对应的递推关系式为:
⎧ut (x, t) − uxx (x, t) = 0,
有限差分法推导
有限差分法推导【最新版】目录1.有限差分法的基本概念2.有限差分法的推导方法3.有限差分法的应用实例4.有限差分法的优缺点正文一、有限差分法的基本概念有限差分法是一种数值计算方法,主要应用于求解偏微分方程的初值问题。
它是通过将连续的函数值用有限个离散点上的函数值来代替,从而将偏微分方程转化为关于这些离散点上的代数方程组。
这种方法可以有效地降低问题的复杂度,使得求解过程更加简便。
二、有限差分法的推导方法有限差分法的推导过程主要包括以下几个步骤:1.对边界条件进行离散处理,将边界上的函数值用有限个离散点上的函数值来代替。
2.对偏微分方程进行离散处理,将偏微分方程转化为关于这些离散点上的代数方程组。
3.求解代数方程组,得到离散点上的函数值。
4.通过插值方法,将离散点上的函数值还原为连续函数。
三、有限差分法的应用实例有限差分法广泛应用于各种物理、工程和数学问题中,例如求解热传导方程、波动方程和亥姆霍兹方程等。
下面以求解一维热传导方程为例,展示有限差分法的应用过程。
假设我们要求解如下的热传导方程:u/t = k * ^2u/x^2x = [0, 1]t = [0, T]边界条件:u(0, t) = f(t), u(1, t) = 0初始条件:u(x, 0) = 0我们可以通过以下步骤应用有限差分法:1.对边界条件进行离散处理,将边界上的函数值用有限个离散点上的函数值来代替。
2.对偏微分方程进行离散处理,将偏微分方程转化为关于这些离散点上的代数方程组。
3.求解代数方程组,得到离散点上的函数值。
4.通过插值方法,将离散点上的函数值还原为连续函数。
四、有限差分法的优缺点有限差分法具有以下优点:1.适用范围广泛,可以应用于各种偏微分方程的初值问题。
2.推导过程相对简单,容易理解和实现。
3.计算精度较高,可以通过增加离散点数来提高精度。
然而,有限差分法也存在以下缺点:1.计算量较大,需要处理大量的代数方程组。
2.对于某些问题,可能需要进行特殊的处理,例如处理不稳定的代数方程组。
有限差分法基本原理
有限差分法的应用领域
流体力学
用于模拟流体在固定或变形网格 上的流动,如计算流体动力学 (CFD)中的数值模拟。
热传导
用于求解热传导方程,模拟热 量在物体中的传播和分布。
波动传播
用于求解波动方程,如地震波 、声波和电磁波的传播。
有限差分法基本原理
CONTENTS 目录
• 引言 • 有限差分法的基本原理 • 有限差分法的实现 • 有限差分法的优缺点 • 有限差分法的改进方向
CHAPTER 01
引言
有限差分法的定义
有限差分法是一种数值计算方法,通 过将连续的物理量离散化为有限个离 散点上的数值,并建立代数方程来近 似描述物理量随时间和空间的变化规 律。
缺点
精度问题
由于有限差分法采用的是离散化的方法, 因此其精度受到网格大小的影响,网格越
小精度越高,但同时也会增加计算量。
数值耗散误差
在模拟非线性问题时,有限差分法可能会 产生数值耗散误差,导致能量的损失或者
非物理振荡。
数值色散误差
在模拟波动性问题时,有限差分法可能会 产生数值色散误差,导致波的传播速度发 生变化。
常用的离散化方法包括均匀网格、非均匀网格、有限元法等,
应根据实际问题选择合适的离散化方法。
差分近似
Hale Waihona Puke 01差分近似公式根据微分方程的性质,构造差分 近似公式,将微分方程转化为差 分方程。
精度分析
02
03
稳定性分析
分析差分近似公式的精度,确定 其与微分方程的误差大小和分布。
分析差分近似公式的数值稳定性, 确保计算过程中误差不会累积放 大。
有限差分法初步
• 引言 • 有限差分法的原理 • 有限差分法的应用 • 有限差分法的实现 • 有限差分法的优缺点 • 结论与展望
01
引言
有限差分法的定义
有限差分法是一种数值计算方法,通 过将偏微分方程离散化为差分方程, 从而求解偏微分方程的近似解。
近似表示微 分,从而将微分方程转化为差分方程。
有限差分法。
COMSOL Multiphysics实现
COMSOL Multiphysics是一款基于有限元法的多物理场仿真软件,也支持有限差分法。 COMSOL提供了友好的用户界面和丰富的物理模型库,使得有限差分法的实现更加便
捷。
有限差分法的并行计算实现
MPI实现
MPI(Message Passing Interface)是一种并行计算的标准,支持多个处理 器之间的通信。通过MPI,可以实现有限差分法的并行计算,提高计算效率。
自适应网格技术
根据解的特性自适应地调整离散点间距,以 提高计算精度和效率。
并行化与优化
通过并行计算和算法优化等技术提高有限差 分法的计算效率。
与其他方法的结合
将有限差分法与其他数值方法或物理模型相 结合,以处理更复杂的问题。
06
结论与展望
结论
01
有限差分法是一种数值计算方 法,通过离散化连续问题为差 分方程,进而求解数值近似解 。
有限差分法原理简单,易于理解和实现,不需要复杂的数学工 具。
有限差分法可以方便地进行并行计算,提高计算效率。
有限差分法可以应用于各种不同类型的偏微分方程,具有广泛 的适用性。
有限差分法的缺点
精度问题
由于有限差分法是一种离散化方法,其精度受到离散点间距的限制, 可能导致计算结果不够精确。
第二章 有限差分法的基本概念
x
间距h > 0称为空间步长,间距τ > 0称为时间步长.
2 用Taylor级数展开方法建立差分格式
设 f ( x) 在 x0 的某个邻域 U ( x0 , δ ) 内具有直 到n + 1阶的导数,则 ∀x ∈ U ( x0 , δ ) 有 f ( x) = f ( x0 ) + f ′( x0 )( x − x0 ) + + f ( n ) ( x0 ) ( x − x0 ) n + Rn ( x) n! Rn ( x)是余项,且Rn ( x) = o(( x − x0 ) n )( x → x0 ).
∫
xj +h 2
xj −h 2
[u (tn + τ , x) − u (tn , x)]dx
tn+1
∂u ∂u h = a ∫ [ (t , x j + 2 ) − (t , x j − h )]dt 2 tn ∂x ∂x 应用数值积分可得: [u (tn + τ , x j ) − u (tn , x j )]h ∂u ∂u h ≈ a[ (tn , x j + 2 ) − (tn , x j − h τ 2 )] ∂x ∂x
∂t = O(τ + h)
−(
∂u ( x j , tn )
我们也用“精度”一词说明截断误差. 一般,如果一个差分格式的截断误差T = O(τ q + h p ), 就说差分格式对时间t (τ )是q阶精度的, 对空间x(h)是p阶精度的. 特别,当p = q时,说差分格式是p阶精度的. 差分格式(1.13),(1.15),(1.17)都是对t (τ )一阶精度, 对x(h)二阶精度.而差分格式(1.11)是一阶精度格式.
3第二章-有限差分方法基础
2.1.1 基本方程和定解问题
u t
2u x2
( 0)
求解域: (x, t) [0,1][0, ]
(2.1.1)
初始条件: u(x, 0) f (x)
边界条件: u(0, t) a(t), u(1, t) b(t)
(2.1.2)
方程(2.1.1)和初边条件(2.1.2)构成了一个适定的定解问题。
根据数学分析中的知识,我们知道
2u (x,t) lim u(x x,t) 2u(x,t) u(x x,t)
x2
x0
x2
所以,二阶导数可以近似为
2u
x
2
n
k
un k 1
2ukn x2
ukn
un k 1
2ukn
un k 1
称为二阶中心差分。
容易证明:
un k 1
2ukn
un k 1
t
)
ut
(
x,
t
)
lim
t 0
u(
x,
t
t
)u 2t
(
x,
t
t
)
其中,lim 后面的项称为差商(difference quotient)。 t 0
当t足够小时,可以用差商来近似导数。
即:
u(x,t t) u(x,t)
ut (x,t)
t
u(x,t) u(x,t t)
ut (x,t)
t
u(x,t t) u(x,t t)
The Elements of Computational Fluid Dynamics
第二章 有限差分方法基础
§2.1 有限差分方法概述 §2.2 导数的数值逼近方法 §2.3 差分格式的性质 §2.4 发展方程的稳定性分析
