有限差分法
有限差分法
有限差分法finite difference method用差分代替微分,是有限差分法的基本出发点。
是一种微分方程和积分微分方程数值解的方法。
把连续的定解区域用有限个离散点构成的网格来代替,这些离散点称作网格的节点;把连续定解区域上的连续变量的函数用在网格上定义的离散变量函数来近似;把原方程和定解条件中的微商用差商来近似,积分用积分和来近似,于是原微分方程和定解条件就近似地代之以代数方程组,即有限差分方程组,解此方程组就可以得到原问题在离散点上的近似解。
然后再利用插值方法便可以从离散解得到定解问题在整个区域上的近似解。
如何根据问题的特点将定解区域作网格剖分;如何把原微分方程离散化为差分方程组以及如何解此代数方程组。
此外为了保证计算过程的可行和计算结果的正确,还需从理论上分析差分方程组的性态,包括解的唯一性、存在性和差分格式的相容性、收敛性和稳定性。
对于一个微分方程建立的各种差分格式,为了有实用意义,一个基本要求是它们能够任意逼近微分方程,这就是相容性要求。
另外,一个差分格式是否有用,最终要看差分方程的精确解能否任意逼近微分方程的解,这就是收敛性的概念。
此外,还有一个重要的概念必须考虑,即差分格式的稳定性。
因为差分格式的计算过程是逐层推进的,在计算第n+1层的近似值时要用到第n层的近似值,直到与初始值有关。
前面各层若有舍入误差,必然影响到后面各层的值,如果误差的影响越来越大,以致差分格式的精确解的面貌完全被掩盖,这种格式是不稳定的,相反如果误差的传播是可以控制的,就认为格式是稳定的。
只有在这种情形,差分格式在实际计算中的近似解才可能任意逼近差分方程的精确解。
最常用的方法是数值微分法,比如用差商代替微商等。
另一方法叫积分插值法,因为在实际问题中得出的微分方程常常反映物理上的某种守恒原理,一般可以通过积分形式来表示。
此外还可以用待定系数法构造一些精度较高的差分格式。
龙格库塔龙格-库塔(Runge-Kutta)方法是一种在工程上应用广泛的高精度单步算法。
有限差分法的原理与计算步骤
有限差分法的原理与计算步骤有限差分法(Finite Difference Method)是一种常用的数值计算方法,用于求解偏微分方程的数值解。
其基本原理是将连续的偏微分方程转化为差分方程,通过逼近导数,使用离散的点代替连续的点,从而将问题转化为代数问题。
下面将详细介绍有限差分法的原理和计算步骤:一、基本原理:有限差分法基于Taylor级数展开,通过利用函数在其中一点附近的导数信息来逼近函数在该点处的值。
该方法将连续的偏微分方程转化为差分方程,使用离散的点代替连续的点,从而将问题转化为代数问题。
在有限差分法中,常用的差分逼近方式有前向差分、后向差分和中心差分。
二、计算步骤:1.网格划分:将求解区域划分为有限个离散点,并定义网格上的节点和网格尺寸。
通常使用等距离网格,即每个网格点之间的间距相等。
2.离散化:将偏微分方程中的各个导数项进行逼近,利用差分近似来替代和求解。
一般采用中心差分逼近方式,即通过函数值在两侧点的差来逼近导数。
3.代数方程系统:利用离散化的差分方程,将偏微分方程转化为代数方程系统。
根据问题的边界条件和初值条件,构建代数方程系统的系数矩阵和常数向量。
4. 求解代数方程:利用求解线性方程组的方法求解代数方程系统,常用的方法有直接法(如高斯消元法、LU分解法)和迭代法(如Jacobi迭代法、Gauss-Seidel迭代法)。
求解得到各个离散点的解。
5.后处理:根据求解结果进行后处理,包括结果的插值和可视化。
将离散点的解通过插值方法进行平滑处理,并进行可视化展示,以得到连续的函数解。
三、优缺点:1.直观:有限差分法基于网格划分,易于理解和实现。
2.精度可控:可通过调整网格大小和差分逼近方式来控制计算的精度。
3.广泛适用性:可用于求解各种偏微分方程,适用于不同的边界条件和初值条件。
然而,有限差分法也存在一些缺点:1.精度依赖网格:计算结果的精度受到网格划分的影响,因此需要谨慎选择网格大小。
2.限制条件:有限差分法适用于边界对应点处导数有定义的问题,不适用于奇异点和非线性问题。
有限差分法
两端都要给定边界条件(双程坐标) 。
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个联立方程组即可以求出期权价格,但对美式看跌期权时我们必须考虑其提前执行的情况。
微分方程数值求解——有限差分法
1. 引言有限差分法(Finite Difference Method,FDM)是一种求解微分方程数值解的近似方法,其主要原理是对微分方程中的微分项进行直接差分近似,从而将微分方程转化为代数方程组求解。
有限差分法的原理简单,粗暴有效,最早由远古数学大神欧拉(L. Euler 1707-1783)提出,他在1768年给出了一维问题的差分格式。
1908年,龙格(C. Runge 1856-1927)将差分法扩展到了二维问题【对,就是龙格-库塔法中的那个龙格】。
但是在那个年代,将微分方程的求解转化为大量代数方程组的求解无疑是将一个难题转化为另一个难题,因此并未得到大量的应用。
随着计算机技术的发展,快速准确地求解庞大的代数方程组成为可能,因此逐渐得到大量的应用。
发展至今,有限差分法已成为一个重要的数值求解方法,在工程领域有着广泛的应用背景。
本文将从有限差分法的原理、基本差分公式、误差估计等方面进行概述,给出其基本的应用方法,对于一些深入的问题不做讨论。
2. 有限差分方法概述首先,有限差分法是一种求解微分方程的数值方法,其面对的对象是微分方程,包括常微分方程和偏微分方程。
此外,有限差分法需要对微分进行近似,这里的近似采取的是离散近似,使用某一点周围点的函数值近似表示该点的微分。
下面将对该方法进行概述。
2.1. 有限差分法的基本原理这里我们使用一个简单的例子来简述有限差分法的基本原理,考虑如下常微分方程\begin{cases} u'(x)+c(x)u(x)=f(x), \quad x \in [a, b]; \\u(x=a) = d \end{cases} \tag{1}微分方程与代数方程最大的不同就是其包含微分项,这也是求解微分方程最难处理的地方。
有限差分法的基本原理即使用近似方法处理微分方程中的微分项。
为了得到微分的近似,我们最容易想到的即导数定义u'(x)=\lim_{\Delta x\rightarrow 0} \frac{u(x+\Delta x)-u(x)}{\Delta x}\approx \frac{u(x+\Delta x)-u(x)}{\Delta x} \tag{2}上式后面的近似表示使用割线斜率近似替代切线斜率,\Delta x 即为步长,如图 1(a)所示。
有限差分法基本原理
有限差分法的应用领域
流体力学
用于模拟流体在固定或变形网格 上的流动,如计算流体动力学 (CFD)中的数值模拟。
热传导
用于求解热传导方程,模拟热 量在物体中的传播和分布。
波动传播
用于求解波动方程,如地震波 、声波和电磁波的传播。
有限差分法基本原理
CONTENTS 目录
• 引言 • 有限差分法的基本原理 • 有限差分法的实现 • 有限差分法的优缺点 • 有限差分法的改进方向
CHAPTER 01
引言
有限差分法的定义
有限差分法是一种数值计算方法,通 过将连续的物理量离散化为有限个离 散点上的数值,并建立代数方程来近 似描述物理量随时间和空间的变化规 律。
缺点
精度问题
由于有限差分法采用的是离散化的方法, 因此其精度受到网格大小的影响,网格越
小精度越高,但同时也会增加计算量。
数值耗散误差
在模拟非线性问题时,有限差分法可能会 产生数值耗散误差,导致能量的损失或者
非物理振荡。
数值色散误差
在模拟波动性问题时,有限差分法可能会 产生数值色散误差,导致波的传播速度发 生变化。
常用的离散化方法包括均匀网格、非均匀网格、有限元法等,
应根据实际问题选择合适的离散化方法。
差分近似
Hale Waihona Puke 01差分近似公式根据微分方程的性质,构造差分 近似公式,将微分方程转化为差 分方程。
精度分析
02
03
稳定性分析
分析差分近似公式的精度,确定 其与微分方程的误差大小和分布。
分析差分近似公式的数值稳定性, 确保计算过程中误差不会累积放 大。
有限差分法
第四章有限差分方法4.1引言有限差分法:数值求解常微分方程或偏微分方程的方法。
物理学和其他学科领域的许多问题在被分析研究之后, 往往可以归结为常微分方程或偏微分方程的求解问题。
一般说来,处理一个特定的物理问题,除了需要知道它满足的数学方程外,还应当同时知道这个问题的定解条件,然后才能设计出行之有效的计算方法来求解。
有限差分法以变量离散取值后对应的函数值来近似微分方程中独立变量的连续取值。
在有限差分方法中,我们放弃了微分方程中独立变量可以取连续值的特征,而关注独立变量离散取值后对应的函数值。
但是从原则上说,这种方法仍然可以达到任意满意的计算精度。
因为方程的连续数值解可以通过减小独立变量离散取值的间格,或者通过离散点上的函数值插值计算来近似得到。
这种方法是随着计算机的诞生和应用而发展起来的。
其计算格式和程序的设计都比较直观和简单,因而,它的实际应用已经构成了计算数学和计算物理的重要组成部分。
有限差分法的具体操作分为两个部分:(1)用差分代替微分方程中的微分,将连续变化的变量离散化,从而得到差分方程组的数学形式; (2)求解差分方程组。
在第一步中,我们通过所谓的网络分割法,将函数定义域分成大量相邻而不重合的子区域。
通常采用的是规则的分割方式。
这样可以便于计算机自动实现和减少计算的复杂性。
网络线划分的交点称为节点。
若与某个节点P 相邻的节点都是定义在场域内的节点,则P 点称为正则节点;反之,若节点P 有处在定义域外的相邻节点,则P 点称为非正则节点。
在第二步中,数值求解的关键就是要应用适当的计算方法,求得特定问题在所有这些节点上的离散近似值。
有限差分法的差分格式:一个函数在x 点上的一阶和二阶微商,可以近似地用它所临近的两点上的函数值的差分来表示。
如对一个单变量函数f(x),x 为定义在区间[a,b]的连续变量。
以步长h=Δx 将[a,b]区间离散化,我们得到一系列节点x = a , x = x + h , x = x + h = a + 212132Δx , ..., x = x + h = b , 然后求出 f(x)在这些点上的近似值。
有限差分法初步
• 引言 • 有限差分法的原理 • 有限差分法的应用 • 有限差分法的实现 • 有限差分法的优缺点 • 结论与展望
01
引言
有限差分法的定义
有限差分法是一种数值计算方法,通 过将偏微分方程离散化为差分方程, 从而求解偏微分方程的近似解。
近似表示微 分,从而将微分方程转化为差分方程。
有限差分法。
COMSOL Multiphysics实现
COMSOL Multiphysics是一款基于有限元法的多物理场仿真软件,也支持有限差分法。 COMSOL提供了友好的用户界面和丰富的物理模型库,使得有限差分法的实现更加便
捷。
有限差分法的并行计算实现
MPI实现
MPI(Message Passing Interface)是一种并行计算的标准,支持多个处理 器之间的通信。通过MPI,可以实现有限差分法的并行计算,提高计算效率。
自适应网格技术
根据解的特性自适应地调整离散点间距,以 提高计算精度和效率。
并行化与优化
通过并行计算和算法优化等技术提高有限差 分法的计算效率。
与其他方法的结合
将有限差分法与其他数值方法或物理模型相 结合,以处理更复杂的问题。
06
结论与展望
结论
01
有限差分法是一种数值计算方 法,通过离散化连续问题为差 分方程,进而求解数值近似解 。
有限差分法原理简单,易于理解和实现,不需要复杂的数学工 具。
有限差分法可以方便地进行并行计算,提高计算效率。
有限差分法可以应用于各种不同类型的偏微分方程,具有广泛 的适用性。
有限差分法的缺点
精度问题
由于有限差分法是一种离散化方法,其精度受到离散点间距的限制, 可能导致计算结果不够精确。
有限差分方法
有限差分方法有限差分法是一种用于数值解决常微分方程(ODE)、偏微分方程(PDE)的数学技术。
它将原本的微分方程式转化为差分方程,最终可以用数值计算解决。
作为一门数值分析技术,有限差分方法主要用于计算解决微分方程的参数和状态。
有限差分法的步骤一般分为三个:(1)数学模型的构建,(2)对物理场的离散化,(3)对差分方程进行求解。
首先,我们要建立准确的物理模型,这一步涉及到选取合适的假设和参数,以及采用适当的边界条件和初始条件。
其次,我们要对原方程进行离散处理,使其转化为有限差分方程,从而为求解此类方程打下基础。
最后,我们要设计出一个有效的求解方法,通过用数值计算解决有限差分方程,获得所求解的结果。
有限差分法的优点主要体现在精度和速度上。
首先,它的精度极高,它可以求解出精确的解,而且计算速度也很快,无需复杂的数学推理,就可以较快速度解决问题,大大降低了计算的难度。
其次,有限差分法可以拓展到更多的系统,不限于只能解决二维静止场,而能够解决一般感兴趣的场景。
此外,有限差分技术也可以解决有时限性的问题,例如分析物体的动态特性。
此外,有限差分方法也存在一些缺点,例如边界条件的处理和计算复杂性的增加。
由于差分的求解是基于某些边界条件的,一旦边界条件发生变化,原有的求解方案就会失效。
此外,在进行离散化处理时,随着问题规模的增大,计算复杂性也会随之增加,使得求解较大规模的问题极其困难。
有限差分法已经成为当今解决复杂问题数值计算的重要技术手段。
它在准确性、精度和计算速度方面均具有优势,深受工业界、医学界及数学领域的青睐。
有限差分法的实际应用也正在层出不穷,今后有望在更多的领域得到广泛的应用。
有限差分法推导
有限差分法推导摘要:一、有限差分法简介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)是一种数值方法,用于求解偏微分方程(PDEs)的近似解。
这种方法通过将连续的微分方程离散化,将其转化为一系列代数方程,从而在计算机上进行求解。
有限差分法特别适用于求解具有固定边界条件和初始条件的偏微分方程。
以下是有限差分法求解偏微分方程的基本步骤:1. 网格划分:首先,将问题的连续域划分为离散的网格点。
对于二维问题,这通常涉及到在空间和时间上进行网格划分,形成网格点的集合。
2. 离散化:使用差分公式将微分方程中的导数替换为差分。
例如,一阶导数可以用前向差分或后向差分近似,而二阶导数可以用中心差分近似。
3. 构建差分方程:在每个网格点上应用差分公式,将微分方程转化为代数方程。
对于边界条件,也需要进行相应的离散化处理。
4. 求解线性方程组:差分方程通常会导致一个线性方程组。
对于大型问题,这可能需要使用迭代方法或直接求解器来找到解。
5. 稳定性分析:在求解过程中,需要确保数值解的稳定性。
这涉及到对时间步长和空间步长的选择,以满足CFL(Courant-Friedrichs-Lewy)条件。
6. 迭代求解:对于时间依赖的问题,如热传导或波传播,可以通过时间步进方法(如显式或隐式方法)来迭代求解。
7. 结果分析:最后,分析数值解以验证其准确性,并与解析解(如果存在)进行比较。
有限差分法在处理规则区域和简单边界条件的问题时非常有效。
然而,对于具有复杂几何形状或边界条件的问题,可能需要更高级的数值方法,如有限元方法(FEM)或边界元方法(BEM)。
在实际应用中,有限差分法通常与计算机软件结合使用,如MATLAB、Python的SciPy库等,以便于高效地处理大规模问题。
有限差分法
有 限 差 分 法流体运动的控制方程多为偏微分方程,在复杂的情况下不存在解析解。
但是对于一些简单的情况存在解析解,偏微分方程的解析解可用精确的数学表达式表示,该表达式给出了因变量在整个定义域中的连续变化状况。
有限差分法(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)表示。
有限差分法
u ( x, y )
= ϕ ( x, y )
Γ = ∂Ω
泊松方程的第一类边界条件 泊松方程的第一类边界条件 Dirichlet条件 条件) (Dirichlet条件)为:
其中 Ω 为以 Γ 为边界的有界区域, 为分 Γ Ω 段光滑曲线, U Γ 称为定解区 ϕ 域, f ( x, y ) , ( x, y ) 分别为 Ω ,Γ 上 的已知连续函数。
τ ah R( xk , t j ) = ut′′ ( xk , t j + θ2τ ) + u′′2 ( xk + θ1h, t j ) = O(τ + h) 2 2 2 x
差分方程的 截断误差
如果一个差分方程的截断误差为 R = O (τ + h ) ,则称差分方程 对 是 q 阶精度,对 x 是 p 阶精度的。显然,截断误差的阶 数越大,差分方程对微分方程的逼近越好。
有限差分法
有限差分法(finite difference method)是一种普遍认为 method)是一种普遍认为 有限差分法(finite 行之有效的处理函数微分的数值方法, 行之有效的处理函数微分的数值方法,科学与工程计算中 常见的偏微分方程和方程组大都可以采用有限差分方法求 本章首先讨论偏微分方程的定解问题, 解。本章首先讨论偏微分方程的定解问题,然后介绍有限 差分法的基本概念、方法和实现过程, 差分法的基本概念、方法和实现过程,重点介绍了求解椭 圆型偏微分方程定解问题的差分方法。 圆型偏微分方程定解问题的差分方法。
∂ 2u ∂ 2u = a2 ∂ t2 ∂ x2 u (x, 0) = ϕ (x) ∂u = ψ (x) ∂ t t=0
t > 0,
有限差分法
有限差分法有限差分法是基于差分原理的一种数值计算法。
其基本思想:将场域离散为许多小网格,应用差分原理,将求解连续函数ϕ的泊松方程的问题转换为求解网格节点上ϕ的差分方程组的问题。
1.1 二维泊松方程的差分格式图1-1 有限差分的网格分割二维静电场边值问题:F yx =-=∂∂+∂∂ερϕϕ2222 (1-1) )(s f L =ϕ (1-2)通常将场域分成足够小的正方形网格,网格线之间的距离为h ,节点4,3,2,1,0上的电位分别用3210,,,ϕϕϕϕ和4ϕ表示。
设函数ϕ在0x 处可微,则沿x 方向在0x 处的泰勒公式展开为()()()∑=-+-=nK n K K K 000)(!χχοχχϕϕχ (1-3)将1χχ=和3χ分别代入式(1-3),得⋅⋅⋅⋅⋅⋅+∂∂+∂∂+∂∂+=03330222001)(!31)(!21)(x h x h x h ϕϕϕϕϕ (1-4)⋅⋅⋅⋅⋅⋅+∂∂-∂∂+∂∂-=03330222003)(!31)(!21)(xh x h x h ϕϕϕϕϕ (1-5)由(1-4)-(1-5)得h2x 31x x 0ϕϕϕ-≈∂∂=)((1-6)(1-4)+(1-5)得2301x x 22h2x 0ϕϕϕϕ+-≈∂∂=)( (1-7) 同理hy y y 2)(310ϕϕϕ-≈∂∂= (1-8) 2301222)(0hy y y ϕϕϕϕ+-≈∂∂= (1-9) 将式(1-7)、(1-9)代入式(1-1),得到泊松方程的五点差分格式)(414243210204321Fh Fh -+++=⇒=-+++ϕϕϕϕϕϕϕϕϕϕ当场域中,0=ρ得到拉普拉斯方程的五点差分格式)(41044321004321ϕϕϕϕϕϕϕϕϕϕ+++=⇒=-+++1.2 边界条件的离散化处理图1-2 边界条件的离散化处理若场域离散为矩形网格(如图2-2示),差分格式为:F 2h 1h 1h 1h 10222142222121=+-+++ϕϕϕϕϕ)()()( (1-10) (1)第一类边界条件:给边界离散节点直接赋已知电位值 (2)对称边界条件:合理减小计算场域,差分格式为:)(F h 24124210-++=ϕϕϕϕ (1-11)图1-3 边界条件的离散化处理•12(3)第二类边界条件:边界线与网格线相重合的差分格式:h f f hn 2102010-ϕ=ϕ=ϕ-ϕ≈∂ϕ∂,)((1-12)(4)介质分界面衔接条件 的差分格式)1212(4143210ϕϕϕϕϕ+++++=KKK (1-13)其中b a K εε=1.3 差分方程组的求解方法(1) 高斯——赛德尔迭代法][)(,)(,)(,)(,)(,2k 1j i k j 1i 1k 1j i 1k j 1i 1k j i Fh 41-+++=+++-+-+ϕϕϕϕϕ (1-14)式中:⋅⋅⋅⋅⋅⋅=⋅⋅⋅⋅⋅⋅=,2,1,0,2,1,k j i ,• 迭代顺序可按先行后列,或先列后行进行。
有限差分法基本原理-较好
如折射、反射、散射等现象。
电磁波控制
03
在电磁场模拟中,有限差分法还可以用于研究电磁波的调控技
术,如波导、滤波器等器件的设计和优化。
有限差分法在气候模拟中的应用
气候模型
气候模拟是有限差分法的另一个重要应用领域,用于研究地球气 候系统的演变和预测。
大气环流模型
通过有限差分法,可以建立大气环流模型,模拟大气中温度、湿 度、风速等变量的变化和传播。
有限差分法的稳定性分析
稳定性定义
有限差分法的稳定性是指当时间步长趋于无 穷小时,数值解的误差不会发散,而是趋于 零。
稳定性条件
为了确保有限差分法的稳定性,需要满足一定的条 件,例如CFL条件(Courant-Friedrichs-Lewy条件 )等。
不稳定性分析
对于某些初始条件和参数,有限差分法可能 会出现数值不稳定的情况,需要进行不稳定 性分析并采取相应的措施。
3
边界条件处理
在流体动力学应用中,有限差分法需要考虑复杂 的边界条件,如固壁、滑移边界等,以实现准确 的数值模拟。
有限差分法在电磁场模拟中的应用
麦克斯韦方程
01
有限差分法可以用于求解电磁场中的麦克斯韦方程,以模拟电
磁波的传播和散射等行为。
电磁波传播
02
通过有限差分法,可以模拟电磁波在复杂介质中的传播特性,
THANKS FOR WATCHING
感谢您的观看
未来研究方向与展望
研究方向 展望
针对有限差分法的局限性和不足,未来的研究可 以关注如何改进算法,提高计算精度和稳定性, 以及如何拓展该方法的应用范围。
随着计算机技术的不断发展和数值计算方法的进 步,有限差分法有望在未来得到更广泛的应用和 更深入的研究,为解决各种科学和工程问题提供 更加有效的数值计算方法。
有限差分法
有限差分法一、有限差分法的定义有限差分法(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、解析法和数值法的异同点解析法数值法定义在分析具体问题的基础上,抽取出一个数学模型,这个数学模型能用若干个解析表达式表示出来,解决了这些表达式,问题也就得以解决。
数值法是用高性能的计算机以数值的、程序的形式解决问题,主要是指有限元法和差分法相同点都是在具体问题的基础上取一个用解析表达式表示的数学模型来解决问题;数值法是在解析法的基础上在不同尺度上进行有限元离散,离散单元尺度不同,进行有限元计算时要满足的连续性条件不同,预测结果的精确度就不同不同点解析法可以计算出精确的数值结果;可以作为近似解和数值解的检验标准;解析法过程可以观察到问题的内在和各个参数对数值结果起的作用。
但是分析过程困难又复杂使其仅能解决很少量的问题。
数值法求解过程简单,普遍性强,用户拥有的弹性大;用户不必具备高度专业化的理论知识就可以用提供的程序解决问题。
但求解结果没有解析法精确。
有限差分法介绍
∆t ∆τ
τ =k
t ik − t ik −1 ∆t ≈ ∆x ∆τ
∆ ∆t ≈ ( ) ∆x ∆x
x =i
x=i
≈
t ik − t ik−1 ∆x
∆2t 中心差分 ∆ x2
x =i
1 ∆t ∆t ≈ ( − ) ∆x ∆x x=i+1 ∆x x=i−1
2 2
t ik+1 − t k t ik − t ik−1 t ik+1 − 2t ik + t ik−1 1 i ≈ ( − )= ∆x ∆x ∆x ∆x2
x=i
t
k +1 i
−t =a ∆τ
k i
t ik++11 − 2t ik + 1 + t ik−+11 ∆x2
k +1 i
t = (1 + 2Fo) t
k i
− Fo ( t
k +1 i +1
+ t
k +1 i −1
)
10.3 有限差分法
例10-15 P170
小 结
一、本课的基本要求 1.掌握显式差分方程、隐式差分方程的优缺点。 2.会利用有限差分法计算固体不稳定导热温度场。 二、本课的重点、难点 本课的重点、 重点:利用有限差分法计算固体不稳定导热温度场。 难点:利用有限差分法计算固体不稳定导热温度场。 三、作业 习题P173 10-23(课外上机)
有限差 商
微分方程
差分方程
∆t ∆2 t =a 2 微商—差商→ ∆τ ∆x
∂t ∂ 2t =a 2 ∂τ ∂x
10.3 有限差分法
2.有限差分法 .
10.3 有限差分法
有限差分方法
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)。
h
饱和带
非饱和带
M z
隔水底板
30
MODFLOW模块及其作用
**蒸散(EVT)模块
潜水蒸发
可暂且处理为水面 蒸发
蒸发强度随 潜水埋深的 加大而减弱
ET
z
ET = 0
31
MODFLOW模块及其作用
**河流边界(RIV)模块 通过河床与地表水交换 河流水位必须已知 简化处理
地下水排泄:q= C(Hcell Hriv)
2
Wi , j 0
物理意义是什么?
Ti 1 , j
2
H i 1, j H i , j x
2
y Ti 1 , j
2
H i 1, j H i , j x
2
y x Wi , j xy 0
Ti , j 1
H i , j 1 H i , j y
2 2 2
2
如果均质,无补给,无开采
Hi, j
H i 1, j H i 1, j H i , j 1 H i , j 1 4
T的计算
算术平均:
Ti 1 , j
2
Ti , j Ti 1, j 2
; Ti 1 , j
2
Ti, j Ti 1, j 2
几何平均:
H i 1, j H i , j 1 均质各向同性,四边都为定水头边界 求H1、H2、H3和H4
4H1 H 2 H 3 1 0 4H 2 H1 H 4 1 0 4H 3 H1 H 4 1 1 4H 4 H 2 H 3 1 1
K Aside
q=C(H0Hcell); C=
28
D
MODFLOW模块及其作用
**排水沟边界(DRN)模块
排水流量 q=C(Hcell z0), 排水流量 q=0, Hcell z0 控制高度 Hcell>z0
29
MODFLOW模块及其作用
**补给(RCH)模块
降水入渗、灌溉入渗等,可随时间变化
x Ti , j 1
H i , j 1 H i , j y
4
q1 q2 q3 q4 W xy Qw 0
1
0
2
3
如果Δ x= Δy
Ti 1 , j H i 1, j H i , j Ti 1 , j H i 1, j H i , j Ti , j 1 H i , j 1 H i , j Ti , j 1 H i , j 1 H i , j Wi , j xy Qw 0
26
MODFLOW模块及其作用
**定水头边界(CHD)
定水头(0)
定水头(1)
底板
常用于河流、湖泊、海洋等 地表水体
27
MODFLOW模块及其作用
**通用水头边界(GHB)模块
小尺度模型的人工边界
单元水头 Hcell 侧面积 Aside
边界水头 H0
渗透系数 K 补给流量 q
边界距离 D
导水系数(单位?)
22
n
方程组的解法
**MODFLOW差分模型
求解差分方程
[C]{H t } {qe } [S ]{H t H t 1}
[ A]{H t } {q}
共轭梯度法(PCG); 分片超松弛迭代法(SSOR); 强隐式迭代法(SIP)
23
时间的离散化方法
**时间的剖分
4个时步 时期(Stress Period) 时步(Time Step) 可变的时间步长
2 2 2 2
Hi, j
Ti 1 , j H i 1, j Ti , j 1 H i , j 1 Ti , j 1 H i , j 1 Wi , j xy Qw
2 2 2
Ti 1 , j Ti , j 1 Ti , j 1
2 2
2
Hi, j
变干的单元
即将变湿的单元
干单元可以从下部的 单元得到补给
34
干单元也可以从侧面 的单元得到补给
q1 q2 q3 q4 W xy Qw 0
=0 =0
4 1 0 2
3
Ti 1 , j H i 1, j H i , j Ti 1 , j H i 1, j H i , j Ti , j 1 H i , j 1 H i , j Ti , j 1 H i , j 1 H i , j Wi , j xy Qw 0
16
• 软件 Windows界面
Processing Modflow
Visual Modflow 有中文版
GMS
三维有限差分模型与MODFLOW
• 代码 Fortran程序 MODFLOW
lf90.eer main.for, bas1.for bcf2.for, drn1.for, evt1.for, rch1.for riv1.for, sip1.for sor1.for, wel1.for utl1.for, ghb1.for str1.for, hfb1.for lkmt3.for, lkmt3.inc, pcg2.for, lf90.fig, automake.fig
hi,j,k
qi,j+½,k
hi,j+1,k
zk
yi
xj+1/2
21
三维有限差分方程
**MODFLOW差分模型
差分方程
qi, j 1/ 2,k CRi, j 1/2,k hi , j 1,k hi , j ,k
CRi, j 1/2, k hi , j 1,k hi , j ,k CRi, j 1/2, k hi , j ,k hi , j 1,k
50m 隔 水 边 界 给定水头边界 H=100+0.2x
隔 水 边 界
100m 隔水边界
三维有限差分模型与MODFLOW
• 代码 Fortran程序
MODFLOW,-83,-88,-96 -2000,2005 (McDonald & Harbaugh) MT3D(Zheng,1990) - MT3DMS PEST(Doherty et al,1994) UCODE (Poeter & Hill, 1998) Packages(模块)
17
• 软件 Windows界 面
单元中心法(Block Centered Method)
**MODFLOW差分模型
列
分层网格
行
模拟层 格点
18
变厚度单元
**三维结构
19
三维有限差分方程
**MODFLOW差分模型
差分方程 (qN+qS+qE+qW+qU+qL) +Q= SsVcell(HtHt-1)/t
第1时期
第2时期
第3时期
总时间
24
建立MODFLOW模型的步骤
**使用MODFLOW建立模型
1. 准备数据资料(划分含水层,顶底板高 度,渗透参数,存贮参数,初始地下水位) 2. 划分平面网格,输入顶、底板高度 3. 输入模拟层参数 4. 输入边界属性和模块参数 5. 是稳定流还是非稳定流 6. 非稳定流的初始水头分布 7. 运行模型,查看结果
q
CRi 1/2, j,k hi 1, j ,k hi , j ,k CRi -1/2, j,k hi , j ,k hi 1, j ,k CRi, j,k 1/2 hi , j ,k 1 hi , j ,k CRi, j,k -1/2 hi , j ,k hi , j ,k 1
1
0
2
3
Ti 1 , j
2
H i 1, j H i , j
2
Ti , j 1
(x) H i , j 1 H i , j (y )
2
Ti 1 , j
2
H i 1, j H i , j (x) 2 H i , j 1 H i , j (y )
2
2
Ti , j 1
河流渗漏:q=C(Hriv Hcell)
渗透系数宽度长度 导水系数C= 沉积物厚度
32
MODFLOW模块及其作用
**水井(WEL)模块 一个水井 只对应 一个模拟单元
井流量:抽水为负流量;注水为正流量
33
MODFLOW模块及其作用
**干湿单元转化处理(Re-wetting) 一个湿单元如果水头低于单元的底部,变干; 一个干单元如果接受周围单元补给,可重新变湿。
地下水流数值模拟
蒋小伟 副教授 2013年12月
内容
• 1、概述
• 2、有限元法(FEM)基础及编程 • 3、有限差分法(FDM)基础及MODFLOW
导数
如果Δ x充分小
泰勒级数
一阶导数的前差、后差、中心差
二阶导数的差分形式
基于FDM的数值模型
**平面二维有限差分方程
4
H H T T W 0 x x y y
2 2 2 2
Hi, j
Ti 1 , j H i 1, j Ti 1 , j H i 1, j Ti , j 1 H i , j 1 Ti , j 1 H i , j 1 Wi , j xy Qw
2 2 2 2
Ti 1 , j Ti 1 , j Ti , j 1 Ti , j 1
25
MODFLOW模块及其作用
在Visual Modflow中称为边界条件 Boundary Conditions