有限差分方法
有限差分法
有限差分法finite difference method用差分代替微分,是有限差分法的基本出发点。
是一种微分方程和积分微分方程数值解的方法。
把连续的定解区域用有限个离散点构成的网格来代替,这些离散点称作网格的节点;把连续定解区域上的连续变量的函数用在网格上定义的离散变量函数来近似;把原方程和定解条件中的微商用差商来近似,积分用积分和来近似,于是原微分方程和定解条件就近似地代之以代数方程组,即有限差分方程组,解此方程组就可以得到原问题在离散点上的近似解。
然后再利用插值方法便可以从离散解得到定解问题在整个区域上的近似解。
如何根据问题的特点将定解区域作网格剖分;如何把原微分方程离散化为差分方程组以及如何解此代数方程组。
此外为了保证计算过程的可行和计算结果的正确,还需从理论上分析差分方程组的性态,包括解的唯一性、存在性和差分格式的相容性、收敛性和稳定性。
对于一个微分方程建立的各种差分格式,为了有实用意义,一个基本要求是它们能够任意逼近微分方程,这就是相容性要求。
另外,一个差分格式是否有用,最终要看差分方程的精确解能否任意逼近微分方程的解,这就是收敛性的概念。
此外,还有一个重要的概念必须考虑,即差分格式的稳定性。
因为差分格式的计算过程是逐层推进的,在计算第n+1层的近似值时要用到第n层的近似值,直到与初始值有关。
前面各层若有舍入误差,必然影响到后面各层的值,如果误差的影响越来越大,以致差分格式的精确解的面貌完全被掩盖,这种格式是不稳定的,相反如果误差的传播是可以控制的,就认为格式是稳定的。
只有在这种情形,差分格式在实际计算中的近似解才可能任意逼近差分方程的精确解。
最常用的方法是数值微分法,比如用差商代替微商等。
另一方法叫积分插值法,因为在实际问题中得出的微分方程常常反映物理上的某种守恒原理,一般可以通过积分形式来表示。
此外还可以用待定系数法构造一些精度较高的差分格式。
龙格库塔龙格-库塔(Runge-Kutta)方法是一种在工程上应用广泛的高精度单步算法。
有限差分法
两端都要给定边界条件(双程坐标) 。
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 ⎝ ⎠ ⎝ ⎠
有限差分方法
有限差分方法
有限差分方法是数值分析中常用的一种数值计算方法,它主要用于解决微分方
程和积分方程的数值逼近问题。
有限差分方法的基本思想是将微分方程中的导数用差分代替,将微分方程转化为代数方程,然后利用数值计算方法求解代数方程,从而得到微分方程的数值解。
有限差分方法的核心是将求解区域离散化,将连续的求解区域划分为有限个小
区域,然后在每个小区域内利用差分逼近微分方程,得到代数方程。
通过对这些代数方程进行适当的组合和求解,最终得到微分方程的数值解。
有限差分方法有很多种形式,常见的有向前差分、向后差分、中心差分等。
这
些方法在具体应用中有各自的特点和适用范围。
在选择使用哪种有限差分方法时,需要根据具体的问题和求解区域的特点来进行合理的选择。
有限差分方法在实际应用中具有广泛的适用性,它可以用于求解各种类型的微
分方程和积分方程,包括常微分方程、偏微分方程以及积分方程等。
在工程、物理、经济等领域中,有限差分方法被广泛应用于模拟和求解各种实际问题。
在使用有限差分方法时,需要注意选取合适的离散化步长和求解区域的划分方式,这对于最终的数值解的精度和稳定性有着重要的影响。
同时,还需要注意数值计算方法的稳定性和收敛性,避免出现数值解的不稳定或者发散现象。
总之,有限差分方法作为一种常用的数值计算方法,在数值分析和科学计算中
具有重要的地位和作用。
掌握有限差分方法的基本原理和应用技巧,对于解决实际问题和开展科学研究具有重要的意义。
通过不断的学习和实践,可以更好地掌握有限差分方法的使用技巧,提高数值计算的准确性和效率。
有限差分法
有限差分法有限差分法(Finite Differential Method, FDM )什么是有限差分法 有限差分法是指用泰勒技术展开式将变量的导数写成变量,在不同时间或空间点值的差分形式的方法。
按时间步长和空间步长将时间和空间区域剖分成若干网格,用未知函数在网格结(节)点上的值所构成的差分近似代替所用偏微分方程中出现的各阶导数,从而把表示变量连续变化关系的偏微分方程离散为有限个代数方程,然后解此线性代数方程组,以求出溶质在各网格结(节)点上不同时刻的浓度。
有限差分法的基本步骤(1)剖分渗流区,确定离散点。
将所研究的水动力弥散区域按某种几何形状(如矩形、任意多边形等)剖分成网络系统。
(2)建立水动力弥散问题的差分方程组。
(3)求解差分方程组。
采用各种迭代法,如点逐次超松驰方法(SOR)、线逐次超松驰方法(LSOR)、迭代的交替方向隐式方法(IADI)及强隐式方法(SID)等。
(1) 现在分别对时间(从0时刻到到期日)和股票价格(S max )为可达到的足够高的股票价格)进行分割,即\triangle S=S_{max}/M,\triangle T/N,这样就分别有N+1个时间段和M+1个股票价格,建立如图(所示的坐标方格,将定解区域网格化,坐标方格上的点(i,j )对应时刻和股票价格,用变量f i ,j 表示(i,j )点的期权价格。
2.建立差分格式(1)内含的有限差分方法其步骤可分为以下几步:(1)求前向差分近似:(2) 后向差分格式:(3)将(2),(3)式平均可更加对称地求出的近似,即(4)(2)求用前向差分近似:(5)(3)求(6)(4)将(4),(5),(6)式代入(1)式可得到内含有限差分公式:+ b j f i,j−c j f i,j + 1 = f i + 1,j(7)aj f i,j− 1其中:i=0,1,…,N-1。
j=0,1…,M-1针对看跌期权和看涨期权可分别求出方程的边界条件:看跌期权:看涨期权:(5)利用边界条件和(7)式可以给出M-1个联立方程组:+ b j f N− 1,j + c j f N− 1,j + 1j=1,2…,M-1aj f N− 1,j− 1求解这M-1个联立方程组即可以求出期权价格,但对美式看跌期权时我们必须考虑其提前执行的情况。
计算电磁学-第4章-有限差分法
同样对微分方程的解y(x)在点(xn,yn)进行泰勒展开
yn1 yn hf ( xn , yn )
1 ' 2 1 '' 3 y ( xn 1 ) y ( xn ) f n h f n h f n h 2! 3!
比较上面两式,只要它们前面项的系数尽可能多的相等,就 保证了截断精度。
1、差分与差商
用差分代替微分,是有限差分法的基本出发点。 这一点由微分原理保证的,当自变量的差分趋于 零时,差分变成微分
f ( x) f ( x h) f ( x), h x
df f ( x) f ( x) lim dx x 0 x
'
f ( x) f ( x h) f ( x) f ( x) x h
龙格-库塔法
选取α、β、ω系数,使两式项的系数相等
1 fn , 2 f , 3 f , 4 f ,
' n '' n ''' n
如果该关系式能够一直维持到第m阶仍能成立, 但m+1阶不再成立,就称为m阶龙格-库塔法
cem@
cem@
cem@
cem@
cem@
cem@
cem@
CST粒子仿真
Pierce Gun
MAGIC
cem@
dy f ( x, y ) dx y x x 0 y0
y( x) y0 f (t , y(t )dt
x0
x
欧拉近似法在函数图上用阶梯的折线代替曲线
f(x) y(x)
yn+1 yn y(x n+1)1) f(n+
有限差分法基本原理
有限差分法的应用领域
流体力学
用于模拟流体在固定或变形网格 上的流动,如计算流体动力学 (CFD)中的数值模拟。
热传导
用于求解热传导方程,模拟热 量在物体中的传播和分布。
波动传播
用于求解波动方程,如地震波 、声波和电磁波的传播。
有限差分法基本原理
CONTENTS 目录
• 引言 • 有限差分法的基本原理 • 有限差分法的实现 • 有限差分法的优缺点 • 有限差分法的改进方向
CHAPTER 01
引言
有限差分法的定义
有限差分法是一种数值计算方法,通 过将连续的物理量离散化为有限个离 散点上的数值,并建立代数方程来近 似描述物理量随时间和空间的变化规 律。
缺点
精度问题
由于有限差分法采用的是离散化的方法, 因此其精度受到网格大小的影响,网格越
小精度越高,但同时也会增加计算量。
数值耗散误差
在模拟非线性问题时,有限差分法可能会 产生数值耗散误差,导致能量的损失或者
非物理振荡。
数值色散误差
在模拟波动性问题时,有限差分法可能会 产生数值色散误差,导致波的传播速度发 生变化。
常用的离散化方法包括均匀网格、非均匀网格、有限元法等,
应根据实际问题选择合适的离散化方法。
差分近似
Hale Waihona Puke 01差分近似公式根据微分方程的性质,构造差分 近似公式,将微分方程转化为差 分方程。
精度分析
02
03
稳定性分析
分析差分近似公式的精度,确定 其与微分方程的误差大小和分布。
分析差分近似公式的数值稳定性, 确保计算过程中误差不会累积放 大。
有限差分公式
有限差分公式
有限差分是微分方程解的近似值的一种表示方法,通常用数学表达式
f(x+b)-f(x+a)来表示。
如果将有限差分除以b-a,则可以得到差商。
在微分方程数值解的有限差分方法中,特别是处理边界值问题时,有限差分导数的逼近起着关键的作用。
有限差分通常考虑三种形式:正向差分、反向差分和中心差分。
正向差分是f(x+h)-f(x),反向差分是f(x)-f(x-h),中心差分是f(x+h)-f(x-h)。
当h取为1时,正向差分除以h近似于导数。
在数值方法中,有限差分法是一种常用的数值解法,它用差商代替微分方程中的偏导数,从而得到相应的差分方程。
通过解这个差分方程,可以得到微分方程解的近似值。
以上内容仅供参考,如需更多信息,建议查阅数学类书籍或咨询数学专业人士。
有限差分法初步
• 引言 • 有限差分法的原理 • 有限差分法的应用 • 有限差分法的实现 • 有限差分法的优缺点 • 结论与展望
01
引言
有限差分法的定义
有限差分法是一种数值计算方法,通 过将偏微分方程离散化为差分方程, 从而求解偏微分方程的近似解。
近似表示微 分,从而将微分方程转化为差分方程。
有限差分法。
COMSOL Multiphysics实现
COMSOL Multiphysics是一款基于有限元法的多物理场仿真软件,也支持有限差分法。 COMSOL提供了友好的用户界面和丰富的物理模型库,使得有限差分法的实现更加便
捷。
有限差分法的并行计算实现
MPI实现
MPI(Message Passing Interface)是一种并行计算的标准,支持多个处理 器之间的通信。通过MPI,可以实现有限差分法的并行计算,提高计算效率。
自适应网格技术
根据解的特性自适应地调整离散点间距,以 提高计算精度和效率。
并行化与优化
通过并行计算和算法优化等技术提高有限差 分法的计算效率。
与其他方法的结合
将有限差分法与其他数值方法或物理模型相 结合,以处理更复杂的问题。
06
结论与展望
结论
01
有限差分法是一种数值计算方 法,通过离散化连续问题为差 分方程,进而求解数值近似解 。
有限差分法原理简单,易于理解和实现,不需要复杂的数学工 具。
有限差分法可以方便地进行并行计算,提高计算效率。
有限差分法可以应用于各种不同类型的偏微分方程,具有广泛 的适用性。
有限差分法的缺点
精度问题
由于有限差分法是一种离散化方法,其精度受到离散点间距的限制, 可能导致计算结果不够精确。
有限差分及有限单元法的区别
1 有限差分方法(FDM)是计算机数值模拟最早采用的方法,至今仍被广泛运用。
该方法将求解域划分为差分网格,用有限个网格节点代替连续的求解域。
有限差分法以Taylor级数展开等方法,把控制方程中的导数用网格节点上的函数值的差商代替进行离散,从而建立以网格节点上的值为未知数的代数方程组。
该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念直观,表达简单,是发展较早且比较成熟的数值方法。
对于有限差分格式,从格式的精度来划分,有一阶格式、二阶格式和高阶格式。
从差分的空间形式来考虑,可分为中心格式和逆风格式。
考虑时间因子的影响,差分格式还可以分为显格式、隐格式、显隐交替格式等。
目前常见的差分格式,主要是上述几种形式的组合,不同的组合构成不同的差分格式。
差分方法主要适用于有结构网格,网格的步长一般根据实际地形的情况和柯朗稳定条件来决定。
构造差分的方法有多种形式,目前主要采用的是泰勒级数展开方法。
其基本的差分表达式主要有三种形式:一阶向前差分、一阶向后差分、一阶中心差分和二阶中心差分等,其中前两种格式为一阶计算精度,后两种格式为二阶计算精度。
通过对时间和空间这几种不同差分格式的组合,可以组合成不同的差分计算格式。
2 有限元方法的基础是变分原理和加权余量法,其基本求解思想是把计算域划分为有限个互不重叠的单元,在每个单元内,选择一些合适的节点作为求解函数的插值点,将微分方程中的变量改写成由各变量或其导数的节点值与所选用的插值函数组成的线性表达式,借助于变分原理或加权余量法,将微分方程离散求解。
采用不同的权函数和插值函数形式,便构成不同的有限元方法。
在有限元方法中,把计算域离散剖分为有限个互不重叠且相互连接的单元,在每个单元内选择基函数,用单元基函数的线形组合来逼近单元中的真解,整个计算域上总体的基函数可以看为由每个单元基函数组成的,则整个计算域内的解可以看作是由所有单元上的近似解构成。
根据所采用的权函数和插值函数的不同,有限元方法也分为多种计算格式。
有限差分方法
有限差分方法有限差分法是一种用于数值解决常微分方程(ODE)、偏微分方程(PDE)的数学技术。
它将原本的微分方程式转化为差分方程,最终可以用数值计算解决。
作为一门数值分析技术,有限差分方法主要用于计算解决微分方程的参数和状态。
有限差分法的步骤一般分为三个:(1)数学模型的构建,(2)对物理场的离散化,(3)对差分方程进行求解。
首先,我们要建立准确的物理模型,这一步涉及到选取合适的假设和参数,以及采用适当的边界条件和初始条件。
其次,我们要对原方程进行离散处理,使其转化为有限差分方程,从而为求解此类方程打下基础。
最后,我们要设计出一个有效的求解方法,通过用数值计算解决有限差分方程,获得所求解的结果。
有限差分法的优点主要体现在精度和速度上。
首先,它的精度极高,它可以求解出精确的解,而且计算速度也很快,无需复杂的数学推理,就可以较快速度解决问题,大大降低了计算的难度。
其次,有限差分法可以拓展到更多的系统,不限于只能解决二维静止场,而能够解决一般感兴趣的场景。
此外,有限差分技术也可以解决有时限性的问题,例如分析物体的动态特性。
此外,有限差分方法也存在一些缺点,例如边界条件的处理和计算复杂性的增加。
由于差分的求解是基于某些边界条件的,一旦边界条件发生变化,原有的求解方案就会失效。
此外,在进行离散化处理时,随着问题规模的增大,计算复杂性也会随之增加,使得求解较大规模的问题极其困难。
有限差分法已经成为当今解决复杂问题数值计算的重要技术手段。
它在准确性、精度和计算速度方面均具有优势,深受工业界、医学界及数学领域的青睐。
有限差分法的实际应用也正在层出不穷,今后有望在更多的领域得到广泛的应用。
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 发展方程的稳定性分析
有限差分法推导
有限差分法推导摘要:一、有限差分法简介1.有限差分法的概念2.有限差分法在数值计算中的应用二、有限差分法的推导1.差分法的定义2.有限差分法的推导过程3.有限差分法的性质三、有限差分法的应用1.微分方程的数值解法2.有限差分法在数值积分中的应用四、有限差分法的优缺点1.优点2.缺点正文:一、有限差分法简介有限差分法是一种数值计算方法,通过将连续函数离散化,用差分代替微分,从而实现对微分方程或积分方程的求解。
有限差分法广泛应用于科学、工程和金融领域,例如,在天气预报、海洋学、生物学、经济学等方面都有重要作用。
二、有限差分法的推导1.差分法的定义差分法是一种将函数在某一点上的值与该点附近点的值相减的方法,用于近似计算函数在该点处的导数或变化率。
给定一个函数f(x),在x=a 处求导,可以得到差分算子Df(a,h),其中h 为差分步长。
2.有限差分法的推导过程有限差分法是将差分法应用于离散点集,通过有限个差分算子来近似表示函数在某一点的值。
设函数f(x) 在区间[x0, x1] 上可导,离散点集为{x0,x0+h, x0+2h, ..., x1},有限差分法的表达式为:Df(x0+k h) ≈ (h/(k+1)) * [f(x0+k h) - f(x0+(k-1) h)] (k=1,2,3,...,n-1)3.有限差分法的性质有限差分法具有以下性质:(1) 线性性质:Df(x) + Dg(x) = D(f(x) + g(x))(2) 移位性质:Df(x+h) = Df(x) + h * df(x)/dx(3) 微分性质:Df(x) * (x - x0) = f"(x) * (x - x0) + O(h^2)三、有限差分法的应用1.微分方程的数值解法有限差分法可以用于求解微分方程,例如,对于一阶线性微分方程:df(x)/dx + p(x) * f(x) = q(x)可以用有限差分法将其离散化为一个线性代数方程组,从而求解离散解。
有限差分法
有 限 差 分 法流体运动的控制方程多为偏微分方程,在复杂的情况下不存在解析解。
但是对于一些简单的情况存在解析解,偏微分方程的解析解可用精确的数学表达式表示,该表达式给出了因变量在整个定义域中的连续变化状况。
有限差分法(Finite Difference Method ,FDM )是数值计算中比较经典的方法,由于其计算格式直观且计算简便,因此被广泛地应用在计算流体力学中。
有限差分法首先将求解区域划分为差分网格,变量信息存储在网格节点上,然后将偏微分方程的导数用差商代替,代入微分方程的边界条件,推导出关于网格节点变量的代数方程组,通过求解代数方程组,获得偏微分方程的近似解。
偏微分方程被包含离散点未知量的代数方程所替代,这个代数方程能求出离散节点处的变量,这种离散方法叫做有限差分法。
2.1有 限 差 分 逼 近2.1.1 有限差分网格 由于有限差分法求解的是网格节点上的未知量值,因此首先介绍有限差分网格。
图2.1 – 1是x-y 平面上的矩形差分网格示意图。
在x 轴方向的网格间距为△x ,在y 轴方向的网格间距为△y ,网格的交点称为节点,计算变量定义在网格节点上。
称△x 和△y 为空间步长,△x 一般不等于△y ,且△x 和△y 也可以不为常数。
取各方向等距离的网格,可以大大简化数学模型推导过程,并且经常会取得更加精确的数值解。
本章作为计算流体力学入门知识,假设沿坐标轴的各个方向网格间距分别相等,但是并不要求各方向的网格间距一致。
例如假设△x 和△y 是定值,但是不要求△x 等于△y 。
在图2.1 - 1中,网格节点在x 方向用i 表示,在y 方向用j 表示。
因此,假如(i ,j )是点P 在图2.1 – 1中的坐标,那么,点P 右边的第一个点的就可以用(i+1,j )表示;在P 左边的第一个点的就可以用(i —1,j )表示;点P 上边的第一个点的就可以用(i ,j+1)表示;点P 下边的第一个点的就可以用(i ,j —1)表示。
有限差分-有限元-有限体积等的区别介绍
有限差分,有限元,有限体积等离散方法的区别介绍1 有限差分方法(FDM)是计算机数值模拟最早采用的方法,至今仍被广泛运用。
该方法将求解域划分为差分网格,用有限个网格节点代替连续的求解域。
有限差分法以Taylor级数展开等方法,把控制方程中的导数用网格节点上的函数值的差商代替进行离散,从而建立以网格节点上的值为未知数的代数方程组。
该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念直观,表达简单,是发展较早且比较成熟的数值方法。
对于有限差分格式,从格式的精度来划分,有一阶格式、二阶格式和高阶格式。
从差分的空间形式来考虑,可分为中心格式和逆风格式。
考虑时间因子的影响,差分格式还可以分为显格式、隐格式、显隐交替格式等。
目前常见的差分格式,主要是上述几种形式的组合,不同的组合构成不同的差分格式。
差分方法主要适用于有结构网格,网格的步长一般根据实际地形的情况和柯朗稳定条件来决定。
构造差分的方法有多种形式,目前主要采用的是泰勒级数展开方法。
其基本的差分表达式主要有三种形式:一阶向前差分、一阶向后差分、一阶中心差分和二阶中心差分等,其中前两种格式为一阶计算精度,后两种格式为二阶计算精度。
通过对时间和空间这几种不同差分格式的组合,可以组合成不同的差分计算格式。
2 有限元方法的基础是变分原理和加权余量法,其基本求解思想是把计算域划分为有限个互不重叠的单元,在每个单元内,选择一些合适的节点作为求解函数的插值点,将微分方程中的变量改写成由各变量或其导数的节点值与所选用的插值函数组成的线性表达式,借助于变分原理或加权余量法,将微分方程离散求解。
采用不同的权函数和插值函数形式,便构成不同的有限元方法。
在有限元方法中,把计算域离散剖分为有限个互不重叠且相互连接的单元,在每个单元内选择基函数,用单元基函数的线形组合来逼近单元中的真解,整个计算域上总体的基函数可以看为由每个单元基函数组成的,则整个计算域内的解可以看作是由所有单元上的近似解构成。
分数阶微分方程的有限差分方法
分数阶微分方程的有限差分方法
有限差分方法是一种用于求解非线性常微分方程组的数值解法,它是基于近似和穷举的思想,它把原来的复杂的微分方程组转化为一组离散的常系数线性方程组,用点阵替代连续的空间来表示时间曲线,通过计算点阵上的点及其邻域的变量值来求解源方程。
有限差分方法的基本思想是,假设在某一点的函数值可以由其邻域的点的函数值决定,这样就可以把原来的微分方程组转换成一组常系数线性方程组,把求解过程转变为解决线性方程组的过程,从而可以用数值方法求解。
有限差分方法的特点在于,它把计算复杂的微分方程组,转换为相对简单的线性方程组,而且,它的计算量依赖于网格结点的数量,从而使得计算量保持在一个可控的范围内。
有限差分方法的应用范围也非常广泛,它可以用来解决一些复杂的微分方程,如拉普拉斯方程,抛物方程,泊松方程,非线性波方程等等。
因此,有限差分方法是一种经过优化的数值解法,它能够高效地求解复杂的微分方程,也得到了广泛的应用。
有限差分法
有限差分法一、有限差分法的定义有限差分法(Finite Differential Method )是基于差分原理的一种数值计算法。
其基本思想:将场域离散为许多小网格,应用差分原理,将求解连续函数ϕ的泊松方程的问题转换为求解网格节点上ϕ的差分方程组的问题。
二、有限差分法的应用例3.7.1 有一个无限长直的金属槽,截面为正方形,两侧为正方形,两侧面及底板接地,上盖板与侧面绝缘,其上的电位为ϕ=100V, 试用有限差分法计算槽内电位。
(1)用Matlab 中的有限差分法计算槽内电位;(2)对比解析法和数值法的异同点;(3)选取一点,绘制收敛曲线;(4)总的三维电位图;1、根据有限差分公式计算出电位最终近似值为1,12,13,11,22,23,21,32,33,3=7.144=9.823=7.144=18.751=25.002=18.751=42.857=52.680=42.857ϕϕϕϕϕϕϕϕϕ,,,,,,用Matlab有限差分法计算出来结果:(见附录程序一)2、解析法和数值法的异同点解析法数值法定义在分析具体问题的基础上,抽取出一个数学模型,这个数学模型能用若干个解析表达式表示出来,解决了这些表达式,问题也就得以解决。
数值法是用高性能的计算机以数值的、程序的形式解决问题,主要是指有限元法和差分法相同点都是在具体问题的基础上取一个用解析表达式表示的数学模型来解决问题;数值法是在解析法的基础上在不同尺度上进行有限元离散,离散单元尺度不同,进行有限元计算时要满足的连续性条件不同,预测结果的精确度就不同不同点解析法可以计算出精确的数值结果;可以作为近似解和数值解的检验标准;解析法过程可以观察到问题的内在和各个参数对数值结果起的作用。
但是分析过程困难又复杂使其仅能解决很少量的问题。
数值法求解过程简单,普遍性强,用户拥有的弹性大;用户不必具备高度专业化的理论知识就可以用提供的程序解决问题。
但求解结果没有解析法精确。
04有限差分法.ppt
n Rj
O t x
2
无条件稳定
2.一维混合问题
u 2u 2 0 t x u x ,0 F x u a, t t u b, t t
0 x b, t 0, 0
对于[a,b]区间的内点,可以构造以上各种格式。 如四点显式
例:驱动腔内的流体流动。
3.网格划分
x h y l xi ih
-----称为步长。
u x, y u i , j
xi , y j i, j
y j jl
4.差分格式 将u在(i,j)附近展成Taylor级数
ui 1, j ui , j ui 1, j ui , j 1 2u 1 3u u h 2 h 2 3 h 3 ... 2 x 3! x x i , j i, j i, j 1 2u 1 3u u h 2 h 2 3 h 3 ... 2 x 3! x x i , j i, j i, j
-----中心差分式
O h 表示具有二阶精度。
2
两Taylor展式相加
2u 1 ui 1, j 2ui , j ui 1, j O h 2 x 2 h2 i, j
有限差分方法
n
Δt
(2-2)
空间导数用一阶中心差商近似代替,即
ζ in+1 − ζ in−1 ⎛ ∂ζ ⎞ ⎜ ⎟ ≈ 2Δx ⎝ ∂x ⎠ i
则在 ( xi , t n ) 点的对流方程就可近似地写作
(2-3)
ζ in +1 − ζ in
Δt
+α
ζ in+1 − ζ in−1
2Δx
(1-11)
当然,在某些情况下也可取向前或向后的二阶差商。
9
第一节 差分原理及逼近误差/差分原理 以上是一元函数的差分与差商。多元函数f(x,y,…)的差分与 差商也可以类推。 如一阶向前差商为
Δf f ( x + Δx , y , Λ ) − f ( x , y , Λ ) = , Δx Δx
Δf f ( x, y + Δy , Λ ) − f ( x, y , Λ ) = , Δy Δy ΛΛ
(1-6)
6
第一节 差分原理及逼近误差/差分原理 函数的差分与自变量的差分之比,即为函数对自变量的 差商。 一阶向前差商为 一阶向后差商为
f ( x + Δx) − f ( x) Δy = Δx Δx
(1-7)
f ( x ) − f ( x − Δx ) Δy = Δx Δx
(1-8)
7
第一节 差分原理及逼近误差/差分原理 一阶中心差商为
15
第一节 差分原理及逼近误差/非均匀步长
图1-2 均匀和非均匀网格实例1
16
第一节 差分原理及逼近误差/非均匀步长
图1-3 均匀和非均匀网格实例2
17
第二节 差分方程 差分相应于微分,差商相应于导数。差分和差商是用有限形 式表示的,而微分和导数则是以极限形式表示的。如果将微 分方程中的导数用相应的差商近似代替,就可得到有限形式 的差分方程。现以对流方程为例,列出对应的差分方程。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
xn+1 dx f
xn
φ,x
≈ φn + hf
φn , xn
。
(3.1.2.2-2)
该式中的 f 也可以用 xn+1 点处的值,得到后退的Euler公式,
∫ ( ) ( ) φn+1 = φn +
xn+1 dx f
xn
φ,x
≈ φn + hf
φn+1, xn+1
。
(3.1.2.2-3)
(3.1.2.2-2)与(3.1.2.2-3)式有重要的差别:因为(3.1.2.2-2)式中只有左边有 φn+1 ,称它为显式的,即向前差分Euler法。而(3.1.2.2-3)式左右两边均有φn+1 , 称它是隐式的,即向后差分Euler法,通常必须用迭代的方法求解关于φn+1 的非线 性方程。隐式法尽管效率很低,但它比显式法稳定。
量和空间变量是等同看待的,它们的不同是物理含义不同,但用数学的数值方法
处理它们时,它们的地位是等价的,因此,初始值问题不一定就必定是含时的,
而边界值就是指空间问题。我们之所以考虑初始值问题和边界值问题的差异,主
要是它们对解所加的限制条件的区别。某些偏微分方程是混合型的,即对某个变
量是初始值型的,而对另外的变量则是边界值型的。
3-3
第三章 有限差分方法
§3.1 线性微分方程
用两点间的差值近似了导数,忽略了 h2 以上的高阶项。通常当 h → 0 时,这个截 断误差是很小的,但是φ '的变化值或φ '' 值较大时可能导致计算结果偏离真值, 这时我们说结果是不稳定的。控制计算误差使其不能恶性增长是计算方法的稳定 性理论所考虑的中心问题。
φ
在
xn+1
处的第一个预报值
φ* n +1
,
3-4
第三章 有限差分方法
§3.1 线性微分方程
φ* n+1
=
φn
+
hf
(φn ,
xn
)
。
(3.1.2.5-1)
第二步是用隐式Euler公式给出
φ* n +1
进行修正,
( ) φn+1 = φn + hf
φ* n+1
,
xn+1
。
(3.1.2.5-2)
如果反复多次使用第二步,则该方法就变成了迭代计算,它并不改变有限差 分法的阶数,称为迭代预报-校正法:
(3.1.2.4-2)
3.1.2.5 预报-校正法
对于常微分方程还有其它若干高精度的方法。预报-校正法也是有限差分
法,其最简单形式包含有为“预报”的向前Euler法和随后对预报结果进行修正
补值的“校正”方法。它与Verlet算法结合起来就是分子动力学中积分求解运动
方程的最常用算法。
第一步是预报步,由显式Euler公式给出
(3.1.2.1-4)
将微分的差分表示代换到微分方程中即可得到差分方程。
对于偏微分方程,我们需要在构造网格面(二维、2个变量)或格点阵(三
维),其构造方式与变量的坐标系或边界形状有关。如对于圆形边界,自然用极
坐标系下的等角度和等径距比较好,对于方形边界,则采用等边长正方形分割,
若两个变量分别是时间和坐标的话,则等时间间隔和等空间间距分割相当于二维
第三章 有限差分方法
§3.1 线性微分方程
第三章 有限差分方法
求解常微分方程和偏微分方程是物理学中最常见的问题,而用数值计算方法 求方程的解已经是一个发展得相当成熟的领域,这样的方法主要有有限差分和有 限元方法。除了物理学的问题以外,数值方法在工程和气象等众多研究领域中也 得到广泛应用,由于数值求解微分方程的课题众多,本章中只能涉及针对物理学 中一些重要内容所采用的主要普适的方法。对一些标准的微分方程形式,人们已 经开发了相应的程序库和软件包。
φ* n+1
=
φn
+
hf
(φn ,
xn
)
( ) repeat ⎧⎪⎨φn+1 = φn + hf
φ* n+1
,
xn+1
。
⎪⎩φn*+1 = φn+1
(3.1.2.5-3)
3.1.2.6 Crank-Nicholson 法
Crank-Nicholson方法是一种二阶有限差分法,它是对 xn 和 xn+1 的 f 函数求平 均,即将差分中一点的显式表示用显式和隐式的线性组合表示,
3.1.2.4 蛙跳法
Euler法中,截断误差是 O (h) 。采用更为对称的中心差分(即蛙跳)法可使
( ) 截断误差降为 O h2 。由(3.1.2.1-3)式,
( ) φ
'(
xn
)
=
φn+1 − φn−1 2h
+
O
h2
,
(3.1.2.4-1)
可得
φn+1 = φn−1 + 2hf (φn , xn ) 。
平面上的矩形分割。因此,对于函数φ ( x, y) ,(3.1.2.1-1)-(3.1.2.1-4)式中的
3-2
第三章 有限差分方法
§3.1 线性微分方程
导数应该换成对 x 和对 y 的偏微分,如
( ) ∇2φ x, y = ∂2φ + ∂2φ ≈ φm+1,n + φm−1,n − 2φm,n + φm,n+1 + φm,n−1 − 2φm,n
hφ
'(
xn
)
+
h2 2!
φ
''(
xn
)
−
h3 3!
φ
(3)
(
xn
)
+
,
(3.1.2.1-2)
两式相减和相加后分别得,
( ) φ ' xn
φn − φn−1 φn+1 − φn φn+1 − φn−1 ;
h
h
2h
(3.1.2.1-3)
( ) φ '' xn
φn+1 + φn−1 − 2φn 。 h2
(3.1.2.2-5)
求解该方程时需要知道初始值φ ( x, 0) ,即对每个 m 值都知道φm,0 ,因此可以由方
程陆续地求出φm,1,φm,2, 。值得注意的是,当 2Dτ > h2 时,该算法是不稳定的。 在数字计算时,误差主要来源于两个方面。一是舍入误差,初始值问题中的
误差会逐渐积累,特别是对于小 h 或大 N 值时,每步中的舍入误差累计后不再是 可以忽略不计的。更重要的误差是截断误差,这是因为我们在(3.1.2.1-3)式中
3.1.2.3 多步法
为了提高计算的准确性,应该在近似的公式中包含 h2 项。在(3.1.2.2-1)式
中,φn+1 只依赖于φn ,这是单步法。将 f 作插值
f
≈ ( x − xn−1 )
h
fn
−
(
x
− xn h
)
fn−1 ,
(3.1.2.3-1)
代入到积分表达式后得Adams两步法公式,
φn +1
∂x2 ∂y2
h2
h2
。 (3.1.2.1-5)
( ) = φm+1,n + φm−1,n + φm,n+1 + φm,n−1 − 4φm,n h2
3.1.2.2 Euler 法
求解初始值问题的最简单的方法是Euler折线法,即简单地用(3.1.2.1-3)- (3.1.2.1-4)式代换进微分方程即可,虽然它的精度有限,因而很少使用,但这
其中 a0, , ak−1 是系数, F 是某一已知的函数。当它用前面 k 个格点的值表示出 来时是线性多步法
k
( ) ∑ F φn , xn ;φn+1, xn+1; ;φn+k , xn+k = βi fn+i 。 i=0
(3.1.2.3-4)
如果 βk ≠ 0 ,差分方程式(3.1.2.2-2)式右边也包含有 φn+k 项,这时方程式是隐 式的。
§3.1 线性微分方程
3.1.1 微分方程的分类
3.1.1.1 偏微分方程的类型
微分方程是表达物理量、它对其变量的导数以及变量之间的一个关系。只有
一个变量的情形是常微分方程,多个变量下是偏微分方程。如有两个独立变量时,
二阶偏微分方程的一般形式是,
a
∂2φ ∂x2
+b
∂ 2φ ∂x∂y
+c
∂2φ ∂y 2
个方法反映了初始值问题的基本思想。例如,对于常微分方程φ ' = f (φ, x) ,Euler
折线公式是,
φn+1 ≈ φn + hf (φn , xn ) = φn + hfn ,
(3.1.2.2-1)
它也可以被看成是简单地将微分方程两端进行积分后得到的,
∫ ( ) ( ) φn+1 = φn +
+
d
∂φ ∂x
+ e ∂φ ∂y
+
fφ
+
g
=
0,
(3.1.1.1-1)
其中的系数 a, b, c, d, e, f , g 可以是独立变量 x 和 y 的函数。如果 b2 < 4ac ,称为椭
圆形偏微分方程, b2 = 4ac 是抛物线型, b2 > 4ac 双曲线型。例如,波动方程
∂2φ ∂x2