1第2章有限差分法基础§2-1差分原理及逼近误差§2-2差分方程,截断误差和相容性§2-3收敛性与稳定性§2-4Lax等价定理§2-5利用有限差分法求解应用问题的一般步骤§2-6应用数值方法模拟材料成形的若干注意事项Finitedifferencemethod(FDM)2第2章有限差分法基础有限差分法:将连续求解域划分成差分网格(最简单的差分网格是矩形网格),用有限个节点代替原连续求解域,用差商代替控制微分方程中的导数,并在此基础上建立含有限个未知数的节点差分方程组;代入初始条件和边界条件后求解差分方程组;该差分方程组的解就是元微分方程定解问题的数值近似解。3第2章有限差分法基础有限差分法:优点:是一种直接将微分问题转变成代数问题的近似数值解法,其最大特点是网格划分规整,无需构建形函数,不存在单元分析和整体分析,数学建模简便,但不太适合处理具有复杂边界条件的工程问题。不足:在处理求解对象的集合边界上缺乏灵活性,即边界节点(网格交点)没有全部坐落在边界线(面)上。适合用于传热、流动等工程问题的求解。4第2章有限差分法基础有限差分法:直观,理论成熟,精度可选。但是不规则区域处理繁琐,虽然网格生成可以使FDM应用于不规则区域,但是对区域的连续性等要求较严。使用FDM的好处在于易于编程,易于并行。有限元方法:适合处理复杂区域,精度可选。缺憾在于内存和计算量巨大。并行不如FDM直观。不过FEM的并行是当前和将来应用的一个不错的方向。5§2-1差分原理及逼近误差1.差分原理设有x的解析函数y=f(x),从微分学知道函数y对x的导数为xxfxxfxydxdyxx)()(limlim00dxdy是函数对自变量的导数,又称微商;y、x分别称为函数及自变量的差分,xy为函数对自变量的差商。(2-1)Finitedifferencemethod(FDM)6向前差分)()(xfxxfy)()(xxfxfy)21()21(xxfxxfy(2-2)向后差分(2-3)中心差分(2-4)x〉0§2-1差分原理及逼近误差Finitedifferencemethod(FDM)7上面谈的是一阶导数,对应的称为一阶差分。对一阶差分再作一阶差分,所得到的称为二阶差分,记为。y2以向前差分为例,有)()(2)2()]()([)]()2([)()()]()([)(2xfxxfxxfxfxxfxxfxxfxfxxfxfxxfyy§2-1差分原理及逼近误差(2-5)Finitedifferencemethod(FDM)8依此类推,任何阶差分都可由其低一阶的差分再作一阶差分得到。例如n阶前差分为)]}()(([{)]}([{)]([)(21xfxxfyyyynnn§2-1差分原理及逼近误差(2-6)Finitedifferencemethod(FDM)9函数的差分与自变量的差分之比,即为函数对自变量的差商。一阶向前差商为xxfxxfxy)()(一阶向后差商为xxxfxfxy)()(§2-1差分原理及逼近误差(2-8)(2-7)Finitedifferencemethod(FDM)10一阶中心差商为xxxfxxfxy)21()21(或xxxfxxfxy2)()(§2-1差分原理及逼近误差(2-9)(2-10)Finitedifferencemethod(FDM)11二阶差商多取中心式,即222)()()(2)(xxxfxfxxfxy当然,在某些情况下也可取向前或向后的二阶差商。§2-1差分原理及逼近误差(2-11)Finitedifferencemethod(FDM)12以上是一元函数的差分与差商。多元函数f(x,y,…)的差分与差商也可以类推。如一阶向前差商为,),,(),,(xyxfyxxfxf,),,(),,(yyxfyyxfyf§2-1差分原理及逼近误差(2-13)(2-12)Finitedifferencemethod(FDM)13由导数(微商)和差商的定义知道,当自变量的差分(增量)趋近于零时,就可由差商得到导数。因此在数值计算中常用差商近似代替导数。差商与导数之间的误差表明差商逼近导数的程度,称为逼近误差。由函数的Taylor展开,可以得到逼近误差相对于自变量差分(增量)的量级,称为用差商代替导数的精度,简称为差商的精度。现将函数在x的邻域作Taylor展开:))(()(!4)()(!3)()(!2)()()()(5432xOxfxxfxxfxxfxxfxxfIV)()())(()(!4)()(!3)(!2)()()()(432xOxfxOxxfxxfxxfxfxxfxxfIV2.逼近误差§2-1差分原理及逼近误差(2-14)Finitedifferencemethod(FDM)14)()()()(),)(()(!4)()(!3)()(!2)()()()(5432xOxfxxxfxfxOxfxxfxxfxxfxxfxxfIV一阶向后差商也具有一阶精度。§2-1差分原理及逼近误差(2-15)(2-16)Finitedifferencemethod(FDM)15将)(xxf与)(xxf的Taylor展开式相减可得))(()(2)()(2xOxfxxxfxxf可见一阶中心差商具有二阶精度。(1-17)§2-1差分原理及逼近误差Finitedifferencemethod(FDM)16将)(xxf与)(xxf的Taylor展开式相加可得))(()()()(2)(22xOxfxxxfxfxxf这说明二阶中心差商的精度也为二阶(1-18)§2-1差分原理及逼近误差由于是个小量,因而阶数越大精度越高!xFinitedifferencemethod(FDM)172ix在有些情况下要求自变量的增量本身是变化的,如图2-1中的1ix1iixx和,是不相等的,相应的差分和差商就是不等距的。Ox2ix1ixix1ix2ix2ix1ixix1ix图2-1非均匀步长差分3.非均匀步长一阶向后差商11)()(iiiixxxfxf一阶中心差商11)()(iiiiiixxxxfxxf(1-22)(1-23)§2-1差分原理及逼近误差Finitedifferencemethod(FDM)18图2-2均匀和非均匀网格实例1§2-1差分原理及逼近误差Finitedifferencemethod(FDM)19图2-3均匀和非均匀网格实例2§2-1差分原理及逼近误差Finitedifferencemethod(FDM)20§2-2差分方程、截断误差和相容性0xt从上节所述可知,差分相应于微分,差商相应于导数。只不过差分和差商是用有限形式表示的,而微分和导数则是以极限形式表示的。如果将微分方程中的导数用相应的差商近似代替,就可得到有限形式的差分方程。现以对流方程为例,列出对应的差分方程。(2-1)——对流系数——对流场函数),(tx微分方程用于连续对象问题,差分方程用于离散对象问题1、差分方程Finitedifferencemethod(FDM)21,2,1,0,0ixixxi,2,1,0,ntntn图2-4差分网格§2-2差分方程、截断误差和相容性1、差分方程Finitedifferencemethod(FDM)22若时间导数用一阶向前差商近似代替,即ttninini1空间导数用一阶中心差商近似代替,即xxninini211则在),(nitx点的对流方程就可近似地写作02111xtnininini(2-2)(2-3)(2-4)§2-2差分方程、截断误差和相容性1、差分方程Finitedifferencemethod(FDM)23按照前面关于逼近误差的分析知道,用时间向前差商代替时间导数时的误差为)(tO用空间中心差商代替空间导数时的误差为))((2xO因而对流方程与对应的差分方程之间也存在一个误差,它是))(,())(()(22xtOxOtORni这也可由Taylor展开得到。因为))(,()(!31212),(),(),(),(223322xtOxtxtxtttxtxxtxxttxttxninininininininini(2-5)(2-6)§2-2差分方程、截断误差和相容性2、截断误差Finitedifferencemethod(FDM)24一个与时间相关的物理问题,应用微分方程表示时,还必须给定初始条件,从而形成一个完整的初值问题。对流方程的初值问题为)()0,(0xxxt这里)(x为某已知函数。同样,差分方程也必须有初始条件:)(020111iininininixxt初始条件是一种定解条件。如果是初边值问题,定解条件中还应有适当的边界条件。差分方程和其定解条件一起,称为相应微分方程定解问题的差分格式。(2-7)(2-8)§2-2差分方程、截断误差和相容性2、截断误差Finitedifferencemethod(FDM)25)()(20111iininininixxtFTCS格式(2-9))()(011iininininixxtFTFS格式(2-10))()(011iininininixxt(2-11)FTBS格式§2-2差分方程、截断误差和相容性2、截断误差Finitedifferencemethod(FDM)26(a)FTCS(b)FTFS(c)FTBS图2-2差分格式FTFS:时间、空间均向前差分;FTCS:时间向前、空间中心差分;FTBS:时间向前、空间向后差分;§2-2差分方程、截断误差和相容性2、截断误差Finitedifferencemethod(FDM)27FTCS格式的截断误差为))(,(2xtORniFTFS和FTBS格式的截断误差为),(xtORni(2-12)(2-13)3种格式对t都有一阶精度。§2-2差分方程、截断误差和相容性2、截断误差Finitedifferencemethod(FDM)28一般说来,若微分方程为fD)(其中D是微分算子,f是已知函数,而对应的差分方程为fD)(其中D是差分算子,则截断误差为)()(DDR这里为定义域上某一足够光滑的函数,当然也可以取微分方程的解。(2-14)(2-15)(2-16)如果当,x0t时,差分方程的截断误差的某种范数||||R也趋近于零,即0||||lim00Rtx则表明从截断误差的角度来看,此差分方程是能用来逼近微分方程的,通常称这样的差分方程和相应的微分方程相容(一致)。如果当、x、0t时,截断误差的范数不趋于零,则称为不相容(不一致),这样的差分方程不能用来逼近微分方程。(2-17)§2-2差分方程、截断误差和相容性3、相容性Finitedifferencemethod(FDM)29若微分问题的定解条件为gB)(其中B是微分算子,g是