文档介绍:第八章常微分方程初始问题数值解法
§1 前言
§3 龙格- 库塔法
§4 线性多步法
§2 简单的数值方法与基本概念
§5 微分方程组与高阶方程
11/11/2017
【本章重点】,后退Euler法,改进Euler法,梯形法的基本公式
和构造,并用它计算初值问题数值解。-Kutta法基本思想,二阶R-K法推导及经典四阶R-K
法的使用。
的确定。。,主要是用Taylor
展开方法,并能用Adams公式,Hamming公式计算初值问题的
解。
11/11/2017
【课前思考】1. 怎样导出Euler法,后退Euler法,改进Euler法和梯形法
的公式?它们中那些是显式公式?那些是隐式公式?2. 何谓方法的局部截断误差?方法的阶?试求Euler法和梯
法的局部截断误差和阶。3. 什么是单步法的绝对稳定性?试给出Euler法,改进Euler
法,四阶R-K方法及梯形法的绝对稳定区间。4. 怎样推导二阶R-K方法的公式。5. 什么是线性多步法?它有什么优缺点。怎么用Taylor展开
推导Adams显式和隐式公式并求出它的局部截断误差主部。
(以四阶为例证明)
11/11/2017
考虑一阶常微分方程的初值问题:
只要 f (x, y )适当光滑——如关于 y 满足利普希茨(Lipschitz )条件,即存在与 x, y 无关的常数 L ,使
成立,则上述初值问题存在唯一解y= y (x)。
数值解法就是计算出解函数 y(x) 在一系列离散节点x1<…< xn <…处的近似值
节点间距称为步长,通常采用等距节点,即取 hn = h (常数)。
求解常微分方程有很多种解析方法,但解析方法只能用来求解一些特殊类型的方程,实际问题中归结出来的微分方程主要靠数值解法。
§1 前言
11/11/2017
常微分方程的初值问题数值解法的基本思想
考虑微分方程的初值问题:
将求解区间[a,b]做n等分,记
称h为步长,{xi}为节点,寻求y(x)在x1,x2,…,xn处的近似值y1,y2,…,yn ,求解过程是顺着节点的次序一步步地向前推进,即按递推公式,有已求出的y0,y1,…,yn求出yn+1 。
如果求yi+1只利用前一步的值yi,称这类方法为单步法;
如果求yi+1需用到前k的值yi ,yi-1,…,yi-k+1 ,则称这类方法为k步法。
11/11/2017
§2 简单的数值方法与基本概念
一欧拉法、后退欧拉法、梯形法:
将(1)式在区间[xi,xi+1]上积分得:
1 欧拉法(*)式
用yi代替y(xi),用yi+1代替y(xi+1),用“=”代替“≈”,得
称这种方法为欧拉法(显式)。
左矩形公式
11/11/2017
例:求解初始问题
解:采用欧拉方法,具体形式如下:
取步长h=,结果如下表:
(该初始问题的解析解为,按此式算出的准确解y(xn)与近似解yn列表比较)
11/11/2017
xn 近似解yn 精确解y(xn)
0
11/11/2017
function E=Euler(f,a,b,N,ya)
%f是微分方程右端的数句柄
%a,b是自变量的取值区间[a,b]的端点
%N是区间等分的个数
%ya表初值y(a)
%E=[x',y']是自变量X和解Y所组成的矩阵
h=(b-a)/N;
y=zeros(1,N+1);
x=zeros(1,N+1);
y(1)=ya;
x=a:h:b;
for i=1:N
y(i+1)=y(i)+h*feval(f,x(i),y(i));
end
E=[x',y'];
function y=solvef1(x)
y=sqrt(1+2*x);
function z=f1(x,y)
z=y-2*x/y;
f=***@f1;
a=0;
b=1;
N=10;
ya=1;
E=Euler(f,a,b,N,ya);
y=solvef1(a:(b-a)/