常微分方程数值解法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


0,
则:
eN

TN
e 1 hL N 1

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

x
n


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 ~ ~
即yk≈y(xk),这样y0 , y1 ,...,yn称为微分方程的数值解。
微分方程离散化常用方法
A 用差商代替微商
dy y
x x dx x x xn, yn
y
n1

n f (xn , y(xn ))
n1
n
用h xn1 xn ,
y n

yxn,

y
(
x
n
)

h
y
/
(
x
)
n

h2
2
y x //
( ) n

y(xn) hf
(
x
,
n
y
(
x
))
n

h2
2
y x //
( ) n
dy


dx

f (x, y)


y
(
x
)
0

y 0
a

x

b



பைடு நூலகம்
y x x 取 h 的线性部分,且 y( ) 得 y( ) 的近似值:
y x y 代替,则:
n1
n1
y y
n1
n
h
f
xn
,
y n
y y hf
n1
n
xn
,
y n
n 0,1, 2,
B. 数值积分
用数值积分方法离散化 :
xn1 dydx xn1 f (x, y)dx (n 0,1, )
xn dx
xn
微分方程的数值解:设方程问题的解y(x)的存在区间 是[a,b],令a= x0< x1<…< xn =b,其中hk=xk+1-xk , 如是等距 节点h=(b-a)/n , h称为步长。 y(x)的解析表达式不容易得到或根本无法得到,我们用数 值方法求得y(x)在每个节点xk上y(xk)的近似值,用yk表示,
T x y h y 则
y
n1
~
2

n1
n1 2
//
x x
n
n1
令 M 2 max y// (x) , y(x) 充分光滑,则: a xb
T M h h n 1
2
O 2 22
3、 总体方法误差(1)
递推方法:从任意两相邻步的总体误差关系

x y( ) n 1
在 xn 点 Taylor 展开:
x y( ) n 1

yxn

h
y(xn)
hf
(xn ,
y( xn))

h2 y//
2
x x
n
n 1
~
y
x yn hf
,
n
yn
n1
~
y

y
(
x
)
n

hf
x
,
n
y

x
n

n1
第九章 常微分方程数值解法
§1 、引言
一阶常微分方程的初值问题:
dy

dx

f (x, y)
a xb

y
(
x
)
0

y 0
例: 方程 xy' -2y=4x y' = 2 y 4 x
令:f(x,y)= 2 y 4 且给出初值 y(1)=-3 x
就得到一阶常微分方程的初值问题:
n
n
n1
y y x y hf ( , ) n 0, 1, 2,
n1
n
n
n
Taylor展开法不仅可得到求数值解的公式,且容易估计
截断误差。
§2 尤拉(Eular)方法
一、 Euler 公式 计算公式:
y y x y dy

dx

f
(x, y)
a

x

b



n1
hf
n
,
nn

y(
x
)
0

y 0

y(
x
)
0

y 0
1,几何意义。
n 0,1,

x
,
0
y
0
出发取曲线 y y x 的切线(存在!),则 斜率
dy
f
dx
x
,
0
y
0
x
,
0
y
0
由于 f
x
,
0
y
0

x
,
0
y
0
已知,必有切线方程。
由点斜式写出切线方程:
dy
yy 0
x x0
y x x y dx x0,y0
(x )f( , )
0
0
0
0
等步长 为h,则
x1
x0

h,可由切线算出 y 1

y 1

y 0
hf(x0,y

0
逐步计算出y

y(x)在
x ,点值 n 1

y n 1

y n

hf(xn,y

n
n 0,1,2,
dy f ( x, y) 2 y 4
dx
x
y(1) 3
只要函数f (x, y)适当光滑连续,且关于y满足李普 希兹(Lipschitz)条件,即存在常数L,使得
f (x, y) f (x, y) L y y 由常微分方程理论知,初值问题的解必存在且唯一。
用yn1, yn代替y(xn1), y(xn ), 对右端积分采用 取左端点的矩形公式
则有
xn1 xn
f
(x,
y)dx

hf
(xn ,
yn )
yn1 yn hf (xn , yn ) (n 0,1, )
C 在xn 附近 y(x) 的 Taylor 展开:
y(xn
h)
y y
n1
n1
n1
n1
n1
~

n1
n1
n1
n1
n1
y y 以 下 估 计 ~ n1 n1
其 中~y

y

x
n


h
f

x
,
n
y

x
n


n1
总体方法误差(2)
~
y
y x
y
hf
n1
n
x
,
n
y

x
n

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

n1
n1
n1
其中
~
y
是当
y
n

y(
x
)
n
(精确解!)时
n1
由Euler法求出的值,即y 无误差! n
x
,
n
y
n
n1
y xn yn h f
x
,
n
yxn
f
x
,
n
y
n
由Lipschitz条件
1 hL
y xn
y n

(1 hL)
en
e T e

n1
n1 1 hL n 对一切n 成立。
对取定 N , 由
e0

y
x0

y 0
相关文档
最新文档