有限差分法求解偏微分方程MATLAB
- 格式:doc
- 大小:1.50 MB
- 文档页数:40
matlab求解多元偏微分方程【导言】多元偏微分方程是数学中一类重要的方程,可以描述许多自然现象和物理过程。
而MATLAB作为一种计算机软件,它在求解多元偏微分方程方面具有强大的功能和广泛的应用。
本文将深入探讨MATLAB如何求解多元偏微分方程,并在此基础上展现其在实际问题中的应用价值。
【1. 多元偏微分方程简介】多元偏微分方程是指包含了多个自变量和多个未知函数的偏微分方程。
通常用来描述自然界和物理过程中多元系统的演化规律。
热传导、扩散、波动等现象都可以通过多元偏微分方程来描述。
而求解多元偏微分方程则是研究和应用中的关键问题。
【2. MATLAB在多元偏微分方程求解中的优势】MATLAB作为一种功能强大的数学软件,其在求解多元偏微分方程方面具有许多优势。
MATLAB提供了丰富的数值计算工具箱,如Partial Differential Equation Toolbox,可以帮助用户快速构建和求解多元偏微分方程。
MATLAB的编程语言具有简单易用的特点,用户可以使用MATLAB的脚本语言进行快速算法开发和实现。
MATLAB还提供了高效的并行计算能力,可以加速多元偏微分方程的求解过程。
【3. MATLAB求解多元偏微分方程的基本方法】MATLAB求解多元偏微分方程的基本方法包括有限差分法、有限元法、边界元法等。
下面将详细介绍有限差分法这一常用的方法。
有限差分法是基于差商近似的方法,将连续的偏微分方程转化为离散的差分方程。
该方法将求解区域离散成网格,通过迭代计算网格上的差分方程来逼近偏微分方程的解。
在MATLAB中,可以通过定义网格和差分方程来实现多元偏微分方程的求解。
具体步骤包括初始化网格、设定边界条件、构造差分方程和迭代求解。
MATLAB提供了方便的函数和工具来简化这一过程。
【4. MATLAB在实际问题中的应用】MATLAB在实际问题中的应用非常广泛,并且在多元偏微分方程的求解中具有重要的作用。
matlab有限差分法求解非齐次偏微分方程【导语】本文将介绍matlab有限差分法在求解非齐次偏微分方程中的应用。
非齐次偏微分方程是数学和物理学中的常见问题之一,它们描述了许多实际系统的行为。
通过有限差分法,可以将偏微分方程转化为差分方程,从而利用计算机来求解。
本文将从原理、步骤和实例三个方面来分析非齐次偏微分方程的有限差分法求解过程。
【正文】一、原理有限差分法是将连续函数在一系列有限的点上进行逼近的方法。
它的基本思想是用差分代替微分,将偏导数转化为差分算子。
通过对空间和时间离散化,将非齐次偏微分方程转化为差分方程组,再利用数值计算的方法求解这个差分方程组,从而得到非齐次偏微分方程的近似解。
具体而言,有限差分法将求解区域划分为网格,并在网格上近似表示偏微分方程中的函数。
利用中心差分公式或向前、向后差分公式来近似计算偏导数。
通过将偏微分方程中的微分算子替换为差分近似,可以将方程转化为一个代数方程组,进而求解得到非齐次偏微分方程的近似解。
二、步骤1. 确定求解的区域和方程:首先要确定求解的区域,然后确定非齐次偏微分方程的形式。
在matlab中,可以通过定义一个矩阵来表示求解区域,并将方程转化为差分算子形式。
2. 离散化:将求解区域划分为网格,确定每个网格点的位置,建立网格点之间的连接关系。
通常,使用均匀网格来离散化求解区域,并定义网格点的坐标。
3. 建立差分方程组:根据偏微分方程的形式和离散化的结果,建立差分方程组。
根据中心差分公式,用网格点上的函数值和近邻点的函数值来近似计算偏导数。
将差分算子应用于非齐次偏微分方程的各个项,得到差分方程组。
4. 求解差分方程组:利用线性代数求解差分方程组。
将方程组转化为矩阵形式,利用matlab中的线性方程组求解功能,得到差分方程组的近似解。
通过调整求解区域划分的精细程度和差分算子的选取,可以提高求解的精度。
5. 回代和结果分析:将求解的结果回代到原非齐次偏微分方程中,分析其物理意义和数值稳定性。
南京理工大学课程考核论文课程名称:高等数值分析论文题目:有限差分法求解偏微分方程姓名:罗晨学号:成绩:有限差分法求解偏微分方程一、主要内容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 τ+。
matlab有限差分法一、前言Matlab是一种广泛应用于科学计算和工程领域的计算机软件,它具有简单易学、功能强大、易于编程等优点。
有限差分法(Finite Difference Method)是一种常用的数值解法,它将微分方程转化为差分方程,通过对差分方程进行离散化求解,得到微分方程的数值解。
本文将介绍如何使用Matlab实现有限差分法。
二、有限差分法基础1. 有限差分法原理有限差分法是一种通过将微分方程转化为离散形式来求解微分方程的数值方法。
其基本思想是将求解区域进行网格划分,然后在每个网格点上进行逼近。
假设要求解一个二阶常微分方程:$$y''(x)=f(x,y(x),y'(x))$$则可以将其转化为离散形式:$$\frac{y_{i+1}-2y_i+y_{i-1}}{h^2}=f(x_i,y_i,y'_i)$$其中$h$为网格步长,$y_i$表示在$x_i$处的函数值。
2. 一维情况下的有限差分法对于一维情况下的常微分方程:$$\frac{d^2 y}{dx^2}=f(x,y,y')$$可以使用中心差分法进行离散化:$$\frac{y_{i+1}-2y_i+y_{i-1}}{h^2}=f(x_i,y_i,y'_i)$$这个方程可以写成矩阵形式:$$A\vec{y}=\vec{b}$$其中$A$为系数矩阵,$\vec{y}$为函数值向量,$\vec{b}$为右端项向量。
三、Matlab实现有限差分法1. 一维情况下的有限差分法假设要求解的方程为:$$\frac{d^2 y}{dx^2}=-\sin(x)$$首先需要确定求解区域和网格步长。
在本例中,我们将求解区域设为$[0,2\pi]$,网格步长$h=0.01$。
则可以通过以下代码生成网格:```matlabx = 0:0.01:2*pi;```接下来需要构造系数矩阵和右端项向量。
根据上面的公式,系数矩阵应该是一个三对角矩阵,可以通过以下代码生成:```matlabn = length(x)-2;A = spdiags([-ones(n,1), 2*ones(n,1), -ones(n,1)], [-1 0 1], n, n); ```其中`spdiags`函数用于生成一个稀疏矩阵。
引言偏微分方程定解问题有着广泛的应用背景。
人们用偏微分方程来描述、解释或者预见各种自然现象,并用于科学和工程技术的各个领域fll。
然而,对于广大应用工作者来说,从偏微分方程模型出发,使用有限元法或有限差分法求解都要耗费很大的工作量,才能得到数值解。
现在,MATLAB PDEToolbox已实现对于空间二维问题高速、准确的求解过程。
偏微分方程如果一个微分方程中出现的未知函数只含一个自变量,这个方程叫做常微分方程,也简称微分方程;如果一个微分方程中出现多元函数的偏导数,或者说如果未知函数和几个变量有关,而且方程中出现未知函数对几个变量的导数,那么这种微分方程就是偏微分方程。
常用的方法有变分法和有限差分法。
变分法是把定解问题转化成变分问题,再求变分问题的近似解;有限差分法是把定解问题转化成代数方程,然后用计算机进行计算;还有一种更有意义的模拟法,它用另一个物理的问题实验研究来代替所研究某个物理问题的定解。
虽然物理现象本质不同,但是抽象地表示在数学上是同一个定解问题,如研究某个不规则形状的物体里的稳定温度分布问题,由于求解比较困难,可作相应的静电场或稳恒电流场实验研究,测定场中各处的电势,从而也解决了所研究的稳定温度场中的温度分布问题。
随着物理科学所研究的现象在广度和深度两方面的扩展,偏微分方程的应用范围更广泛。
从数学自身的角度看,偏微分方程的求解促使数学在函数论、变分法、级数展开、常微分方程、代数、微分几何等各方面进行发展。
从这个角度说,偏微分方程变成了数学的中心。
一、MATLAB方法简介及应用1.1 MATLAB简介MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
1.2 Matlab主要功能数值分析数值和符号计算工程与科学绘图控制系统的设计与仿真数字图像处理数字信号处理通讯系统设计与仿真财务与金融工程1.3 优势特点1) 高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来;2) 具有完备的图形处理功能,实现计算结果和编程的可视化;3) 友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;4) 功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。
有限差分法matlab程序
有限差分法是一种常见的数值分析方法,它可以用来求解微分方程的解,称为数值解。
有限差分法的实现可以使用MATLAB,MATLAB 的强大的编程能力可以帮助我们更方便的实现有限差分法。
首先,我们需要了解什么是有限差分法。
有限差分法是一种数值计算的方法,它用一组等间距的数组来拟合一个函数,然后利用这些数组求出函数的值。
有限差分法可以用来解决复杂的微分方程,这是由于它能够将一个复杂的微分方程分解成一系列简单的微分方程,每个方程都可以用有限差分法来解决。
其次,使用MATLAB来实现有限差分法需要了解MATLAB中有限差分法的必要组件。
MATLAB中有限差分法的组件主要有:矩阵操作、函数计算、微分方程求解等。
首先,我们使用矩阵操作来实现函数的拟合,然后使用函数计算得到函数的值。
最后,我们使用微分方程求解器来解决复杂的微分方程。
最后,实现有限差分法在MATLAB中需要编写MATLAB程序。
MATLAB 程序首先需要编写矩阵操作程序,使用矩阵操作程序拟合函数;然后编写函数计算程序,计算函数的值;最后,编写微分方程求解程序,利用微分方程求解器来解决复杂的微分方程。
有限差分法是一种重要的数值分析方法,在很多科学中都有着广泛的应用,MATLAB可以让我们更方便的实现有限差分法,在微分方程的求解中发挥其独特的作用。
本文简要介绍了如何使用MATLAB来实现有限差分法,希望能为大家提供一些帮助。
引言偏微分方程定解问题有着广泛的应用背景。
人们用偏微分方程来描述、解释或者预见各种自然现象,并用于科学和工程技术的各个领域fll。
然而,对于广大应用工作者来说,从偏微分方程模型出发,使用有限元法或有限差分法求解都要耗费很大的工作量,才能得到数值解。
现在,MATLAB PDEToolbox已实现对于空间二维问题高速、准确的求解过程。
偏微分方程如果一个微分方程中出现的未知函数只含一个自变量,这个方程叫做常微分方程,也简称微分方程;如果一个微分方程中出现多元函数的偏导数,或者说如果未知函数和几个变量有关,而且方程中出现未知函数对几个变量的导数,那么这种微分方程就是偏微分方程。
常用的方法有变分法和有限差分法。
变分法是把定解问题转化成变分问题,再求变分问题的近似解;有限差分法是把定解问题转化成代数方程,然后用计算机进行计算;还有一种更有意义的模拟法,它用另一个物理的问题实验研究来代替所研究某个物理问题的定解。
虽然物理现象本质不同,但是抽象地表示在数学上是同一个定解问题,如研究某个不规则形状的物体里的稳定温度分布问题,由于求解比较困难,可作相应的静电场或稳恒电流场实验研究,测定场中各处的电势,从而也解决了所研究的稳定温度场中的温度分布问题。
随着物理科学所研究的现象在广度和深度两方面的扩展,偏微分方程的应用范围更广泛。
从数学自身的角度看,偏微分方程的求解促使数学在函数论、变分法、级数展开、常微分方程、代数、微分几何等各方面进行发展。
从这个角度说,偏微分方程变成了数学的中心。
一、MATLAB方法简介及应用1.1 MATLAB简介MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
1.2 Matlab主要功能数值分析数值和符号计算工程与科学绘图控制系统的设计与仿真数字图像处理数字信号处理通讯系统设计与仿真财务与金融工程1.3 优势特点1) 高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来;2) 具有完备的图形处理功能,实现计算结果和编程的可视化;3) 友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;4) 功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。
《使用 MATLAB 有限差分法求解非齐次偏微分方程》在科学和工程领域,偏微分方程是描述自然现象和过程中关键的数学工具。
非齐次偏微分方程作为其中的一个重要分支,在描述真实世界中的复杂现象方面具有广泛的应用。
而 MATLAB 作为一个强大的数学建模和计算工具,其有限差分法求解非齐次偏微分方程的能力受到了广泛关注。
在本文中,我们将以 MATLAB 为工具,探讨有限差分法如何用于求解非齐次偏微分方程,以及其中涉及的深度和广度。
1. 偏微分方程及有限差分法简介当我们研究自然界中的变化和现象时,经常会遇到连续变量之间的相关性和变化规律。
偏微分方程便是用来描述这些连续变量之间关系的数学工具。
而有限差分法则是一种数值计算方法,通过将连续的变量离散化,将偏微分方程转化为代数方程组,从而求解偏微分方程的数值解。
2. 非齐次偏微分方程的求解非齐次偏微分方程与常见的齐次偏微分方程相比,具有更复杂的边界和初始条件,因此其求解方法也更为复杂。
通过有限差分法,我们可以将非齐次偏微分方程转化为离散的代数方程组,进而求解出数值解。
3. MATLAB 中有限差分法的实现MATLAB 提供了丰富的数学建模和计算工具,包括用于求解偏微分方程的函数和工具箱。
通过调用这些函数和工具箱,我们可以方便地实现有限差分法对非齐次偏微分方程的求解。
4. 示例应用与个人观点我们将以一个实际的例子,展示 MATLAB 中有限差分法求解非齐次偏微分方程的过程,并共享对这一过程的个人观点和理解。
通过该示例,我们能更深刻地理解有限差分法在求解非齐次偏微分方程中的应用,以及其中涉及的数学原理和算法流程。
总结与回顾在本文中,我们以 MATLAB 为工具,探讨了有限差分法求解非齐次偏微分方程的深度和广度。
通过对有限差分法的基本原理和实际应用进行全面评估,我们详细介绍了有限差分法在求解非齐次偏微分方程中的具体步骤和流程。
我们也共享了在示例应用中对这一过程的个人理解和观点,以期帮助读者更全面、深刻和灵活地理解该主题。
南京理工大学课程考核论文课程名称:高等数值分析论文题目:有限差分法求解偏微分方程*名:**学号: 1成绩:有限差分法求解偏微分方程一、主要内容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 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 uu 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 uu 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 u o 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 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 τ+。
南京理工大学课程考核论文课程名称:高等数值分析论文题目:有限差分法求解偏微分方程姓名:罗晨学号:成绩:有限差分法求解偏微分方程一、主要内容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.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 uu 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 uu 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 u o 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 kk 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 τ+。
2.1.2 古典显格式稳定性分析古典显格式(2-13)写成矩阵形式为()112k k k h h hu ra I raC u f τ+=-++⎡⎤⎣⎦ (2-14)12212,(,,......,,)k k k k kh N N r u u u u u h τ--==其中。
(1)(1)01010100101010N N C -⨯-⎡⎤⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎣⎦ 上面的C 矩阵的特征值是:2cos()1,2,......,1C j h j N λπ==-()12H ra I raC =-+()()()212=122cos()121cos()14sin 1,2,......,12H j C ra ra ra ra j h ra j h j h ra j N λλπππ=-+-+=--=-=-(2-15)使()1H ρ≤,即2114sin 12j hra π-≤-≤ 102ra ≤≤结论:当102ra ≤≤时,所以古典显格式是稳定的。
古典隐格式2.2.1 古典隐格式的推导 将1k t t -=代入式 (2-3)得21,11(,)(,)()()(())j k j k j k k k k k uu x t u x t t t o t t t---∂=+-+-∂ (2-16) 21,(,)(,)()()j k j k j k uu x t u x t o tττ-∂=-⋅+∂ (2-17)得到对时间的一阶偏导数1,(,)(,)()=()j k j k j k u x t u x t u o t ττ--∂+∂ (2-18) 将式(2-9)、(2-18)原方程得到11122(,)(,)(,)2(,)(,)(,)()j k j k j k j k j k j k u x t u x t u x t u x t u x t f x t o h h αττ-+---+⎡⎤-=++⎢⎥⎣⎦(2-19)为了方便把(2-19)写成11122k k k k kj jj j j kj u u u u u f h ατ-+-⎡⎤--+-=⎢⎥⎢⎥⎣⎦(2-20) ()11122k k kk k kj jj j j j u u uu u f h τατ-+----+= (2-21)最后得到古典隐格式的差分格式为()111(12)k k k k k j j j jj ra u r u u u f ατ-+-+-+=+ (2-22)2r hτ=其中,古典隐格式的差分格式的截断误差是2()o h τ+。
2.2.2 古典隐格式稳定性分析将古典隐格式(2-22)写成矩阵形式如下()1212()k k kh h hra I raC u u f r h ττ++-=+=⎡⎤⎣⎦(2-23) 误差传播方程()112k k h h ra I raC v v ++-=⎡⎤⎣⎦(2-24) ()12,A ra I raC B I=+-=所以误差方程的系数矩阵为()1112H A ra I raC --==+-⎡⎤⎣⎦()11,2,......,1122cos H j j N ra ra j hλπ==-+-使()1H ρ≤,显然()21122cos()112(1cos())114sin 2H j ra ra j h ra j h j h ra λπππ=+-=+-=+1H j λ≤恒成立。
结论:对于0r ∀>,即任意网格比下,古典隐格式是绝对稳定的。
Richardson 格式2.3.1 Richardson 格式的推导 将11k k t t t t +-==和,代入式(2-3)得21,1121,11(,)(,)()()(())(,)(,)()()(())i k i k i k k k k k i k i k i k k k k ku u x t u x t t t o t t t u u x t u x t t t o t t t +++---∂⎧=+-+-⎪⎪∂⎨∂⎪=+-+-⎪∂⎩(2-25) 即21,21,(,)(,)()()(,)(,)()()i k i k i k i k i k i ku u x t u x t o t u u x t u x t o t ττττ+-∂⎧=+⋅+⎪⎪∂⎨∂⎪=-⋅+⎪∂⎩(2-26) 由此得到可得 211,(,)(,)()()2i k i k i k u x t u x t uo t ττ++-∂=+∂ (2-27)将式(2-9) 、(2-27)代入原方程得到下式2211112(,)(,)(,)2(,)(,)(,)()2i 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-28)为了方便可以把式(2-28)写成1111222k k k k k k i i i i i i u u u u u f h ατ+-+-⎡⎤--+-=⎢⎥⎣⎦(2-29) 即()111122k k kk k k i i i i i i u u uu u f h τατ+-+----+= (2-30)最后得到Richardson 显格式的差分格式为()1111222k k k k k k i i i i i i u r u u u u f ατ+-+-=-+++(2-31)2r h τ=其中,古典显格式的差分格式的截断误差是22()o h τ+。
2.3.2 Richardson 稳定性分析将Richardson 显格式(2-31)写成如下矩阵形式()11222k k k k h h h h u r C I u u f ατ+-=-++ (2-32)误差传播方程矩阵形式()1122k k k h h hkkh hv r C I v v v v α+-⎧=-+⎪⎨=⎪⎩ (2-33) 再将上面的方程组写成矩阵形式112(2)0k k k hk ra C I I v ww I v ++-⎛⎫⎡⎤== ⎪⎢⎥⎣⎦⎝⎭ (2-34) 系数矩阵的特征值是4cos()4110j ra j h ra π-⎡⎤∧=⎢⎥⎣⎦228sin 102j hra πλλ+-= (2-35) 解得特征值为1,2λ=(2-36){}212,=4sin 12j h Max ra πλλ> (恒成立)(2-37)结论:上式对任意的网比都恒成立,即Richardson 格式是绝对不稳定的。