文档介绍:数值模拟导论——第十三讲
多步法收敛性
Jacob White
合作伙伴Deepak Ramaswamy,
MichalRewienski, and Karen Veroy
概要
多步法的小时间步问题
局部切断误差
选择系数
不收敛法
稳定并连续则收敛
下一章讨论大时间步问题
两个时间刻度实例的绝对稳定性
震荡器
基本方程式
多步法
通用符号
d
xt()= f() xt, ut () ()
非线性差分方程 dt
kk
步法: ˆˆlj−− lj
k ∑∑axjjlj=∆ tβ f() x, ut()−
jj==00
多步法系数
离散点的解
时间离散化
基本方程式
多步法
通用算法
kk
ˆˆlj−− lj
多步法方程: ∑∑axjjlj=∆ tβ f() x, u() t−
jj==00
前欧拉近似法:
xt( ll)≈∆ xt( −−−111) tfxt( ( ll), ut( ))
前欧拉离散方程: ll−−11 l
xxˆˆ−=∆ tfxut( ˆ, ()l−1 )
多步法系数:
k =1, α01==−==1, αββ 1, 010, 1
后欧拉法离散方程: ll−1 l
xxˆˆ−=∆ tf (xut ˆ, ()l )
多步法系数:
k =1, α01==−==1, αββ 1, 011, 0
捕捉法离散方程: ll−−11∆t l l
xˆˆ−= x( fxut() ˆ,,()ll fx() ˆ, ut()−1 )
2
11
多步法系数: k =1, αα==−=1, 1, ββ, =
01 022 1
基本方程式
多步法
定义及考察
kk
ˆˆlj−− lj
多步法方程: ∑∑axjjlj=∆ tβ f() x, u() t−
jj==00
1)若β≠ 0 则多步法是绝对的
2)k步法在 xs''和 f s之前用到k
3)需要范数化,都有α0=1
4)k步法有2k+1个自由系数
需要高的精度时如何选择合适的系数?
简化问题分析
多步法
d
标量: vt()=λλ vt, v0 ()=∈ v0 (C )
ODE dt
为什么会出现这样的简单测试问题?
z非线性分析有很多微妙的现象没有揭示
z对于多步法标量等同于矢量
d kk
多步法离散化ˆˆlj− lj−
xt()=⇒=∆ Axt () ∑∑ axjj tβ x
dt jj==00
kk
令ˆˆlj−−−1 lj
Eyt()=⇒ xt ()∑∑ ayjj =∆ tβ E AEy
jj==00
⎡⎤λ
kk1
离散方程⇒=∆ayˆˆlj− tβ⎢⎥
y lj−
∑∑jj⎢⎥
jj==00⎢⎥
⎣⎦ n
λ
简单问题分析
多步法
d
标量ODE: vt()=λλ vt, v () 0=∈ v ( ) C
dt 0
kk
多步法标量公式: ˆˆl− j l− j
∑∑avjj=∆ tβλ v
jj==00
对于所有λ∈C 都必须考虑λ的值
收敛分析
多步法
收敛定义
定义:对于给定的任何初始条件,用多步法求解[0,T]上的初值问题是收敛的。
当时ˆl
∆tvvlt→−∆→0 max⎡⎤T ( ) 0
l∈⎢⎥0,
⎣⎦∆t
收敛分析
多步法
P阶收敛
定义:对于任一给定的λ和任何初始条件,用多步法求解[0,T]上的初
值问题是P阶收敛的。
对于所有
小于给定的∆tt0 的∆
ˆl p
max ⎡⎤T vvltCt−()∆≤() ∆
l∈⎢⎥0,
⎣⎦∆t
前欧拉法和后欧拉法都是1阶收敛的,梯形法则是2阶收敛的
收敛分析
多步法
实例反应方程
前欧拉法和后欧拉法,误差∞Δt
后欧拉法,误差∞(Δt)²