当前位置:文档之家› KdV方程的另一种可积离散化

KdV方程的另一种可积离散化

KdV方程的另一种可积离散化
KdV方程的另一种可积离散化

差分法求解偏微分方程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 k t t x x h τ ++-=?? -=?(2-2) 2.1古典显格式 2.1.1古典显格式的推导 由泰勒展开公式将(,)u x t 对时间展开得 2,(,)(,)( )()(())i i k i k k k u u 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 u u x t u x t t t o t t t u u x t o t ττ+++?=+-+-??=+?+?(2-4) 得到对时间的一阶偏导数 1,(,)(,)()=()i k i k i k u x t u x t u o t ττ+-?+?(2-5) 由泰勒展开公式将(,)u x t 对位置展开得 223,,21(,)(,)()()()()(())2!k i k i k i i k i i u u u x t u x t x x x x o x x x x ??=+-+-+-??(2-6) 当11i i x x x x +-==和时,代入式(2-6)得

第十章-偏微分方程数值解法

第十章 偏微分方程数值解法 偏微分方程问题,其求解十分困难。除少数特殊情况外,绝 大多数情况均难以求出精确解。因此,近似解法就显得更为重要。本章仅介绍求解各类典型偏微分方程定解问题的差分方法。 §1 差分方法的基本概念 1.1 几类偏微分方程的定解问题 椭圆型方程:其最典型、最简单的形式是泊松(Poisson )方程 ),(22 2 2y x f y u x u u =??+??=? 特别地,当 0),(≡y x f 时,即为拉普拉斯(Laplace )方程,又称 为调和方程 22 22 =??+??=?y u x u u Poisson 方程的第一边值问题为 ?? ?? ?Ω ?=Γ=Ω∈=??+??Γ∈),(),(),(),(),(22 22y x y x u y x y x f y u x u y x ? 其中 Ω为以Γ为边界的有界区域,Γ为分段光滑曲线, ΓΩY 称为定解区域,),(y x f ,),(y x ?分别为Ω,Γ上的已知连 续函数。 第二类和第三类边界条件可统一表示为

),(),(y x u u y x ?α=??? ? ??+??Γ∈n 其中n 为边界Γ的外法线方向。当0=α时为第二类边界条件, 0≠α时为第三类边界条件。 抛物型方程:其最简单的形式为一维热传导方程 2 20(0)u u a a t x ??-=>?? 方程可以有两种不同类型的定解问题: 初值问题 ?? ???+∞ <<∞-=+∞<<-∞>=??-??x x x u x t x u a t u )()0,(,00 22 ? 初边值问题 2 212 00,0(,0)()0(0,)(),(,)()0u u a t T x l t x u x x x l u t g t u l t g t t T ????-=<<<

第五章离散偏微分方程

2013届毕业生外文文献翻译 学院理学院 专业数学与应用数学 姓名孟文静 学号201101210511 指导教师张兆忠

第五章 离散偏微分方程 5.1 介绍 有多种方法求得的偏微分方程的数值解,然而本质上这些都涉及到构建一些近似值或获得求解的方程组的近似值,得到近似的离散系统的解决方案。这个过程通常有两个部分。第一个涉及发展近似值的一个未知的函数,它的导数以及其他涉及使用或应用这些算法计算出所需的数值的数量。虽然这过于简单化,但它提供了一个方便的研究技术的起点来求解偏微分方程。 离散偏微分方程的最直观直接的方法是代替部分采用有限差分近似的导数,从而构造一个泛函微分方程(FDE )代替偏微分方程。本质上偏微分方程的好处是被替换为一个泛函微分方程来产生一组代数方程组,原则上可以解决,以构建偏微分方程的一个近似解。完成离散化后,构建一个合适的计算方法来解决泛函微分方程的任务,具有挑战性,的确可能影响导数如何先被离散化。 在开发一个解决偏微分方程的误差的数值方法时,需要一个数值解的质量评估。例如,确定提出的方法是否收敛,即,是否在有限的邻域内,近似解可以尽可能接近的偏微分方程的精确解,这是开发新方法的过程的一个重要部分。此外还有有效的计算方法和更多新的可平行性算法来检验和评估。 本章介绍了这些思路,专注于开发取代有限差异的导数的技术,还展示了在开发一个简单的数值方案的背景下如何构建的一些偏微分方程的近似解。其他的内容将在后面章节介绍。 5.2 在实数域上构建有限差分近似 对一个函数的导数f 的差分近似的建设可以直接找到多项式,使该多项式插值f 在指定的一列点上,0,...,n x x 。考虑使用二次多项式 ()122012,p x a a x a x =++ ()5.1 差值f 在点01,,x x 和2x ,即,使用局部坐标系,让10,i i x x h +==和22i x h +=,然后 ()20120i i i f x a a x a x a =++= ()5.2 ()22101121012i i i f x a a x a x a a h a h +++=++=++ ()5.3 ()()()2 2201222012=22i i i f x a a x a x a a h a h +++++=++ ()5.4 这个含三个未知数的三个方程可化为 ()()00i a f x f == ()5.5

第三章线性系统状态方程的解

第三章 系统的分析——状态方程的解 §3-1线性连续定常齐次方程求解 一、齐次方程和状态转移矩阵的定义 1、齐次方程 状态方程的齐次方程部分反映系统自由运动的状况(即没有输入作用的状况),设系统的状态方程的齐次部分为: )()(t Ax t x =& 线性定常连续系统: Ax x =& 初始条件:00x x t == 2、状态转移矩阵的定义 齐次状态方程Ax x =&有两种常见解法:(1)幂级数法;(2)拉氏变换法。其解为 )0()(x e t x At ?=。其中At e 称为状态转移矩阵(或矩阵指数函数、矩阵指数),记为: At e t =)(φ。 若初始条件为)(0t x ,则状态转移矩阵记为:) (0 0)(t t A e t t -=-Φ 对于线性时变系统,状态转移矩阵写为),(0t t φ,它是时刻t ,t 0的函数。但它一般不能写成指数形式。 (1)幂级数法——直接求解 设Ax x =&的解是t 的向量幂级数 Λ ΛΛΛ+++++=k k t b t b t b b t x 2210)( 式中ΛΛ,,, ,,k b b b b 210都是n 维向量,是待定系数。则当0=t 时, 000b x x t === 为了求其余各系数,将)(t x 求导,并代入)()(t Ax t x =&,得: Λ ΛΛΛ&+++++=-1232132)(k k t kb t b t b b t x )(2210ΛΛΛΛ+++++=k k t b t b t b b A

上式对于所有的t 都成立,故而有: ????? ??????======00 3 230 21201!1!31312121b A k b b A Ab b b A Ab b Ab b K K M 且有:00x b = 故以上系数完全确定,所以有: Λ ΛΛΛ+++++=k k t b t b t b b t x 2210)( ΛΛ++++ +=k k t b A k t b A t Ab b 020200! 1 !21 )0()! 1!21(22x t A k t A At I k k ΛΛ+++++= 定义(矩阵指数或矩阵函数): ∑∞==+++++=022! 1!1!21K k k k k At t A k t A k t A At I e ΛΛ 则 )0()(x e t x At ?=。 (2)拉氏变换解法 将Ax x =&两端取拉氏变换,有 )()0()(s AX X s sX =- )0()()(X s X A sI =- )0()()(1X A sI s X ?-=- 拉氏反变换,有 )0(])[()(1 1x A sI L t x ?-=--

连续传递函数离散化的方法与原理

目录

第一章 模拟化设计基础 数字控制系统的设计有两条道路,一是模拟化设计,一是直接数字设计。如果已经有成熟的模拟控制器,可以节省很多时间和部分试验费用,只要将模拟控制器离散化即可投入应用。如果模拟控制器还不存在,可以利用已有的模拟系统的设计经验,先设计出模拟控制器,再进行离散化。 将模拟控制器离散化,如果用手工进行,计算量比较大。借助数学软件MATLAB 控制工具箱,可以轻松地完成所需要的全部计算步骤。如果需要的话,还可以使用MATLAB 的SIMULINK 工具箱,进行模拟仿真。 第一节 步骤 步骤1 模拟控制器的处理 在数字控制系统中,总是有传输特性为零阶保持器的数模转换器(DAC ),因此,如果模拟控制器尚未设计,则应以下 图的方式设计模拟控制器,即在对象前面加上一个零阶保持器,形成一个新对象Ts 1e G s s ()--,然后针对这个新对象求模拟 控制器D(s)。事实上,模拟控制器一般是已经设计好的,无法或不方便更改了,离散化后的系统只好作为近似设计了。 然而,按照上述思路,可否将已有的控制器除以一个零阶保持器再离散化呢?还没有这方面的实际经验。 以下假设选定的G(s),D(s)如下图,而且不对G(s)作添加保持器的预处理。 步骤2 离散化模拟控制器 离散化模拟控制器之前,先要确定离散化算法和采样时间。离散化算法有好几种,第二章中有详细的论述,现假定采用双线性变换法。确定采样时间,需要考虑被控对象的特性,计算机的性能,以及干扰信号的影响等,初步可按采样时间T<,Tp 为被控对象时间常数,或T=~τ,为被控对象的纯滞后,初步确定后再综合平衡其它因素,当然这需要一定的经验,现在假定取秒。 假设模拟控制器为s 2 D s 8s 15 +=?+(),在MATLAB 中,用c2d 函数进行离散化,过程为: 转换结果为: 步骤3 检验数字控制器的性能 数字控制器的性能项目比较多,我们仅以直流增益,频率特性,零极点分布说明。 直流增益 dcgain(dz) 返回直流增益 频率特性 bode(ds,'r',dz,'g') 伯德图,见下页左图 零极点分布 pzmap(dz) 零极点分布图,见下页右图 步骤4 离散化控制对象 为了进行模拟仿真,需要对控制对象进行离散化,由于步骤1所说的原因,应把被控对象视为零阶保持器与原对象的串连,即应对 Ts 1e G s s ()--进行离散化,这时可在c2d 函数中使用零阶保持器(zoh)方法,如果认为不需要添加零阶保持器,即直接对G(s)离散化,则应在c2d 函数中使用冲击响应不变法(imp )。 借用零阶保持器(zoh)方法,将对象20 G s s s 2()() =+带一阶保持器离散化的过程如下: 转换结果为: 步骤5 模拟仿真 求离散系统的闭环传递函数和连续系统的闭环传递函数。 ds=zpk(-2,-15,8) %建立模拟控制器的s 传递函数 dz=c2d(ds,,'tustin') %将模拟控制器按tustin 方法转换为z 传递函数的数字控制器 ...... %模拟控制器D(s)转换为D(z)的过程见前 gs=zpk([ ],[0,-2],20) %建立对象的s 传递函数 g1z=c2d(gs,,'zoh') %借用c2d 函数进行带零阶保持器的对象的离散化

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

有限差分法求解偏微 分方程

有限差分法求解偏微分方程 摘要:本文主要使用有限差分法求解计算力学中的系统数学模型,推导了有限差分法的 理论基础,并在此基础上给出了部分有限差分法求解偏微分方程的算例验证了推导的正确性及操作可行性。 关键词:计算力学,偏微分方程,有限差分法 Abstract:This dissertation mainly focuses on solving the mathematic model of computation mechanics 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 Method

1 引言 机械系统设计常常需要从力学观点进行结构设计以及结构分析,而这些分析的前提就是建立工程问题的数学模型。通过对机械系统应用自然的基本定律和原理得到带有相关边界条件和初始条件的微分积分方程,这些微分积分方程构成了系统的数学模型。 求解这些数学模型的方法大致分为解析法和数值法两种,而解析法的局限性众所周知,当系统的边界条件和受载情况复杂一点,往往求不出问题的解析解或近似解。另一方面,计算机技术的发展使得计算更精确、更迅速。因此,对于绝大多数工程问题,研究其数值解法更具有实用价值。对于微分方程而言,主要分为差分法和积分法两种,本论文主要讨论差分法。 2 有限差分法理论基础 2.1 有限差分法的基本思想 当系统的数学模型建立后,我们面对的主要问题就是微分积分方程的求解。基本思想是用离散的只含有限个未知量的差分方程组去近似地代替连续变量的微分方程和定解条件,并把差分方程组的解作为微分方程定解问题的近似解。将原方程及边界条件中的微分用差分来近似,对于方程中的积分用求和或及机械求积公式来近似代替,从而把原微分积分方程和边界条件转化成差分方程组。有限差分法求解偏微分方程的步骤主要有以下几步: 区域离散,即把所给偏微分方程的求解区域细分成由有限个格点组成的网格,这些离散点称作网格的节点;

第九章 偏微分方程差分方法

170 第9章 偏微分方程的差分方法 含有偏导数的微分方程称为偏微分方程。由于变量的增多和区域的复杂性,求偏微分方程的精确解一般是不可能的,经常采用数值方法求方程的近似解。偏微分方程的数值方法种类较多,最常用的方法是差分方法。差分方法具有格式简单,程序易于实现,计算量小等优点,特别适合于规则区域上偏微分方程的近似求解。本章将以一些典型的偏微分方程为例,介绍差分方法的基本原理和具体实现方法。 9.1椭圆型方程边值问题的差分方法 9.1.1 差分方程的建立 最典型的椭圆型方程是Poisson (泊松)方程 G y x y x f y u x u u ∈=??+??-≡?-),(),,()(2222 (9.1) G 是x ,y 平面上的有界区域,其边界Γ为分段光滑的闭曲线。当f (x ,y )≡0时,方程 (9.1)称为Laplace(拉普拉斯)方程。椭圆型方程的定解条件主要有如下三种边界条件 第一边值条件 ),(y x u α=Γ (9.2) 第二边值条件 ),(y x n u β=??Γ (9.3) 第三边值条件 ),()( y x ku n u γ=+??Γ (9.4) 这里,n 表示Γ上单位外法向,α(x,y ),β(x,y ),γ(x,y )和k (x,y )都是已知的函数,k (x,y )≥0。满足方程(9.1)和上述三种边值条件之一的光滑函数u (x ,y )称为椭圆型方程边值问题的解。 用差分方法求解偏微分方程,就是要求出精确解u (x ,y )在区域G 的一些离散节点(x i ,y i )上的近似值u i ,j ≈(x i ,y i )。差分方法的基本思想是,对求解区域G 做网格剖分,将偏微分方程在网格节点上离散化,导出精确解在网格节点上近似值所满足的差分方程,最终通过求解差分方程,通常为一个线性方程组,得到精确解在离散节点上的近似值。 设G ={0

连续系统离散化处理基本方法

在数字计算机上对连续系统进行仿真时,首先遇到的问题是如何解决数字计算机在数值及时间上的离散性与被仿真系统数值及时间上的连续性这一基本问题。 从根本意义上讲,数字计算机所进行的数值计算仅仅是“数字”计算,它表示数值的精度受限于字长,这将引入舍入误差;另一方面,这种计算是按指令一步一步进行的,因而,还必须将时间离散化,这样就只能得到离散时间点上系统性能。用数字仿真的方法对微分方程的数值积分是通过某种数值计算方法来实现的。任何一种计算方法都只能是原积分的一种近似。因此,连续系统仿真,从本质上是对原连续系统从时间、数值两个方面对原系统进行离散化,并选择合适的数值计算方法来近似积分运算,由此得到的离散模型来近似原连续模型。如何保证离散模型的计算结果从原理上确能代表原系统的行为,这是连续系统数字仿真首先必须解决的问题。 设系统模型为:),,(t u y f y =&,其中u (t )为输入变量,y (t )为系统变量;令仿真时间间隔为h ,离散化后的输入变量为)(?k t u ,系统变量为)(?k t y ,其中k t 表示t=kh 。如果)()(?k k t u t u ≈,)()(?k k t y t y ≈,即0)()(?)(≈-=k k k u t u t u t e ,0)()(?)(≈-=k k k y t y t y t e (对所有k=0,1,2,…),则可认为两模型等价,这称为相似 原理(参见图)。 实际上,要完全保证0)(,0)(==k y k u t e t e 是很困难的。进一步分析离散化引的误差,随着计算机技术的发展,由计算机字长引入的舍入误差可以忽略,关键是数值积分算法,也称为仿真建模方法。相似原理用于仿真时,对仿真建模方法有三个基本要求: (1)稳定性:若原连续系统是稳定的,则离散化后得到的仿真模型也应是稳定的。关于稳定性的详细讨论将在节中进行。 (2)准确性:有不同的准确性评价准则,最基本的准则是: 绝对误差准则:δ≤-=)()(?)(k k k y t y t y t e 相对误差准则:δ≤-= )(?)()(?)(k k k k y t y t y t y t e 其中 规定精度的误差量。 原连续模型 仿真模型 )(≈k y t e 图 相

五点差分法(matlab)解椭圆型偏微分方程

用差分法解椭圆型偏微分方程 -(Uxx+Uyy)=(pi*pi-1)e^xsin(pi*y) 0kmax) break; end if(max(max(t))

五点差分法解椭圆型偏微分方程

用差分法解椭圆型偏微分方程 -(Uxx+Uyy)=(pi*pi-1)e^xsin(pi*y) 0kmax) break; end if(max(max(t))

求解偏微分方程三种数值方法

数值模拟偏微分方程的三种方法介绍 (有限差分方法、有限元方法、有限体积方法) I.三者简介 有限差分方法(Finite Difference Methods)是数值模拟偏微分方程最早采用的方法,至今仍被广泛使用。该方法包括区域剖分和差商代替导数两个步骤。首先将求解区域划分为差分网格,用有限个网格节点代替连续的求解区域。其次,利用Taylor级数展开等方法将偏微分方程中的导数项在网格节点上用函数值的差商代替进行离散,从而建立以网格节点上的值为未知量的代数方程组。该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念直观,表达简单,是发展较早且十分成熟的数值方法。 差商代替导数后的格式称为有限差分格式,从格式的精度来考虑,有一阶格式、二阶格式和高阶格式。从差分的空间离散形式来考虑,有中心格式和迎风格式。对于瞬态方程,考虑时间方向的离散,有显格式、隐格式、交替显隐格式等。目前常见的差分格式,主要是以上几种格式的组合,不同的组合构成不同的差分格式。差分方法主要适用于结构网格,网格的大小一般根据问题模型和Courant 稳定条件来决定。 有限元方法(Finite Element Methods)的基础是虚位移原理和分片多项式插值。该方法的构造过程包括以下三个步骤。首先,利用虚位移原理得到偏微分方程的弱形式,将计算区域划分为有限个互不重叠的单元(三角形、四边形、四面体、六面体等),在每个单元上选择合适的节点作为求解函数的插值点,将偏微分方程中的变量改写成由各变量或其导数的节点值与所选用的分片插值基函数组成的线性表达式,得到微分方程的离散形式。利用插值函数的局部支集性质及数值积分可以得到未知量的代数方程组。 有限元方法有较完善的理论基础,具有求解区域灵活(复杂区域)、单元类型灵活(适于结构网格和非结构网格)、程序代码通用(数值模拟软件多数基于有限元方法)等特点。有限元方法最早应用于结构力学,随着计算机的发展已经渗透到计算物理、流体力学与电磁学等各个数值模拟领域。

现设线性时变系统的离散状态方程和观测方程

现设线性时变系统的离散状态方程和观测方程为: X(k) = F(k,k-1)·X(k-1)+T(k,k-1)·U(k-1) Y(k) = H(k)·X(k)+N(k) 其中 X(k)和Y(k)分别是k时刻的状态矢量和观测矢量 F(k,k-1)为状态转移矩阵 U(k)为k时刻动态噪声 T(k,k-1)为系统控制矩阵 H(k)为k时刻观测矩阵 N(k)为k时刻观测噪声 则卡尔曼滤波的算法流程为: 预估计X(k)^= F(k,k-1)·X(k-1) 计算预估计协方差矩阵 C(k)^=F(k,k-1)×C(k)×F(k,k-1)'+T(k,k-1)×Q(k)×T(k,k-1)' Q(k) = U(k)×U(k)' 计算卡尔曼增益矩阵 K(k) = C(k)^×H(k)'×[H(k)×C(k)^×H(k)'+R(k)]^(-1) R(k) = N(k)×N(k)' 更新估计 X(k)~=X(k)^+K(k)×[Y(k)-H(k)×X(k)^] 计算更新后估计协防差矩阵 C(k)~ = [I-K(k)×H(k)]×C(k)^×[I-K(k)×H(k)]'+K(k)×R(k)×K(k)' X(k+1) = X(k)~ C(k+1) = C(k)~ 重复以上步骤 **********************************************

Matlab实现代码 ******************************************************************************* ************************************************** %%%% Constant Velocity Model Kalman Filter Simulation %%%% %========================================================================== clear all; close all; clc; %% Initial condition ts = 1; % Sampling time t = [0:ts:100]; T = length(t); %% Initial state x = [0 40 0 20]'; x_hat = [0 0 0 0]'; %% Process noise covariance q = 5 Q = q*eye(2); %% Measurement noise covariance r = 5 R = r*eye(2); %% Process and measurement noise w = sqrt(Q)*randn(2,T); % Process noise v = sqrt(R)*randn(2,T); % Measurement noise %% Estimate error covariance initialization p = 5; P(:,:,1) = p*eye(4); %========================================================================== %% Continuous-time state space model %{ x_dot(t) = Ax(t)+Bu(t) z(t) = Cx(t)+Dn(t) %} A = [0 1 0 0; 0 0 0 0;

实验六 离散系统状态方程的求解

实验六 离散系统状态方程的求解 一、实验目的 (1)了解离散系统状态方程求解方法。 (2)了解离散系统信号流图化简的方法。 (3)了解函数ode45的调用方法。 二、实验原理 离散系统状态方程的一般形式为 x(k+1)=Ax(k)+Bf(k) 在些只对单输入的n 阶离散系统的状态议程求解。一般采用递推迭代的方式求解,由裙的条件x(0)和激励f(0)求出k=1时的x(1),然后依次迭代求得所要求的x(0),……,x(n)的值。 编程时应注意,MATLAB 中变量下标不允许为零,则裙点的下标只能取1,第n 步的x 的下标为n+1。 三、涉及的MATLAB 函数 zeros(2,1) y=lsim(sys,f,[],x0) for i=1:n end clear all 采用函数ode45可以求解微分方程。其调用格式如下 [t,y]=ode45(odefun,tspan,y0) 其中,odefun 指状态方程的表达式,tspan 指状态方程对应的起止时间]t0,tf],y0指状态变量的初始状态。 四、实验内容与方法 1.验证性实验 采用MATLAB 语言编程,求解离散系统状态方程,并绘制状态变量的波形。 (1)已知离散系统的状态方程为 )(01)1()1(25.025.005.0)1()1(2121k f k x k x k x k x ?? ????+??????++??????=??????++ 初始条件为x(0)=?? ????-5.01,激励为f(k)=0.5ε(k),确定该状态方程x(k)前10步的解,并画出波形。 MATLAB 程序: %离散系统状态求解 %A=input(‘系统矩阵 A=’) %B=input(‘系数矩阵 B=’) %x0=input(‘初始状态矩阵 x0=’)

偏微分方程数值解法

偏微分方程数值解法 Prepared on 22 November 2020

第十章偏微分方程数值解法 偏微分方程问题,其求解十分困难。除少数特殊情况外,绝 大多数情况均难以求出精确解。因此,近似解法就显得更为重要。本章仅介绍求解各类典型偏微分方程定解问题的差分方法。 §1差分方法的基本概念 几类偏微分方程的定解问题 椭圆型方程:其最典型、最简单的形式是泊松(Poisson)方程 特别地,当 ) , (≡ y x f 时,即为拉普拉斯(Laplace)方程,又 称 为调和方程 Poisson方程的第一边值问题为 其中Ω为以Γ为边界的有界区域,Γ为分段光滑曲线, ΓΩ 称为定解区域, ) ,(y x f , ) , (y x ? 分别为Ω,Γ上的已知 连续函数。 第二类和第三类边界条件可统一表示为 其中n 为边界Γ的外法线方向。当0 = α时为第二类边界条件,0 ≠ α时为第三类边界条件。 抛物型方程:其最简单的形式为一维热传导方程方程可以有两种不同类型的定解问题: 初值问题

初边值问题 其中 ) (x ? , )( 1 t g , )( 2 t g 为已知函数,且满足连接条件 边界条件 )( ),( ), ( ),0( 2 1 t g t l u t g t u= = 称为第一类边界条 件。 第二类和第三类边界条件为 其中 )( 1 ≥ t λ , )( 2 ≥ t λ 。当 )( )( 2 1 ≡ =t tλ λ 时,为第二 类边界条件, 否则称为第三类边界条件。 双曲型方程: 最简单形式为一阶双曲型方程 物理中常见的一维振动与波动问题可用二阶波动方程 描述,它是双曲型方程的典型形式。方程的初值问题为 边界条件一般也有三类,最简单的初边值问题为 差分方法的基本概念 差分方法又称为有限差分方法或网格法,是求偏微分方程定解问题的数值解中应用最广泛的方法之一。 它的基本思想是:先对求解区域作网格剖分,将自变量的连续变化区域用有限离散点(网格点)集代替;将问题中出现的连续变量的函数用定义在网格点上离散变量的函数代替;通过用网格点上函数的差商代替导数,将含连续变量的偏微分方程定解问题化成只含有限个未知数的代数方程组(称为差分格式)。如果差分格式有解,且当网格无限变小时其解收敛于原微分方程定解

五点差分法(matlab)解椭圆型偏微分方程

用差分法解椭圆型偏微分方程 U(0,y)=si n(pi*y),U(2,y)=eA2si n( pi*y); 先自己去看一下关于五点差分法的理论书籍 Matlab 程序: unction [p e u x y k]=wudianchafenfa(h,m,n,kmax,ep) % g-s 迭代法解五点差分法问题 %kmax 为最大迭代次数 %m,n 为x,y 方向的网格数,例如(2-0 ) /0.01=200; %e 为误差,p 为精确解 syms temp ; u=zeros(n+1,m+1); x=0+(0:m)*h; y=0+(0:n)*h; for (i=1:n+1) u(i,1)=sin(pi*y(i)); u(i,m+1)=exp(1)*exp(1)*sin(pi*y(i)); end for (i=1:n) for ( j=1:m) f(i,j)=(pi*pi-1)*exp(x(j))*sin(pi*y(i)); end -(Uxx+Uyy)=(pi*pi-1)eAxsin(pi*y) 0

end t=zeros(n-1,m-1); for (k=1:kmax) for (i=2:n) for ( j=2:m) temp=h*h*f(i,j)/4+(u(i,j+1)+u(i,j-1)+u(i+1,j)+u(i- 1,j))/4; t(i,j)=(temp-u(i,j))*(temp-u(i,j)); u(i,j)=temp; end end t(i,j)=sqrt(t(i,j)); if (k>kmax) break ; end if (max(max(t))

连续系统离散化分析

1 实验一 离散系统的分析 一 实验目的 1.学习利用采样控制理论; 2.使用MATLAB 理论进行分析; 3. 学习利用z 变换与反变换分析离散控制系统; 二、实验步骤 1.开机执行程序 C :\matlab \bin \matlab.exe (或用鼠标双击图标)进人MATLAB 命令窗口; 2.运用所学自动控制理论z 变换与反变换,使用MATLAB 的基本知识分析离散控制系统的基本性质及进行控制系统的设计。 3. MATLAB 离散系统基本命令 模型转换 1)连续系统离散化 sysd=c2d(sys,T) T 为采样时间 sysd=c2d(sys,T,method) method 有四种模式: a. ‘zoh’---采用零阶保持器, b. ‘foh’---采用一阶保持器, c. ‘tustin’---采用双线性逼近(tustin )方法, d. ‘preqarp’---采用改进的(tustin )方法, 2)离散系统连续化 sys=d2c(sysd,T,method) T 为采样时间 例 设) 1(1)(+=s s s g , T=0.1s , 求G(z) 键入命令:sys=tf([1],[1 1 0]); c2d(sys,0.1) %采样时间0.1s 得到离散传递函数: 当采样时间取T=1s 时: 0.004837 z + 0.004679 G (z )= ---------------------------- z^2 - 1.905 z + 0.9048 0.3679 z + 0.2642 G (z )= ---------------------------- z^2 - 1.368 z + 0.3679

偏微分方程差分方法汇总

第9章 偏微分方程的差分方法 含有偏导数的微分方程称为偏微分方程。由于变量的增多和区域的复杂性,求偏微分方程的精确解一般是不可能的,经常采用数值方法求方程的近似解。偏微分方程的数值方法种类较多,最常用的方法是差分方法。差分方法具有格式简单,程序易于实现,计算量小等优点,特别适合于规则区域上偏微分方程的近似求解。本章将以一些典型的偏微分方程为例,介绍差分方法的基本原理和具体实现方法。 9.1椭圆型方程边值问题的差分方法 9.1.1 差分方程的建立 最典型的椭圆型方程是Poisson (泊松)方程 G y x y x f y u x u u ∈=??+??-≡?-),(),,()(2222 (9.1) G 是x ,y 平面上的有界区域,其边界Γ为分段光滑的闭曲线。当f (x ,y )≡0时,方程(9.1)称为Laplace(拉普拉斯)方程。椭圆型方程的定解条件主要有如下三种边界条件 第一边值条件 ),(y x u α=Γ (9.2) 第二边值条件 ),(y x n u β=??Γ (9.3) 第三边值条件 ),()( y x ku n u γ=+??Γ (9.4) 这里,n 表示Γ上单位外法向,α(x,y ),β(x,y ),γ(x,y )和k (x,y )都是已知的函数,k (x,y )≥0。满足方程(9.1)和上述三种边值条件之一的光滑函数u (x ,y )称为椭圆型方程边值问题的解。 用差分方法求解偏微分方程,就是要求出精确解u (x ,y )在区域G 的一些离散节点(x i ,y i )上的近似值u i ,j ≈(x i ,y i )。差分方法的基本思想是,对求解区域G 做网格剖分,将偏微分方程在网格节点上离散化,导出精确解在网格节点上近似值所满足的差分方程,最终通过求解差分方程,通常为一个线性方程组,得到精确解在离散节点上的近似值。 设G ={0

有限差分法解偏微分方程

有限差分法解偏微分方程综述 绪论 有限元方法最早应用于结构力学,后来随着计算机的发展慢慢用于流体力学的数值模拟。在有限元方法中,把计算域离散剖分为有限个互不重叠且相互连接的单元,在每个单元内选择基函数,用单元基函数的线形组合来逼近单元中的真解,整个计算域上总体的基函数可以看为由每个单元基函数组成的,则整个计算域内的解可以看作是由所有单元上的近似解构成。 有限差分方法(FDM)是计算机数值模拟最早采用的方法,至今仍被广泛运用。该方法将求解域划分为差分网格,用有限个网格节点代替连续的求解域。有限差分法以Taylor 级数展开等方法,把控制方程中的导数用网格节点上的函数值的差商代替进行离散,从而建立以网格节点上的值为未知数的代数方程组。该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念直观,表达简单,是发展较早且比较成熟的数值方法。 对于有限差分格式,从格式的精度来划分,有一阶格式、二阶格式和高阶格式。 从差分的空间形式来考虑,可分为中心格式和逆风格式。 考虑时间因子的影响,差分格式还可以分为显格式、隐格式、显隐交替格式等。 目前常见的差分格式,主要是上述几种形式的组合,不同的组合构成不同的差分格式。差分方法主要适用于有结构网格,网格的步长一般根据实际地形的情况和柯朗稳定条件来决定。构造差分的方法有多种形式, 目前主要采用的是泰勒级数展开方法。其基本的差分表达式主要有三种形式:一阶向前差分、一阶向后差分、一阶中心差分和二阶中心差分等,其中前两种格式为一阶计算精度,后两种格式为二阶计算精度。通过对时间和空间这几种不同差分格式的组合,可以组合成不同的差分计算格式。 有限元方法的基础是变分原理和加权余量法,其基本求解思想是把计算域划分为有限个互不重叠的单元,在每个单元内,选择一些合适的节点作为求解函数的插值点,将微分方程中的变量改写成由各变量或其导数的节点值与所选用的插值函数组成的线性表达式,借助于变分原理或加权余量法,将微分方程离散求解。采用不同的权函数和插值函数形式,便构成不同的有限元方法。 有限差分法求解偏微分方程 在采用数值计算方法求解偏微分方程时,若将每一处导数由有限差分近似公式替代,从而把求解偏微分方程的问题转换成求解代数方程的问题,即所谓的有限差分法。有限差分法求解偏微分方程的步骤如下: 1、区域离散化,即把所给偏微分方程的求解区域细分成由有限个格点组成的网格; 2、近似替代,即采用有限差分公式替代每一个格点的导数; 3、逼近求解。换而言之,这一过程可以看作是用一个插值多项式及其微分来代替偏微分方程的解的过程 有限差分法的应用 抛物型方程的差分方法 1. 简单差分法

相关主题
文本预览
相关文档 最新文档