第九章 常微方程数值解法

合集下载

常微分方程数值解法

常微分方程数值解法

用分段的折线逼近函数,此为 “折线法”而非“切线法”, 除第一个点是曲线上的切线,
其它都不是。
2、Euler方法的误差估计
1)局部截断误差。 在一步中产生的误差而非累积误差:
~
T x y y

n1
n1
n1
其中
~
y
是当
y
n

y(
x
)
n
(精确解!)时
n1
由Euler法求出的值,即y 无误差! n
y y x , y x y 则得: h f
f ,
n1
n2
n
n
n1
n1
同样与Euler法结合,形成迭代算法,对n 0,1,2,
y y x , y 0 hf
n1
n
n
n
y y x , y x y

k 1
推出总体误差与步长的关系。
由微分方程解的存在唯一性,自然假定 ( f x,y)
充分光滑,或满足 Lipschitz条件:
f
x,ny源自xn

f
x
,
n
y
n

L
yxn
y n
第 n 步 的 总 体 截 断 误 差 记 为
en y
xn
y n
则 对 n 1 步:
e x y x y y y T y y ~ ~
用yn1, yn代替y(xn1), y(xn ), 对右端积分采用 取左端点的矩形公式
则有
xn1 xn
f
(x,
y)dx

hf
(xn ,
yn )

数值分析第九章常微分方程数值解法

数值分析第九章常微分方程数值解法
高斯-赛德尔迭代法
松弛法
通过迭代更新函数值并逐步放松约束 条件来逼近解,适用于刚性和非刚性 问题。
利用线性组合迭代函数值来逼近解, 具有更高的收敛速度和稳定性。
03
数值解法的稳定性分析
数值解法的稳定性定义
数值解法的稳定性是指当微分方程的初值有微小的扰动时, 其数值解的近似值的变化情况。如果数值解在微小扰动下变 化较小,则称该数值方法是稳定的。
更高的精度和稳定性。
数值逼近法
泰勒级数法
将微分方程的解展开为泰勒级数,通过截断级数来逼 近解。
多项式逼近法
利用多项式来逼近微分方程的解,通过选取合适的基 函数和系数来提高逼近精度。
样条插值法
利用样条函数来逼近微分方程的解,具有更好的光滑 性和连续性。
迭代法
雅可比迭代法
通过迭代更新函数值来逼近微分方程 的解,具有简单易行的优点。
初值和边界条件的处理
根据实际问题,合理设定初值和边界 条件,以获得更准确的数值解。
收敛性和误差分析
对数值解进行收敛性和误差分析,评 估解的精度和稳定性。
数值解法的应用案例分析
人口增长模型
通过数值解法求解人口增长模型,预测未来人口数量,为政策制 定提供依据。
化学反应动力学
利用数值解法研究化学反应的动力学过程,模拟反应过程和结果。
数值分析第九章常微分方 程数值解法
• 引言 • 常微分方程数值解法的基本思想 • 数值解法的稳定性分析 • 数值解法的收敛性和误差分析 • 数值解法的实现和应用案例
01
引言
常微分方程的应用背景
自然科学
描述物理、化学、生物等自然 现象的变化规律。
工程领域
控制系统设计、航天器轨道计 算等。

常微分方程数值解法5262115页PPT文档

常微分方程数值解法5262115页PPT文档
x 1 ( t ) 表示时刻 t 食饵的密度,x 2 ( t ) 表示捕食者的密度;
r 表示食饵独立生存时的增长率;
d 表示捕食者独立生存时的死亡率;
a 表示捕食者的存在对食饵增长的影响系数,反映捕
食者对食饵的捕获能力;
b 表示食饵的存在对捕食者增长的促进系数,反映食
饵对捕食者的喂养能力
150 100
令 y 1 y ,y 2 y ',y 3 y '', ,y n y ( n 1 )
可以将以上高阶微分方程化为如下一阶常微分方程组
y1 ' y2 y2 ' y3 yn ' an(x)y1
a1(x)yn f (x)
例:P120,1(a),Bessel方程
常微分方程的数值解
一般地,凡表示未知函数,未知函数的导 数与自变量之间的关系的方程叫做微分方 程.未知函数是一元函数的,叫常微分方 程;未知函数是多元函数的,叫做偏微分方 程.

y ' x y'x2y2 y''y'xy
Matlab实现 [t,x]=ode45(f,ts,x0,options,p1,p2,......)
50 0 0
30 20 10
0 0
10
20
50
30
20
10

0
30
0
10
8
6
4
2
100
0
50
100
150
50
100
高阶常微分方程的解法
高阶常微分方程
y ( n ) a 1 ( x ) y ( n 1 ) a ( n 1 ) ( x ) y ' a n ( x ) y f( x )

数值分析第9章常微分方程数值解法

数值分析第9章常微分方程数值解法
dy f ( x, y) x [a, b] dx y(a) y0
只要f (x, y)在a,b R1上连续, 且关于 y 满足
Lipschitz 条件,即存在与 x, y无关的常数 L 使 | f (x, y1) f (x, y2 ) | L | y1 y2 |
常微分方程的数值解法分为 (1)初值问题的数值解法 (2)边值问题的数值解法
一、初值问题的数值解法
1、一阶常微分方程初值问题的一般形式
y f (x, y), a x b

y(a)

y0
(1)
2. 迭代格式的构造
(1) 构造思想:将连续的微分方程及初值条件离散为线性方程 组加以求解。由于离散化的出发点不同,产生出各种不同的数 值方法。基本方法有:有限差分法(数值微分)、有限体积法 (数值积分)、有限元法(函数插值)等等。
y( x1 ) h
y( x0 )
y( x ) y h f ( x , y( x ))
1
0
1
1
x0
x1
yi1 yi hf xi1, yi1 i 0, n 1
由于未知数 yi+1 同时出现在等式的两边,不能直接 得到,故称为隐式 /* implicit */ 欧拉公式,而前者 称为显式 /* explicit */ 欧拉公式。
y 2xy2 (0 x 1.2)

y
0

1
取步长 h 0.1。
解: 应用Euler公式于题给初值问题的具体形式为:
yi1 yi 2hxi yi2 i 0,1,...,11

y

0

1
其中 xi 0.1i。 计算结果列于下表:

数值分析 第9章 常微分方程初值问题数值解法

数值分析 第9章 常微分方程初值问题数值解法

9 .2 .2 梯形方法/* trapezoid formula */— 显、隐式两种算法的平均 为得到比欧拉法精度高的计算公式, 在等式( 2.4) 右端积分 中若用梯形求积公式近似, 并用yn 代替y ( xn ) , yn+1 代替y ( xn+1 ) ,则得
h yn 1 yn [ f ( xn , yn ) f ( xn 1 , yn 1 )], 2
yn 1 yn f ( xn , yn ), xn 1 xn
即 yn+1 = yn + hf ( xn , yn ) . ( 2 .1)
这就是著名的欧拉( Euler ) 公式.
• 若初值y0 已知, 则依公式( 2.1)可逐步算出
• y1 = y0 + hf ( x0 , y0 ) ,
为了分析迭代过程的收敛性, 将( 2. 7) 式与(2. 8 )式相减, 得
h ( k 1) (k ) yn 1 yn [ f ( x , y ) f ( x , y 1 n 1 n 1 n 1 n 1 )] 2
于是有
| yn 1 y
( k 1) n 1
hL (k ) | | yn 1 yn 1 |, 2
| f ( x, y1 ) f ( x, y2 ) | L | y1 y2 |, y1, y2 R,
定理1 设f在区域D={(x,y)|a≤x ≤b,y∈R}上连续, 关于y满足利普希茨条件,则对任意x0 ∈[a,b], y0 ∈R,常微分方程初值问题(1.1)式和(1.2)式当x ∈[a,b]时存在唯一的连续可微解y(x). 定理2 设f在区域D上连续,且关于y满足利 普希茨条件,设初值问题
1 2 1 2 dy x ydy xdx y x c 2 2 dx y y (0) 2 y2 x2 4

常微分方程的数值解法

常微分方程的数值解法
第九章 常微分方程的数值解法
主要内容
§1、引言 §2、初值问题的数值解法--单步法 §3、龙格-库塔方法 §4、收敛性与稳定性 §5、初值问题的数值解法―多步法 §6、方程组和刚性方程 §7、习题和总结
§1、 引 言 主要内容 ➢研究的问题 ➢数值解法的意义
1.什么是微分方程 ? 现实世界中大多数事物
使得对任意的x [a,b]及y1, y2都成立
则称 f (x,y) 对y 满足李普希兹条件,L 称为 Lipschitz常数.
就可保证方程解的存在唯一性
若 f (x,y) 在区域 G连续,关于y
满足李普希兹 条件
一阶常微分方程的初值问题的解存在且唯一. 我们以下的讨论,都在满足上述条件下进行.
一阶常微分方程组常表述为:
y(x0
)
y0
(1.2)
种 数 值 解

其中f (x,y)是已知函数,(1.2)是定解条件也称为 初值条件。
常微分方程的理论指出:
当 f (x,y) 定义在区域 G=(a≤x≤b,|y|<∞)
若存在正的常数 L 使:
(Lipschitz)条件
| f (x, y1) f (x, y2) | L | y1 y2 | (1.3)
节点 xi a ihi,一般取hi h( (b a) / n)即等距
要计算出解函数 y(x) 在一系列节点
a x0 x1 xn b
处的近似值 yi y(xi )
y f (x, y)
y
(
x0
)
y0
a xb
(1.1) (1.2)
对微分方程(1.1)两端从 xn到xn1 进行积分
内部联系非常复杂
其状态随着 时间、地点、条件 的不同而不同

第9章 常微分方程初值问题数值解法

第9章 常微分方程初值问题数值解法
2
数值分析
第9章 常微分方程初值问题数值解法
《常微分方程》中介绍的微分方程主要有:
(1)变量可分离的方程 (2)一阶线性微分方程(贝努利方程) (3)可降阶的一类高阶方程 (4)二阶常系数齐次微分方程 (5)二阶常系数非齐次微分方程 (6)全微分方程 本章主要介绍一阶常微分方程初值问题的数值解法。
进一步: 令
y n1 y n
xn 1 xn
y n 1 y( x n 1 ) , y n y( x n )
f ( x , y( x ))dx h f ( x n , y n )

9

实际上是矩形法
数值分析
第9章 常微分方程初值问题数值解法
(3)
用Taylor多项式近似并可估计误差
解决方法:有的可化为显格式,但有的不行 18
数值分析
第9章 常微分方程初值问题数值解法
与Euler法结合,形成迭代算法 ,对n 0,2, 1,
( yn0 )1 yn hf x n , yn ( k 1) h ( yn1 yn f x n , yn f x n1 , ynk )1 2
7
数值分析
第9章 常微分方程初值问题数值解法
建立数值解法的常用方法
建立微分方程数值解法,首先要将微分方程离散 化. 一般采用以下几种方法: (1) 用差商近似导数
dy yx yx x x dx x y
n 1 n n 1 n
n
,
n
进一步: 令
yn1 y( xn1 ) , yn y( xn )
由 x0 , y0 出发取解曲线 y y x 的切线(存在!),则斜率

常微分方程数值解法

常微分方程数值解法

ρ ρ
n+1 n
≤1
三、梯形公式
由 分 径 y ( xn+1) = y ( xn) + 积 途 : xn+1

f ( x, y)dt

积分 梯形 式 且令:yn+1 = y( xn+1), yn = y( xn) 用 公 , h 则 yn+1 = yn + ( f (xn , yn) + f (xn+1 , yn+1)) 得: 2
第九章 常微分方程数值解法
§1 、引言
一 常 分 程 初 问 : 阶 微 方 的 值 题 dy dx = f (x, y) y( x0) = y0
'
a ≤ x ≤b
2 y 例 : 方 程 xy -2 y = 4 x ⇒ y = + 4 x 2 y 令 :f ( x , y ) = + 4 且 给 出 初 值 y (1 )= -3 x 就 得 到 一 阶 常 微 分 方 程 的 初 值 问 题 : 2 y dy = f (x, y) = + 4 dx x y(1) = − 3
n n n n n 2 // n n+1
~
y
n+1
= yn + hf ( xn, yn ) = y(xn) + hf
n+1
~
y
n+1
( x , y( x ))
n n
则 T = y( x ) − = h y (ξ ) x y 2 ~
// n+1 n+1
2
n
< ξ < xn+1
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第9章 常微分方程数值解法 8-2
第8章 序
许多科学技术问题,例如天文学中的星体运动, 许多科学技术问题,例如天文学中的星体运动,空间 技术中的物体飞行,自动控制中的系统分析, 技术中的物体飞行,自动控制中的系统分析,力学中的振 动,工程问题中的电路分析等,都可归结为常微分方程的 工程问题中的电路分析等, 初值问题。 初值问题。 所谓初值问题, 所谓初值问题,是函数及其必要的导数在积分的起始 点为已知的一类问题,一般形式为: 点为已知的一类问题,一般形式为:
⇒ y n +1 = y n −1 + 2hf ( xn , y n )
第9章 常微分方程数值解法
(8 - 4)
8-10
Euler公式的推导( Euler公式的推导(续5) 公式的推导
上对y )=f 四、利用数值积分公式:在[xn,xn+1]上对y′(x)=f (x,y(x)) 积分 利用数值积分公式:
x0 < x1 < L < xn < L
(i=1,2,…,n)构造插值函数作为近似函数。上述离散点 i=1,2,…,n)构造插值函数作为近似函数。 相 邻两点间的距离h 称为步长, 邻两点间的距离hi=xi-1-xi 称为步长,若hi 都相等为一定数 h, 则称为定步长,否则为变步长。( x, y ( x)) 则称为定步长,否则为变步长。 a≤ x≤b y ′( x) = f 本章重点讨论如下 y (a ) = y0 一阶微分方程: 一阶微分方程: 在此基础上介绍一阶微分方程组与 8-5 第9章 常微分方程数值解法 高阶微分方程的数值解法。 高阶微分方程的数值解法。
⇒ yn +1 = yn + hf ( xn , yn ) + E ( xn , h) ⇒ yn +1 = yn + hf ( xn , yn )
Hale Waihona Puke 第9章 常微分方程数值解法h E ( xn , h ) = y′′(ξ n )称为xn的截断误差(局部) 2
8-9
2
Euler公式的推导( Euler公式的推导(续4) 公式的推导
第9章 常微分方程数值解法 8-4
2 x2 1 4 − x2 4 = 1 ⇒ c = −2 ⇒ − = −2⇒ = ⇒ y= y 2 y 4 4 − x2
微分方程 数值解
由于在实际问题和科学研究中遇到的微分方程往往很 函数y 复杂,绝大多数很难, 复杂,绝大多数很难,甚至不可能求出解析函数y(x),因 此只能考虑求其数值解。 此只能考虑求其数值解。 初值问题的数值解法,是要寻求解函数y 而常微分方程 初值问题的数值解法,是要寻求解函数y(x) 在一系列点y(x 离散点) 在一系列点y(xi ) (离散点):
第9章 常微分方程数值解法
f ( x, y ) − f ( x, y ) ≤ L y − y
8-3
第 9章 序
由常微分方程的理论可知:上述问题的解唯一存在。 的理论可知:上述问题的解唯一存在。 常微分方程求解求什么?应求一满足初值问题(8—1) 求解求什么?应求一满足初值问题( 的解函数y 如对下列微分方程: 的解函数y = y(x) ,如对下列微分方程:
y
(n)
= f ( x)或y
(n)
我们先介绍 简单的一阶问题: 简单的一阶问题: y′( x) = f ( x, y ( x)) y ( a ) = y0
= f ( x, y′, y′′,L, y
a≤ x≤b
( n −1)
)
(8 − 1)
只要f ( x, y )满足(李卜希兹)( Lipschitz条件) :
重复上述过程,即可求出在x0 , x1 ,L, x N ,L与所对应的微分方程 初值问题的y = y ( x)的y ( xi )(i = 1,2,..., N ,...)的近似值y0 , y1 , L, y N ,L
一般地假定已求出 n , yn ), yn ≈ y( xn )可作直线: y = yn + f ( xn , yn )(x − xn ) (x 与x = xn+1相交得: yn+1 = yn + f ( xn , yn )(xn+1 − xn ) = yn + hf ( xn , yn )
第9章 常微分方程数值解法
W Y
第 9章
常微分方程
数值解法
8-1
第9章目录
§1 欧拉(Euler)方法 欧拉(Euler) 1.1 Euler法及其简单改进 Euler法及其简单改进 1.2 改进的Euler法 改进的Euler法 龙格库塔(Runge-kutta) §2 龙格库塔(Runge-kutta)方法 2.1 龙格-库塔方法的基本思想 龙格2.2 二阶龙格-库塔公式 二阶龙格2.3 高阶R-K公式 高阶R 2.4 变步长R-K法 变步长R §3 线性多步法 §4 一阶方程组与高阶方程初值问题 §5 收敛性与稳定性

xn+1
xn
y′( x)dx = ∫
xn+1
xn
f ( x, y( x))dx ⇒ y( xn+1 ) − y( xn ) = ∫
xn+1 xn
xn+1
xn
f ( x, y( x))dx
所以
y( xn+1 ) = y( xn ) + ∫
f ( x, y( x))dx
对右端积分项采用不同的数值积分公式,便可得到各种 对右端积分项采用不同的数值积分公式, xn +1 不同的求解dE初值问题的计算公式 初值问题的计算公式。 不同的求解dE初值问题的计算公式。 ∫x n f ( x , y ( x )) dx 如,以矩形面积代替曲边梯形面积 1)以左矩形面积代替曲边梯形面积如图8-2,亦即以 以左矩形面积代替曲边梯形面积如图8
y1 = y0 + f ( x0 , y 0 )( x1 − x0 ) = y0 + hf ( x0 , y0 )
以y1近似y ( x1 ),当x = x1时,可求y1:
再以P1 ( x1 , y1 )为切点,以 f ( x1 , y1 )为斜率,可得切线: y = y1 + f ( x1 , y1 )( x − x1 ) 与x = x2 相交于P2 ( x2 , y 2 )可得:y 2 = y1 + f ( x1 , y1 )( x2 − x1 ) = y1 + hf ( x1 , y1 ) 而用P1 P2 近似曲线(在[ x1 , y1 ]上)
1 h2 还可利用三点公式: f ′( x1 ) = ( y 2 − y0 ) − f ′′′(ξ ) 2h 6 (也称为中点法公式 ) 1 h2 ⇒ y′( xn ) = ( y( xn +1 ) − y( xn −1 )) − y′′′(ξ n ) = f ( xn , y( xn )) 2h 6 h3 ⇒ yn +1 = yn −1 + 2hf ( xn , yn ) + y′′′(ξ n ), 3 h3 去掉误差项E ( xn,h) = y′′′(ξ n ) 3
f (xn , yn ) ≈ f (x, y(xn ))
则有y n +1 = y n + ( xn +1 − xn ) f ( xn , y n )
第9章 常微分方程数值解法 n n
y
f(x, y)
图8-2
= y + hf ( x , y n )为Euler公式
xn
xn+1 x 8-11
f ( x n +1 , y n +1 ) ≈ f ( x n +1 , y ( x n +1 ), 则有y n +1 = y n + hf ( x n +1 , y n +1 )
y = y0 + f ( x0 , y0)x − x0 ) (
第9章 常微分方程数值解法
y(x) P0
x0 x1 x2
8-7
切线与x 切线与x = x1交于P1(x1,y1),公式的推导(续1) P 0 P 1 交于P 在[x0,x1]上以切线 Euler公式的推导 Euler公式的推导( 近似曲线, 近似曲线,
上 y(xi )的近似值yi( i=1,2,…,n),并且还可由这些(xi,yi) 近似值y i=1,2,…,n),并且还可由这些( ),并且还可由这些
§1 欧拉(Euler)法 欧拉(Euler)
以Euler法及其改进方法为例,说明 Euler法及其改进方法为例 法及其改进方法为例, 常微分方程初值问题数值解法的一般概 Euler法很简单 准确度也不高, 法很简单, 念,Euler法很简单,准确度也不高, 介绍此方法的目的, 介绍此方法的目的,是由于对它的分析 讨论能够比较清楚地显示出方法的一些 特点, 特点,而这些特点及基本方法反映了其 它方法的特点。 它方法的特点。
y f(x, y) y f(x, y)
2)以右矩形面积代替曲边梯形(后退的梯形公式):如图8-3 以右矩形面积代替曲边梯形(后退的梯形公式):如图8 ):如图 Euler公式的推导 Euler公式的推导(续6) 公式的推导(
图8-3
xn
n+1
xn+1
x
h2 y ( xn + h) = y ( xn ) + hy′( xn ) + y′′( xn ) + L 2! 2 y′= f ( x , y ) h ===== y ( xn ) + hf ( xn , y ( xn )) + y′′( xn ) + L 2! 取h的线性部分作为近似式,并以y ( xn ) ≈ yn , y ( xn +1 ) ≈ yn +1
相关文档
最新文档