有限差分法求解偏微分方程复习进程

合集下载

有限差分法的步骤

有限差分法的步骤

有限差分法的步骤嘿,朋友们!今天咱来聊聊有限差分法的那些事儿。

有限差分法啊,就像是搭积木一样,一步步地构建出我们想要的结果。

首先呢,要确定问题的定义域,这就好比是给搭积木找个合适的场地。

你得清楚知道在哪个范围里玩这个游戏。

然后就是划分网格啦,这就像是把场地划分成一格一格的,让每个部分都有自己的位置。

网格分得越细,就好像积木的格子越小,能呈现的细节就越多,但也别太细啦,不然可就复杂得让人头疼咯。

接下来,要对微分方程进行离散化。

啥叫离散化呢?就好比把连续的东西切成一段一段的,这样就好处理啦。

把那些复杂的微分方程转化成一个个可以计算的小式子,这可不简单呐!再之后呢,就是建立差分格式啦。

这就像是给每个小格子都定好规则,让它们知道该怎么表现。

不同的差分格式就像是不同的玩法,各有各的特点。

建立好差分格式后,就得开始计算啦!把各种数值代进去,就像摆弄那些积木一样,看看能得出啥结果。

这计算的过程可不能马虎,一个小错误可能就会让整个结果都不对啦。

计算出结果后,还得检查检查呢,看看合不合理,就像检查搭好的积木稳不稳一样。

要是有问题,还得重新调整,重新再来一遍。

你说这有限差分法是不是挺有意思的?虽然过程有点复杂,但只要一步一步慢慢来,总能搞明白的呀。

它就像是一个神秘的魔法,能把那些看似无解的问题给解开。

咱想想啊,要是没有有限差分法,那好多科学问题可咋解决呀?那些复杂的物理现象、工程问题,不都得靠它来帮忙嘛。

所以说呀,学会有限差分法,那可真是太有用啦!咱可得好好研究研究,把这个厉害的工具掌握好,让它为我们服务呀!这有限差分法的步骤,咱可不能小瞧咯,每个步骤都得认真对待,这样才能得出准确的结果呀,你们说是不是呢?。

有限差分法推导

有限差分法推导

有限差分法推导有限差分法是一种常用的数值分析方法,用于近似求解偏微分方程。

它的主要思想是将连续的空间域或时间域离散化,通过有限差分逼近来计算偏微分方程的解。

本文将对有限差分法的推导过程进行详细讲解。

在使用有限差分法求解偏微分方程时,我们首先需要将空间或时间的连续域划分成离散的网格点。

设定网格点的步长为Δx或Δt,其中Δx表示空间步长,Δt表示时间步长。

然后,我们利用有限差分近似替代原始的偏微分方程,得到一个离散的数值方程。

有限差分法的推导有以下几个基本步骤:第一步是建立离散的网格。

我们将空间或时间的连续域划分成网格点,并标记每个网格点的位置。

第二步是对原始的偏微分方程进行泰勒级数展开。

我们以空间变量为例,对偏微分方程中的函数进行泰勒级数展开,并截取到一阶或二阶导数的项。

第三步是利用差分逼近代替泰勒级数展开中的导数项。

根据差分逼近的精确度要求和稳定性要求,我们可以选择合适的差分格式来近似代替导数项。

第四步是将差分格式代入偏微分方程中,得到一个离散的数值方程。

通过有限差分逼近替代原始的偏微分方程,我们可以得到一个离散的方程组。

第五步是求解离散的方程组。

我们可以利用数值方法,如迭代法或直接法,求解离散的方程组,得到偏微分方程的数值解。

有限差分法推导的关键在于差分逼近的选择和方程离散化的建立。

不同的差分格式和离散化方法会导致不同的数值精度和稳定性。

因此,在实际应用中,需要根据具体问题来选择合适的差分格式和离散化方法。

总之,有限差分法是一种常用的数值分析方法,用于近似求解偏微分方程。

通过将连续的空间或时间离散化,并利用差分逼近替代原始方程中的导数项,可以得到一个离散的数值方程,然后通过求解离散的方程组来得到偏微分方程的数值解。

在实际应用中,需要根据具体问题选择合适的差分格式和离散化方法,以提高数值解的精度和稳定性。

差分法求解偏微分方程MAAB

差分法求解偏微分方程MAAB

南京理工大学课程考核论文课程名称:高等数值分析论文题目:有限差分法求解偏微分方程姓名:罗晨学号:成绩:有限差分法求解偏微分方程一、主要内容1.有限差分法求解偏微分方程,偏微分方程如一般形式的一维抛物线型方程:具体求解的偏微分方程如下:2.推导五种差分格式、截断误差并分析其稳定性;3.编写MATLAB程序实现五种差分格式对偏微分方程的求解及误差分析;4.结论及完成本次实验报告的感想。

二、推导几种差分格式的过程:有限差分法(finite-differencemethods )是一种数值方法通过有限个微分方程近似求导从而寻求微分方程的近似解。

有限差分法的基本思想是把连续的定解区域用有限个离散点构成的网格来代替;把连续定解区域上的连续变量的函数用在网格上定义的离散变量函数来近似;把原方程和定解条件中的微商用差商来近似,积分用积分和来近似,于是原微分方程和定解条件就近似地代之以代数方程组,即有限差分方程组,解此方程组就可以得到原问题在离散点上的近似解。

推导差分方程的过程中需要用到的泰勒展开公式如下:()2100000000()()()()()()()......()(())1!2!!n n n f x f x f x f x f x x x x x x x o x x n +'''=+-+-++-+-(2-1)求解区域的网格划分步长参数如下:11k k k kt t x x h τ++-=⎧⎨-=⎩(2-2) 2.1古典显格式2.1.1古典显格式的推导由泰勒展开公式将(,)u x t 对时间展开得2,(,)(,)()()(())i i k i k k k uu x t u x t t t o t t t∂=+-+-∂(2-3) 当1k t t +=时有21,112,(,)(,)()()(())(,)()()i k i k i k k k k k i k i k uu x t u x t t t o t t tuu x t o tττ+++∂=+-+-∂∂=+⋅+∂(2-4)得到对时间的一阶偏导数1,(,)(,)()=()i k i k i k u x t u x t uo t ττ+-∂+∂(2-5) 由泰勒展开公式将(,)u x t 对位置展开得223,,21(,)(,)()()()()(())2!k i k i k i i k i i u uu x t u x t x x x x o x x x x∂∂=+-+-+-∂∂(2-6)当11i i x x x x +-==和时,代入式(2-6)得2231,1,1122231,1,1121(,)(,)()()()()(())2!1(,)(,)()()()()(())2!i k i k i k i i i k i i i i i k i k i k i i i k i i i iu u u x t u x t x x x x o x x x xu u u x t u x t x x x x o x x x x ++++----⎧∂∂=+-+-+-⎪⎪∂∂⎨∂∂⎪=+-+-+-⎪∂∂⎩(2-7) 因为1k k x x h +-=,代入上式得2231,,22231,,21(,)(,)()()()2!1(,)(,)()()()2!i k i k i k i k i k i k i k i ku u u x t u x t h h o h x xu u u x t u x t h h o h x x +-⎧∂∂=+⋅+⋅+⎪⎪∂∂⎨∂∂⎪=-⋅+⋅+⎪∂∂⎩(2-8) 得到对位置的二阶偏导数2211,22(,)2(,)(,)()()i k i k i k i k u x t u x t u x t uo h x h+--+∂=+∂(2-9) 将式(2-5)、(2-9)代入一般形式的抛物线型偏微分方程得(2-10)为了方便我们可以将式(2-10)写成11122k kk k k k i i i i i i u u u u u f h ατ++-⎡⎤--+-=⎢⎥⎣⎦(2-11) ()11122k k k k k k i i i i i i u u uu u f hτατ++----+=(2-12)最后得到古典显格式的差分格式为()111(12)k k k k k i i i i i u ra u r u u f ατ++-=-+++(2-13)2r hτ=其中,古典显格式的差分格式的截断误差是2()o h τ+。

PDE 有限差分法

PDE 有限差分法

������������+1,������ −
{
������
������������,������ + ������ ������|������=0 =
������������,������+1 − ������������,������−1
2ℎ exp(������������������������)
������������采用中心差分
������������
������������ (������������)������,������
=
������������,������+1 − ������������,������−1 2ℎ
������������采用这三种都不行,因为:中心差分将依赖前两层,而初值仅仅给出一层;向前或向后差
=
������2������2
[������������,������+1

2������������,������ ℎ2
+
������������,������−1
+
������������,������ ]
+
2������������,������

������������−1,������
������������,0 = ������������
������������+1,������ − 2������������,������ + ������������−1,������ ������2
=
1 2
[������������+1,������+1

2������������+1,������ ℎ2

微分方程数值求解——有限差分法

微分方程数值求解——有限差分法

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)所示。

二阶偏微分方程组的有限差分解法

二阶偏微分方程组的有限差分解法

二阶偏微分方程组的有限差分解法下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by the editor. I hope that after you download them, they can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!In addition, our shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!二阶偏微分方程组的有限差分解法引言在科学与工程领域中,二阶偏微分方程组的求解是一项重要而又具有挑战性的任务。

有限差分法求解偏微分方程MATLAB79516复习课程

有限差分法求解偏微分方程MATLAB79516复习课程

南京理工大学课程考核论文课程名称:高等数值分析论文题目:有限差分法求解偏微分方程姓名:罗晨学号:115104000545成绩:有限差分法求解偏微分方程一、主要内容1.有限差分法求解偏微分方程,偏微分方程如一般形式的一维抛物线型方程:22(,)()u uf x t t xαα∂∂-=∂∂其中为常数具体求解的偏微分方程如下:22001(,0)sin()(0,)(1,)00u u x t x u x x u t u t t π⎧∂∂-=≤≤⎪∂∂⎪⎪⎪=⎨⎪⎪==≥⎪⎪⎩2.推导五种差分格式、截断误差并分析其稳定性;3.编写MATLAB 程序实现五种差分格式对偏微分方程的求解及误差分析;4.结论及完成本次实验报告的感想。

二、推导几种差分格式的过程:有限差分法(finite-difference methods )是一种数值方法通过有限个微分方程近似求导从而寻求微分方程的近似解。

有限差分法的基本思想是把连续的定解区域用有限个离散点构成的网格来代替;把连续定解区域上的连续变量的函数用在网格上定义的离散变量函数来近似;把原方程和定解条件中的微商用差商来近似,积分用积分和来近似,于是原微分方程和定解条件就近似地代之以代数方程组,即有限差分方程组,解此方程组就可以得到原问题在离散点上的近似解。

推导差分方程的过程中需要用到的泰勒展开公式如下:()2100000000()()()()()()()......()(())1!2!!n n n f x f x f x f x f x x x x x x x o x x n +'''=+-+-++-+- (2-1)求解区域的网格划分步长参数如下:11k k k k t t x x hτ++-=⎧⎨-=⎩ (2-2)2.1 古典显格式2.1.1 古典显格式的推导由泰勒展开公式将(,)u x t 对时间展开得 2,(,)(,)()()(())i i k i k k k uu x t u x t t t o t t t∂=+-+-∂ (2-3) 当1k t t +=时有21,112,(,)(,)()()(())(,)()()i k i k i k k k k k i k i k uu x t u x t t t o t t tuu x t o tττ+++∂=+-+-∂∂=+⋅+∂ (2-4)得到对时间的一阶偏导数1,(,)(,)()=()i k i k i k u x t u x t uo t ττ+-∂+∂ (2-5) 由泰勒展开公式将(,)u x t 对位置展开得223,,21(,)(,)()()()()(())2!k i k i k i i k i i u uu x t u x t x x x x o x x x x∂∂=+-+-+-∂∂ (2-6)当11i i x x x x +-==和时,代入式(2-6)得2231,1,1122231,1,1121(,)(,)()()()()(())2!1(,)(,)()()()()(())2!i k i k i k i i i k i i i i i k i k i k i i i k i i i iu u u x t u x t x x x x o x x x x u u u x t u x t x x x x o x x x x ++++----⎧∂∂=+-+-+-⎪⎪∂∂⎨∂∂⎪=+-+-+-⎪∂∂⎩(2-7) 因为1k k x x h +-=,代入上式得2231,,22231,,21(,)(,)()()()2!1(,)(,)()()()2!i k i k i k i k i k i k i k i ku u u x t u x t h h o h x xu u u x t u x t h h o h x x +-⎧∂∂=+⋅+⋅+⎪⎪∂∂⎨∂∂⎪=-⋅+⋅+⎪∂∂⎩ (2-8) 得到对位置的二阶偏导数2211,22(,)2(,)(,)()()i k i k i k i k u x t u x t u x t uo h x h+--+∂=+∂ (2-9) 将式(2-5)、(2-9)代入一般形式的抛物线型偏微分方程得21112(,)(,)(,)2(,)(,)(,)()i k i k i k i k i k i k u x t u x t u x t u x t u x t f x t o h h αττ++---+⎡⎤-=++⎢⎥⎣⎦(2-10)为了方便我们可以将式(2-10)写成11122k kk k k ki i i i i i u u u u u f h ατ++-⎡⎤--+-=⎢⎥⎣⎦(2-11) ()11122k k k k k k i i i i i i u u uu u f h τατ++----+= (2-12)最后得到古典显格式的差分格式为()111(12)k k k k k i i i i i u ra u r u u f ατ++-=-+++ (2-13)2r h τ=其中,古典显格式的差分格式的截断误差是2()o h τ+。

有限差分法解偏微分方程

有限差分法解偏微分方程

有限差分法解偏微分方程综述绪论有限元方法最早应用于结构力学,后来随着计算机的发展慢慢用于流体力学的数值模拟。

在有限元方法中,把计算域离散剖分为有限个互不重叠且相互连接的单元,在每个单元内选择基函数,用单元基函数的线形组合来逼近单元中的真解,整个计算域上总体的基函数可以看为由每个单元基函数组成的,则整个计算域内的解可以看作是由所有单元上的近似解构成。

有限差分方法(FDM)是计算机数值模拟最早采用的方法,至今仍被广泛运用。

该方法将求解域划分为差分网格,用有限个网格节点代替连续的求解域。

有限差分法以Taylor 级数展开等方法,把控制方程中的导数用网格节点上的函数值的差商代替进行离散,从而建立以网格节点上的值为未知数的代数方程组。

该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念直观,表达简单,是发展较早且比较成熟的数值方法。

对于有限差分格式,从格式的精度来划分,有一阶格式、二阶格式和高阶格式。

从差分的空间形式来考虑,可分为中心格式和逆风格式。

考虑时间因子的影响,差分格式还可以分为显格式、隐格式、显隐交替格式等。

目前常见的差分格式,主要是上述几种形式的组合,不同的组合构成不同的差分格式。

差分方法主要适用于有结构网格,网格的步长一般根据实际地形的情况和柯朗稳定条件来决定。

构造差分的方法有多种形式,目前主要采用的是泰勒级数展开方法。

其基本的差分表达式主要有三种形式:一阶向前差分、一阶向后差分、一阶中心差分和二阶中心差分等,其中前两种格式为一阶计算精度,后两种格式为二阶计算精度。

通过对时间和空间这几种不同差分格式的组合,可以组合成不同的差分计算格式。

有限元方法的基础是变分原理和加权余量法,其基本求解思想是把计算域划分为有限个互不重叠的单元,在每个单元内,选择一些合适的节点作为求解函数的插值点,将微分方程中的变量改写成由各变量或其导数的节点值与所选用的插值函数组成的线性表达式,借助于变分原理或加权余量法,将微分方程离散求解。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

有限差分法求解偏微分方程有限差分法求解偏微分方程摘要:本文主要使用有限差分法求解计算力学中的系统数学模型,推导了有限差分法的理论基础,并在此基础上给出了部分有限差分法求解偏微分方程的算例验证了推导的正确性及操作可行性。

关键词:计算力学,偏微分方程,有限差分法Abstract:This dissertation mainly focuses on solving the mathematic model of computationmechanics with finite-difference method. The theoretical basis of finite-difference is derived in the second part of the dissertation, and then I use MATLAB to program the algorithms to solve some partial differential equations to confirm the correctness of the derivation and the feasibility of the method.Key words:Computation Mechanics, Partial Differential Equations, Finite-Difference Method1 引言机械系统设计常常需要从力学观点进行结构设计以及结构分析,而这些分析的前提就是建立工程问题的数学模型。

通过对机械系统应用自然的基本定律和原理得到带有相关边界条件和初始条件的微分积分方程,这些微分积分方程构成了系统的数学模型。

求解这些数学模型的方法大致分为解析法和数值法两种,而解析法的局限性众所周知,当系统的边界条件和受载情况复杂一点,往往求不出问题的解析解或近似解。

另一方面,计算机技术的发展使得计算更精确、更迅速。

因此,对于绝大多数工程问题,研究其数值解法更具有实用价值。

对于微分方程而言,主要分为差分法和积分法两种,本论文主要讨论差分法。

2 有限差分法理论基础2.1 有限差分法的基本思想当系统的数学模型建立后,我们面对的主要问题就是微分积分方程的求解。

基本思想是用离散的只含有限个未知量的差分方程组去近似地代替连续变量的微分方程和定解条件,并把差分方程组的解作为微分方程定解问题的近似解。

将原方程及边界条件中的微分用差分来近似,对于方程中的积分用求和或及机械求积公式来近似代替,从而把原微分积分方程和边界条件转化成差分方程组。

有限差分法求解偏微分方程的步骤主要有以下几步:区域离散,即把所给偏微分方程的求解区域细分成由有限个格点组成的网格,这些离散点称作网格的节点;⏹近似替代,即采用有限差分公式替代每一个格点的导数;⏹逼近求解,换而言之,这一过程可以看作是用一个插值多项式及其微分来代替偏微分方程的解的过程。

从原则上说,这种方法仍然可以达到任意满意的计算精度。

因为方程的连续数值解可以通过减小独立变量离散取值的间格,或者通过离散点上的函数值进行插值计算来近似得到。

理论上,当网格步长趋近于零时,差分方程组的解应该收敛于精确解,但由于机器字节的限制,网格步长不可能也没有必要取得无限小,那么差分法的收敛性或者说算法的稳定性就显得至关重要。

因此,在运用有限差分法时,除了要保证精度外,还必须要保证其收敛性。

2.2 系统微分方程的一般形式由于大多数工程问题都是二维问题,所以得到的微分方程一般都是偏微分方程,对于一维问题得到的是常微分方程,解法与偏微分方程类似,故为了不是一般性,这里只讨论偏微分方程。

由于工程中高阶偏微分较少出现,所以本文仅仅给出二阶偏微分方程的一般形式,对于高阶的偏微分,可进行类似地推广。

二阶偏微分方程的一般形式如下:其中,为弹性体上的某一特征物理量(连续函数)。

当A、B、C都是常数时,(1)式称为准线性,有三种准线性方程形式:⏹如果,则称为椭圆型方程;⏹如果,则称为抛物型方程;⏹如果,则称为双曲型方程。

(1)椭圆型方程主要用来处理稳态或静态问题,如热传导等问题;抛物线方程主要用来处理瞬态问题,如渗透、扩散等问题;双曲型方程主要用来处理振动问题,如玄震动、薄膜震动等问题。

除了上述微分方程外,必须给出定解条件,通常有如下三类:⏹第一类边界条件(Dirichlet 条件):;⏹第二类边界条件(Neumann 条件):;⏹第三类边界条件(Robin条件):;其中,为求解域的边界,为的单位外法矢,。

第二类和第三类边界条件统称为导数边界条件。

2.3 有限差分方程的数学基础2.3.1 一元函数导数的差分公式一个函数在x 点上的导数,可以近似地用它所临近的两点上的函数值的差分来表示。

函数在处的泰勒展式如下:对一个单变量函数,以步长将区间等距划分,我们得到一系列节点:,,,(),然后求出在这些节点上的近似值。

与节点相邻的节点有和,因此在点处可以构造如下形式的展开式:(2(3)由式(3)和式(4)可得到:⏹ 一阶向前差分: ⏹⏹ 一阶向后差分: ⏹⏹ 一阶中心差分: ⏹不妨,记,则式(5)、(6)、(7)分别简写为:⏹ 一阶向前差分: ⏹⏹ 一阶向后差分: ⏹⏹ 一阶中心差分: ⏹根据式(8)、式(9)和式(10),可得二阶差分: ⏹ 二阶向前差分: ⏹⏹ 二阶向后差分: ⏹⏹ 二阶中心差分: ⏹差分公式(13)是以相隔2h 的两结点处的函数值来表示中间结点处的一阶导数值,可称为中点导数公式。

式(11)和式(12)是以相邻三结点处的函数(5)(6)(7)(8)(9)(10)(11)(12)(13)值来表示一个端点处的一阶导数值,可称为端点导数公式。

应当指出:中点导数公式与端点导数公式相比,精度较高。

因为前者反映了结点两边的函数变化,而后者却只反映了结点一边的函数变化。

因此,我们总是尽可能应用前者,而只有在无法应用前者时才不得不应用后者。

但是,由于式(11)中的各阶导数均使用的是向前差分,导致用到的节点不相邻,同时为了均衡误差,将节点处用到的一阶差分换成向后差分,则式(11)修正为:同理,根据上述推导过程,可得到任意阶的差分公式: ⏹ n 阶向前差分: ⏹⏹ n 阶向后差分: ⏹⏹ n 阶中心差分: ⏹说明,上述公式中各节点处前一阶导数的代入可能存在不一致,可能是向前差分、向后差分或者中心差分,从而使最终的公式在系数上存在差别。

当然,也可以对各相邻节点进行需要阶数的泰勒展开,从而建立方程组直接求各阶导数。

2.3.2 微分方程转化为线性方程由于三种类型的微分方程解法类似,故这里仅以椭圆型微分方程为例,将微分方程转化为代数方程,对于双曲型和抛物型方程依次类推即可。

不妨记:(15) (16)(17)(14)(称为拉普拉斯算子),和是求解域上的连续函数。

假设求解区域为:,将求解区域划分成个网格,其中:,如图1所示。

记,则根据式(14)可得到:图1 五点差分公式式(18)也称为五点差分公式,同理根据式(12)和式(13)可分别得到向前差分公式(19)和向后差分公式(20),如图(2所示)。

⏹向前差分⏹⏹向后差分⏹(19)(20)图2向前差分(左)和向后差分(右)图3 中心差分、向前差分和向后差分的拉普拉斯算子表示利用中心差分公式(18),由于式(18)在点处具有二阶精度(),所以式(18)可近似改写成下式:根据椭圆方程的具体形式可以将其分为以下三种形式:⏹拉普拉斯(Laplace)方程:⏹泊松(Poison)方程:⏹赫耳墨次(Helmholtz)方程:根据式(21),可建立三种不同形式椭圆方程的代数方程如下:⏹拉普拉斯方程:化简后得到拉普拉斯方程的计算公式:(21)(22)⏹ 泊松方程:⏹⏹ 赫耳墨次方程:2.3.3 建立有限差分方程组根据式(22)~(24)建立方程组,但是需要知道对应的边界条件才能使方程组存在定解,根据2.2中可知,边界条件一般分为狄利克雷边界条件和导数边界条件两种,下面分别给出这两种边界条件的有限差分方程组的建立过程: ⏹ 狄利克雷边界条件:对于狄氏条件而言,给出了边界上各节点出的函数计算公式,直接代入节点值计算即可,如下所示为矩形区域的边界点计算:(左边界) (右边界)(下边界) (上边界)⏹ 导数边界条件:以右边界点为例,对于右边界点,根据Neumann 条件可得下式:对于拉普拉斯方程,根据计算公式(22),对于边界上的点可得:显然,上式中的在求解域外,是未知量。

根据中心差分公式(10)可得到:(23)(24) (25)(26) (27)(28)根据式(28)可得到逼近表示:,并且具有2阶逼近精度,代入式(27)可得下式:同理,对于其它边界可获得如下边界方程:(下边界)(上边界)(左边界)图4 Neumann条件算子对于泊松方程和赫耳墨次方程同样根据上述方法,获得边界条件的线性方程,然后将这些方程添加到式(22)~(24)所建立的方程组中,从而建立起个元的线性方程组,解该方程组即可获得各节点的函数值。

对于上述过程建立的线性方程组的求解,可采用多种方法,比如Jacob 迭代法、Gauss-Seidel迭代法、超松弛迭代法(SOR法)、高斯消元法等方法求解。

(29)(30)2.4 有限差分法的收敛性和稳定性由于迭代法必须保证收敛性,所以在解有限差分方程组时还应保证其收敛性,也就是通常所说的算法稳定性。

有限差分法的算法稳定性可以通过特征值方法、傅里叶变换(冯诺依曼条件)以及能量估计等方法来判断,下面给出常用的冯诺依曼条件: ⏹ 向前差分:,绝对收敛; ⏹ 向后差分:,绝对收敛;⏹ 中心差分:对任何的对不收敛;假设求解域内方向网格划分的步长为,方向网格划分的步长为,将偏微分方程化为标准形式,具体来说标准形式如下: ⏹ 双曲方程: ⏹对于式(31)所示的双曲方程,冯诺依曼条件为:. ⏹ 抛物方程: ⏹对于式(32)所示的抛物方程,冯诺依曼条件为:. ⏹ 椭圆方程: ⏹对于式(33)所示的椭圆方程,冯诺依曼条件为:.为了使算法在任何情况下都能保持稳定性,去掉对网格划分的冯诺依曼条件,通常采用隐式方案,对五点差分公式中的节点所在的行做差分,然后把这些差分的加权作为中心点的差分值,则拉普拉斯算子可修正为:(31)(33) (32)(34)利用式(34)进行计算时,稳定性没有任何限制。

取不同的值得到不同的差分公式,通常取.为了提高计算精度,很明显的一个措施就是网格细分,但是由于随着网格步长的减小,未知量的数目将会呈指数增长,网格划分太细会导致计算量过于庞大而无法计算。

通常,我们可以通过提高逼近的精度,采用更高精度的差分公式,例如对公式(21)进行修改,可得到九点差分公式:图5 九点差分公式3有限差分法求解实例根据上述推导有限差分法理论,对于不同类型的偏微分方程建立有限差分方程组,采用mat lab编程给出一些计算实例如下:1.椭圆型方程拉普拉斯方程:;求解域:(35)下面分别给出拉普拉斯方程在不同的边界条件下的解。

相关文档
最新文档