有限差分法的介绍及简单应用共27页
- 格式:ppt
- 大小:6.12 MB
- 文档页数:27
第四章有限差分方法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)在这些点上的近似值。
有限差分法原理有限差分法(Finite Difference Method)是一种常见的数值计算方法,广泛应用于工程、物理、地质等领域的数值模拟和求解偏微分方程。
它的原理是将连续的微分方程转化为离散的差分方程,通过对网格节点上的数值进行逼近,从而求解微分方程的数值解。
在本文中,我们将介绍有限差分法的基本原理及其在实际问题中的应用。
首先,我们来看一维热传导方程的数值求解。
假设我们要求解一个长为L的均匀材料棒上的温度分布,其热传导方程可以写为:\[ \frac{\partial u}{\partial t} = \alpha\frac{\partial^2 u}{\partial x^2} \]其中,u(x, t)表示位置x上的温度分布,t表示时间,α为热扩散系数。
为了使用有限差分法求解这个方程,我们需要将空间和时间进行离散化。
假设我们在空间上取N个网格点,将材料棒分为N个小区间,每个小区间的长度为Δx。
在时间上也进行离散化,取时间步长为Δt。
这样,我们可以用u_i^n来表示位置为x_i的温度在时间t_n的值。
将热传导方程在离散点上进行近似,我们可以得到如下的差分格式:\[ \frac{u_i^{n+1} u_i^n}{\Delta t} = \alpha\frac{u_{i+1}^n 2u_i^n + u_{i-1}^n}{(\Delta x)^2} \]通过对时间和空间上的离散点进行迭代计算,我们可以逐步求解出温度在空间上的分布随时间的演化。
这就是有限差分法的基本原理。
除了一维热传导方程,有限差分法还可以应用于更加复杂的偏微分方程,比如二维热传导方程、波动方程、扩散方程等。
在这些情况下,我们需要在空间上取二维甚至三维的网格点,并相应地修改差分格式。
有限差分法的优点在于它简单易实现,而且可以直接应用于一般的偏微分方程,因此在实际工程和科学计算中得到了广泛的应用。
需要指出的是,有限差分法也有一些局限性。
有限差分法及其应用1有限差分法简介有限差分法(FDM)是计算机数值模拟最早采用的方法,至今仍被广泛运用。
该方程将解域划分为差分网格,用有限个网络节点代替连续的求解域。
有限差分法通过泰勒级数展开等方法,把控制方程中的导数用网格节点上的函数值得差商代替进行离散,从而建立以网格节点上的值为未知数的代数方程组。
该方法是一种直接将微分问题变为代数问题的近似值解法,数学概念直观,表达简单,是发展较早且比较成熟的数值方法。
2有限差分法的数学基础有限差分法的数学基础是用差分代替微分,用差商代替微商而用差商代替微商的意义是用函数在某区域内的平均变化率来代替函数的真是变化率。
而根据泰勒级数展开可以看出,用差商代替微商必然会带来阶段误差,相应的用差分方程代替微分方程也会带来误差,因此,在应用有限差分法进行计算的时候,必须注意差分方程的形式,建立方法及由此产生的误差。
3有限差分解题基本步骤有限差分法的主要解题步骤如下:1)建立微分方程根据问题的性质选择计算区域,建立微分方程式,写出初始条件和边界条件。
2)构建差分格式首先对求解域进行离散化,确定计算节点,选择网格布局,差分形式和步长;然后以有限差分代替无线微分,以差商代替微商,以差分方程代替微分方程及边界条件。
3)求解差分方程差分方程通常是一组数量较多的线性代数方程,其求解方法主要包括两种:精确法和近似法。
其中精确法又称直接发,主要包括矩阵法,高斯消元法及主元素消元法等;近似法又称间接法,以迭代法为主,主要包括直接迭代法,间接迭代法以及超松弛迭代法。
4)精度分析和检验对所得到的数值进行精度与收敛性分析和检验。
4商用有限差分软件简介商用有限差分软件主要包括FLAC、UDEC/3DEC和PFC程序,其中,FLAC是一个基于显式有限差分法的连续介质程序,主要用来进行土质、岩石和其他材料的三维结构受力特性模拟和塑性流动分析;UDEC/3DEC是针对岩体不连续问题开发,用于模拟非连续介质在静,动态载荷作用下的反应;PFC是利用显式差分算法和离散元理论开发的微、细观力学程序,它是从介质的基本粒子结构的角度考虑介质的基本力学特性,并认为给定介质在不同应力条件下的基本特征主要取决于粒子之间接粗状态的变化,适用于研究粒状集合体的破裂和破裂发展问题,以及颗粒的流动(大位移)问题。
有限差分法( Finite Difference Method,简称FDM)是数值方法中最经典的方法,也是计算机数值模拟最早采用的方法,至今仍被广泛运用。
该方法将求解域划分为差分网格,用有限个网格节点代替连续的求解域。
有限差分法以Taylor级数展开等方法,把控制方程中的导数用网格节点上的函数值的差商代替进行离散,从而建立以网格节点上的值为未知数的代数方程组。
该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念直观,表达简单,是发展较早且比较成熟的数值方法。
对于有限差分格式,从格式的精度来划分,有一阶格式、二阶格式和高阶格式。
从差分的空间形式来考虑,可分为中心格式和逆风格式。
考虑时间因子的影响,差分格式还可以分为显格式、隐格式、显隐交替格式等。
目前常见的差分格式,主要是上述几种形式的组合,不同的组合构成不同的差分格式。
差分方法主要适用于有结构网格,网格的步长一般根据实际地形的情况和柯朗稳定条件来决定。
构造差分的方法有多种形式,目前主要采用的是泰勒级数展开方法。
其基本的差分表达式主要有三种形式:一阶向前差分、一阶向后差分、一阶中心差分和二阶中心差分等,其中前两种格式为一阶计算精度,后两种格式为二阶计算精度。
通过对时间和空间这几种不同差分格式的组合,可以组合成不同的差分计算格式。
下面我们从有限差分方法的基本思想、技术要点、应用步骤三个方面来深入了解一下有限差分方法。
1.基本思想有限差分算法的基本思想是把连续的定解区域用有限个离散点构成的网格来代替,这些离散点称作网格的节点;把连续定解区域上的连续变量的函数用在网格上定义的离散变量函数来近似;把原方程和定解条件中的微商用差商来近似,积分用积分和来近似,于是原微分方程和定解条件就近似地代之以代数方程组,即有限差分方程组,解此方程组就可以得到原问题在离散点上的近似解。
然后再利用插值方法便可以从离散解得到定解问题在整个区域上的近似解。
在采用数值计算方法求解偏微分方程时,再将每一处导数由有限差分近似公式替代,从而把求解偏微分方程的问题转换成求解代数方程的问题,即所谓的有限差分法。
有限差分法一、有限差分法的定义有限差分法(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、解析法和数值法的异同点解析法数值法定义在分析具体问题的基础上,抽取出一个数学模型,这个数学模型能用若干个解析表达式表示出来,解决了这些表达式,问题也就得以解决。
数值法是用高性能的计算机以数值的、程序的形式解决问题,主要是指有限元法和差分法相同点都是在具体问题的基础上取一个用解析表达式表示的数学模型来解决问题;数值法是在解析法的基础上在不同尺度上进行有限元离散,离散单元尺度不同,进行有限元计算时要满足的连续性条件不同,预测结果的精确度就不同不同点解析法可以计算出精确的数值结果;可以作为近似解和数值解的检验标准;解析法过程可以观察到问题的内在和各个参数对数值结果起的作用。
但是分析过程困难又复杂使其仅能解决很少量的问题。
数值法求解过程简单,普遍性强,用户拥有的弹性大;用户不必具备高度专业化的理论知识就可以用提供的程序解决问题。
但求解结果没有解析法精确。