常微分方程 数值解法精.ppt
常微分方程 数值解法第1页,本讲稿共37页对于一个常微分方程:通常会有无穷个解。如:因此,我们要加入一个限定条件。通常会在端点出给出,如下面的初值问题:为了使解存在唯一,一般,要加限制条件在f上,要求f对y满足Lipschitz条件:第2页,本讲稿共37页 常微分方程的解是一个函数,但是,计算机没有办法对函数进行运算。因此,常微分方程的数值解并不是求函数的近似,而是求解函数在某些节点的近似值。例:我们对区间做等距分割:设解函数在节点的近似为由数值微分公式,我们有,则:向前差商公式可以看到,给出初值,就可以用上式求出所有的第3页,本讲稿共37页基本步骤如下:解差分方程,求出格点函数 对区间作分割:求 在 上的近似值 。称为分割上的格点函数 由微分方程出发,建立求格点函数的差分方程。这个方程应该满足:A、解存在唯一;B、稳定,收敛;C、相容数值方法,主要研究步骤,即如何建立差分方程,并研究差分方程的性质。这种方法,称为数值离散方法。求的是在一系列离散点列上,求未知函数y在这些点上的值的近似。我们的目的,就是求这个格点函数第4页,本讲稿共37页为了考察数值方法提供的数值解,是否有实用价值,需要知道如下几个结论:步长充分小时,所得到的数值解能否逼近问题得真解;即收敛性问题 误差估计 产生得舍入误差,在以后得各步计算中,是否会无限制扩大;稳定性问题第5页,本讲稿共37页8.1 Euler公式公式做等距分割,利用数值微分代替导数项,建立差分方程。1、向前差商公式所以,可以构造差分方程称为局部截断误差。显然,这个误差在逐步计算过程中会传播,积累。因此还要估计这种积累第6页,本讲稿共37页在在假假设设 yi=y(xi),即即第第 i 步步计计算算是是精精确确的的前前提提下下,考考虑虑的的截截断断误误差差 Ri=y(xi+1)yi+1 称称为为局局部部截截断断误误差差/*local truncation error*/。若若某某算算法法的的局局部部截截断断误误差差为为O(hp+1),则则称称该该算算法法有有p 阶精度。阶精度。记为2、收敛性考察局部误差的传播和积累第7页,本讲稿共37页第8页,本讲稿共37页称为整体截断误差是1阶方法第9页,本讲稿共37页3、稳定性误差在以后各步的计算中不会无限制扩大。是格式对舍入误差的抑止作用我们考虑一种简单情况,即仅初值有误差,而其他计算步骤无误差。设是初值有误差后的计算值,则所以,我们有:可以看出,向前差商公式关于初值是稳定的。当初始误差充分小,以后各步的误差也充分小第10页,本讲稿共37页4、向后差商公式是隐格式,要迭代求解可以由向前差商公式求出第11页,本讲稿共37页5、中心差商公式是多步,2阶格式,该格式不稳定6、梯形法基于数值积分的公式对微分方程做积分,则:第12页,本讲稿共37页类似,可以算出其误差估计式:2阶的方法所以,有格式为:是个隐式的方法,要用迭代法求解局部截断误差第13页,本讲稿共37页8.2 RungeKutta法法由Taylor展开记为所以,可以构造格式这种格式使用到了各阶偏导数,使用不便。第14页,本讲稿共37页从另一个角度看,取(x,y)及其附近的点做线性组合,表示F,问题就好办了。当然,要求此时的展开精度相同。这种方法称为RungeKutta法第15页,本讲稿共37页在(x,y)处展开,比较以2阶为例,设第16页,本讲稿共37页有:1、改进的Euler公式2、Heun公式第17页,本讲稿共37页一般的RungeKutta法构造常见的为3阶,4阶公式第18页,本讲稿共37页8.3 线性多步法线性多步法用用若干若干节点处的节点处的 y 及及 y 值的值的线性组合线性组合来近似来近似y(xn+1)。).(.110111101knknnnknknnnffffhyyyy +=a aa aa a其通式可写为:其通式可写为:当当 1 0 时,为时,为隐式公式隐式公式;1=0 则为则为显式公式显式公式。第19页,本讲稿共37页 基于数值积分的构造法基于数值积分的构造法将将 在在 上积分,得到上积分,得到只要只要近似地算出右边的积分近似地算出右边的积分 ,则可通过,则可通过 近似近似y(xn+1)。而。而选用不同近似式选用不同近似式 Ik,可得到不同的计算公式,可得到不同的计算公式。第20页,本讲稿共37页若积分用节点作为积分点,则有积分系数这是显格式,q+1阶r+1步格式。r=maxp,q为积分节点,可以构造r+1步q+1阶隐格式局部截断误差同样,若以第21页,本讲稿共37页例:建立p=1,q=2的显格式p=1,q=2,显格式,积分区间为积分节点为所以第22页,本讲稿共37页例:建立p=2,q=2的隐格式p=2,q=2,隐格式,积分区间为积分节点为所以第23页,本讲稿共37页它的截断误差较 显格式 小,通常也具有更好的稳定性。Adams公式公式 p=0 时候的多步法时候的多步法参见书第24页,本讲稿共37页8.4 方程组和高阶方程的数值解法方程组和高阶方程的数值解法写成向量的形式:第25页,本讲稿共37页各种方法都可以直接运用过来。Euler公式以两个方程的方程组为例第26页,本讲稿共37页Runge-Kutta公式第27页,本讲稿共37页第28页,本讲稿共37页1、2、确定方法,然后求解(0.20276 0.0881157)(0.213007 0.0934037)(0.223763 0.0988499)(0.235052 0.104437)(0.246902 0.110146)4阶Runge-Kutta法,h=1第29页,本讲稿共37页高阶方程第30页,本讲稿共37页则有:令第31页,本讲稿共37页例:例:考察初值问题考察初值问题 在区间在区间0,0.5上的解。上的解。分别用欧拉显、隐式格式和改进的欧拉格式计算数值解。分别用欧拉显、隐式格式和改进的欧拉格式计算数值解。0.00.10.20.30.40.5精确解精确解改进欧拉法改进欧拉法 欧拉隐式欧拉隐式欧拉显式欧拉显式 节点节点 xi 1.0000 2.0000 4.0000 8.0000 1.6000 101 3.2000 101 1.00002.5000 10 1 6.2500 10 21.5625 10 23.9063 10 39.7656 10 41.00002.50006.25001.5626 1013.9063 1019.7656 1011.00004.9787 10 22.4788 10 31.2341 10 46.1442 10 63.0590 10 7What is wrong?!第32页,本讲稿共37页8.5 差分方程的绝对稳定性差分方程的绝对稳定性对于一般的差分方程由初始误差产生了差分解的误差,实际上是同一差分方程,取不同初值所得到的2组差分解之间的差。这个差不仅于差分方程本身有关,而且与微分方程本身有关。如果微分方程本身是不稳定,那就没理由要求这2组解充分接近。因此,差分方程的稳定性概念是建立在微分方程稳定的基础上的。把这个典型微分方程规定为:仍然考虑最简单的模型,即只有初值产生误差,看看这个误差的传播。第33页,本讲稿共37页差分方程运用到如上的微分方程后,可以得到对于给定的初始误差,误差方程具有一样的形式第34页,本讲稿共37页定义:差分方程称为绝对稳定的,若差分方程作用到微分方程时,对任意的初值,总存在左半复平面上的一个区域,当 在这个区域时,差分方程的解趋于0。这个区域称为稳定区域例:向后Euler公式的稳定性误差方程:210ReImg第35页,本讲稿共37页考察隐式欧拉法考察隐式欧拉法可见绝对稳定区域为:可见绝对稳定区域为:210ReImg注:注:一般来说,隐式欧拉法的绝对稳定性比同阶的显式法一般来说,隐式欧拉法的绝对稳定性比同阶的显式法的好。的好。第36页,本讲稿共37页3阶RungeKutta显式显式 1 4 阶方法的绝对稳定区域为阶方法的绝对稳定区域为k=1k=2k=3k=4-1-2-3-123ReImg第37页,本讲稿共37页