有限差分法的介绍及简单应用_初学者共29页文档
- 格式:ppt
- 大小:4.12 MB
- 文档页数:29
有限差分法的原理与计算步骤有限差分法(Finite Difference Method)是一种常用的数值计算方法,用于求解偏微分方程的数值解。
其基本原理是将连续的偏微分方程转化为差分方程,通过逼近导数,使用离散的点代替连续的点,从而将问题转化为代数问题。
下面将详细介绍有限差分法的原理和计算步骤:一、基本原理:有限差分法基于Taylor级数展开,通过利用函数在其中一点附近的导数信息来逼近函数在该点处的值。
该方法将连续的偏微分方程转化为差分方程,使用离散的点代替连续的点,从而将问题转化为代数问题。
在有限差分法中,常用的差分逼近方式有前向差分、后向差分和中心差分。
二、计算步骤:1.网格划分:将求解区域划分为有限个离散点,并定义网格上的节点和网格尺寸。
通常使用等距离网格,即每个网格点之间的间距相等。
2.离散化:将偏微分方程中的各个导数项进行逼近,利用差分近似来替代和求解。
一般采用中心差分逼近方式,即通过函数值在两侧点的差来逼近导数。
3.代数方程系统:利用离散化的差分方程,将偏微分方程转化为代数方程系统。
根据问题的边界条件和初值条件,构建代数方程系统的系数矩阵和常数向量。
4. 求解代数方程:利用求解线性方程组的方法求解代数方程系统,常用的方法有直接法(如高斯消元法、LU分解法)和迭代法(如Jacobi迭代法、Gauss-Seidel迭代法)。
求解得到各个离散点的解。
5.后处理:根据求解结果进行后处理,包括结果的插值和可视化。
将离散点的解通过插值方法进行平滑处理,并进行可视化展示,以得到连续的函数解。
三、优缺点:1.直观:有限差分法基于网格划分,易于理解和实现。
2.精度可控:可通过调整网格大小和差分逼近方式来控制计算的精度。
3.广泛适用性:可用于求解各种偏微分方程,适用于不同的边界条件和初值条件。
然而,有限差分法也存在一些缺点:1.精度依赖网格:计算结果的精度受到网格划分的影响,因此需要谨慎选择网格大小。
2.限制条件:有限差分法适用于边界对应点处导数有定义的问题,不适用于奇异点和非线性问题。
有限差分法有限差分法(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有限差分法简介有限差分法(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、解析法和数值法的异同点解析法数值法定义在分析具体问题的基础上,抽取出一个数学模型,这个数学模型能用若干个解析表达式表示出来,解决了这些表达式,问题也就得以解决。
数值法是用高性能的计算机以数值的、程序的形式解决问题,主要是指有限元法和差分法相同点都是在具体问题的基础上取一个用解析表达式表示的数学模型来解决问题;数值法是在解析法的基础上在不同尺度上进行有限元离散,离散单元尺度不同,进行有限元计算时要满足的连续性条件不同,预测结果的精确度就不同不同点解析法可以计算出精确的数值结果;可以作为近似解和数值解的检验标准;解析法过程可以观察到问题的内在和各个参数对数值结果起的作用。
但是分析过程困难又复杂使其仅能解决很少量的问题。
数值法求解过程简单,普遍性强,用户拥有的弹性大;用户不必具备高度专业化的理论知识就可以用提供的程序解决问题。
但求解结果没有解析法精确。