1 / 13

第 14 章 常微分方程的 MATLAB 求解

第 14 章 常微分方程的 MATLAB 求解. 编者. Outline. 14.1 微分方程的基本概念 14.2 几种常用微分方程类型 14.3 高阶线性微分方程 14.4 一阶微分方程初值问题的数值解 14.5 一阶微分方程组和高阶微分方程的数值解 14.6 边值问题的数值解. 14.1 微分方程的基本概念. 微分方程 : 一般的,凡表示未知函数、未知函数的导数与自变量之间的关系的方程,叫做微分方程,有时也简称方程。 微分方程的阶 : 微分方程中所出现的未知函数的最高阶导数的阶数,叫做微分方程的阶

eilis
Download Presentation

第 14 章 常微分方程的 MATLAB 求解

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第14章 常微分方程的MATLAB求解 编者

  2. Outline • 14.1 微分方程的基本概念 • 14.2 几种常用微分方程类型 • 14.3 高阶线性微分方程 • 14.4 一阶微分方程初值问题的数值解 • 14.5 一阶微分方程组和高阶微分方程的数值解 • 14.6 边值问题的数值解

  3. 14.1 微分方程的基本概念 微分方程:一般的,凡表示未知函数、未知函数的导数与自变量之间的关系的方程,叫做微分方程,有时也简称方程。 微分方程的阶:微分方程中所出现的未知函数的最高阶导数的阶数,叫做微分方程的阶 微分方程的解:找出这样的函数,把这函数代入微分方程能使该方程成为恒等式。这个函数就叫做微分方程的解。 微分方程的通解:如果微分方程的解中含有任意常数,且任意常数的个数与微分方程的阶数相同,这样的解叫做微分方程的通解。 初始条件:设微分方程中的未知函数为,如果微分方程是一阶的,通常用来确定任意常数的条件是时,或写成 其中都是给定的值;如果微分方程是二阶的,通常用来确定任意常数的条件是 其中和都是给定的值,上述这种条件叫做初始条件。 确定了通解中的任意常数以后,就得到微分方程的特解。求微分方程满足初始条件的特解是这样一个问题,叫做一阶微分方程的初值问题,记作 微分方程的解的图形是一条曲线,叫做微分方程的积分曲线。

  4. 14.2 几种常用微分方程类型 1.可分离变量的微分方程一般的,如果一个一阶微分方程能写成 的形式,就是说,能把微分方程写成一端只含的函数和,另一端只含的函数和,那么原方程就称为可分离变量的微分方程。 2.齐次方程如果一阶微分方程可化成的形式,那么就称这方程为齐次方程。 3.一阶线性微分方程线性方程:方程叫做一阶线性微分方程因为 它对于未知函数y 及其导数是一次方程。如果,则上述方程称为齐次的;如果 ,则上述方程称为非齐次的。为了求出非齐次线性方程的解,我们先把换成 零而写出方程该方程叫做对应于非齐次线性方程的齐次线性方程。齐次线性方 程的通解为 非齐次线性方程的通解为 伯努利方程:方程叫做伯努利(Bernoulli)方程。当 时,该方程是线性微分方程,当时,该方程不是线性的,但是通过变量的替换,便可把它化为线性的

  5. 4.可降阶的高阶微分方程 型的微分方程:微分方程的右端仅含有自变量 x ,容易看出,只要把作为新的未知函数,那么微分方程即化为新未知函数的一 阶微分方程,两边积分,就得到一个阶的微分方程 同理可得 依此法继续进行,接连积分 n次,便得到方程的含有 n 个任意常数的通解。 型的微分方程:方程的右端不显含未知函数 y。如果我们设,那么 因此,方程就成为,这是一个关于变量的一阶微分方程 ,设其通解为,又因此又得到一个一阶微分方程 对它进行积分,便得到方程的通解为 型的微分方程:方程中不显含自变量x ,为了求出它的解,我们令,并利用复合函数求导法则把化为对的导数,即 这样,方程就成为这是一个关于变量的一阶微分方程,设它的通解为分离变量并积分,便得方程的通解为

  6. 14.3 高阶线性微分方程 1.线性微分方程解的结构在 n 阶微分方程中,若是的一次有理整式,则称此方程为 n 阶线性微分方程。一般形式可写成: 线性微分方程解的结构定理: 如果是方程 的n个线性无关的解,则该方程的通解为 其中是任意常数。 设是方程的一个特解, 是对应的齐次线性方程的通解,则 是上述方程的通解。 若和分别是方程 与 的特解,则 是方程 的特解 2.常系数线性微分方程的MATLAB符号求解 MATLAB中提供了dsolve函数求解微分方程(组)。该函数允许用字符串的形式描述微分方程及初值、边值条件,最终将给出微分方程的解析解。

  7. 14.4 一阶微分方程初值问题的数值解 1.欧拉法及其MATLAB实现 对于一阶微分方程的初值问题,若要求其数值解,我们可以采用 离散化方法。在求解区间上取一组节点: 称为步长。为简单起见,仅考虑等距步长,即 将方程的两端在区间上积分,得到 即 应用左矩形公式:,则有 略去上式中的,得考虑到,设已求得, 的1个近似值,则由上式可得由 可依次求出。称上式即为求解初值问题的Euler公式。

  8. 2. Runge-Kutta法及其MATLAB实现 考虑微分方程,由Lagrange微分中值定理,存在,使得 于是,由得 记,则称为区间上的平均斜率。这样,只要给 出了的一种算法,就可以得到求解微分方程初值问题的一种计算公式。显然,显式Euler公式就是以作为平均斜率的近似。 经典四阶Runge-Kutta方法的迭代公式:

  9. 14.5 一阶微分方程组和高阶微分方程的数值解 1. 一阶微分方程组 前面研究的是求解单微分方程的数值解法,对于微分方程组,只需将y 理解成向量,理解成向量函数,那么对前面研究过的各种计算公式即可用到一阶微分方程组上来。 2. 高阶微分方程 对于高阶微分方程组的数值求解,首先应将其变换成一阶显式常微分方程组。其具体转换方法如下:(1)将微分方程的最高阶变量移到等式的左边,其他移到右边,并按阶次从低到高排列,(这里以两个高阶微分方程的转换为例)假设两个高阶微分方程最后能够显式的表达成下述形式: (2)为每一阶微分式选择状态变量,最高阶除外 (3)根据(2)中选用的状态变量,写出所有状态变量的一阶微分的表达式 最后,对初值进行相应的变换,就可以得到所期盼的一阶微分方程组了。 3.微分方程组的MATLAB求解函数 MATLAB提供了一系列的函数来求解微分方程组,包括ode系列函数,另外还提供了几类特殊的微分方程的求解函数,例如ode15s,ode15i等。

  10. 14.6 边值问题的数值解 1.打靶法打靶法也称为试射法,其基本思想是把边值问题作初值问题来求解,从满足左端边界条件的解曲线中寻找也满足右端边界条件的解。 线性方程边值问题的打靶法: 考虑如下给出的二阶线性边值问题 该边值问题的打靶法求解过程可以由如下步骤完成:(1)计算下面齐次微分方程在区间上的数值解, ,初值条件: ;(2)计算下面齐 次微分方程在区间上的数值解, ,初值条件: ;(3)计算下面初值问题在区间上的数值解, ,初值条件 : ;(4)若,则 计算;(5)计算下面初值问题的数值解,则即为原边值问 题的数值解,初值条件:

  11. 非线性方程边值问题的打靶法: 考虑二阶常微分方程的边值问题,边界条件为。假定 该问题可以转换为下面的初值问题 则问题转化为求解,这是一个复杂的超越方程,可以考虑引入牛顿迭代法求 解参数 m。具体的迭代公式为: 式中 通过这些关系可以建立方程 具体计算中可以指定一个m 值,然后求解上面的初值问题,将结果代入上面的迭代公式中迭代一步,并将结果代入上式中重新计算,直至两次计算出来的 m值的误差在允许的范围内为止,最后将 m值代入初值问题即可求解原始问题。

  12. 2.边值问题的MATLAB函数求解 MATLAB能求解的边值问题的一般形式如下其中y 为状态变量向量 为方程中其他未知参数向量。该方程已知的边界值为 MATLAB提供了专门求解边值问题的bvp解算器bvpslover。要想求解一个常微分方程的边值问题,一般应该遵循以下几个步骤: (1)参数初始化 (2)微分方程和边值问题的MATLAB函数描述 (3)边值问题的求解

  13. 谢谢大家!

More Related