第十章 常微分方程求解

第十章 常微分方程求解

10.1 Lipschitz条件

如果 f ( t , y ) f(t,y) f(t,y)在区域 R = { ( t , y ) ∣ a ≤ t ≤ b , − ∞ < y < + ∞ } R=\left\{(t,y)|a \leq t \leq b, -\infty<y<+\infty\right\} R={(t,y)atb,<y<+}中连续且关于 y y y满足 L i p s c h i t z Lipschitz Lipschitz条件:存在常数 L L L使得
∣ f ( t , y 1 ) − f ( t , y 2 ) ∣ ≤ L ∣ y 1 − y 2 ∣ |f(t,y_1)-f(t,y_2)|\leq L|y_1-y_2| f(t,y1)f(t,y2)Ly1y2
如果某方程有这样的特征,那么该问题有唯一解且稳定

10.2 Euler法

  • Euler法: y n + 1 = y n + h f ( t n , y n ) y_{n+1}=y_n+hf(t_n,y_n) yn+1=yn+hf(tn,yn) O ( h 2 ) O(h^2) O(h2)
  • 梯形方法: y ( t n + 1 ) = y ( t n ) + h 2 [ f ( t n , y n ) + f ( t n + 1 , y n + 1 ) ] y(t_{n+1})=y(t_n)+\frac{h}{2}[f(t_n,y_n)+f(t_{n+1},y_{n+1})] y(tn+1)=y(tn)+2h[f(tn,yn)+f(tn+1,yn+1)] O ( h 3 ) O(h^3) O(h3)
  • 改进的Euler法: y n + 1 = y n + h 2 [ f ( t n , y n ) + f ( t n + 1 , y n + h f ( t n , y n ) ) ] y_{n+1}=y_n+\frac{h}{2}[f(t_n,y_n)+f(t_{n+1},y_n+hf(t_n,y_n))] yn+1=yn+2h[f(tn,yn)+f(tn+1,yn+hf(tn,yn))]

10.3 Runge-Kutta法

  • 二阶 R u n g e − K u t t a Runge-Kutta RungeKutta
    y n + 1 = y n + h ( c 1 K 1 + c 2 K 2 ) K 1 = f ( t n , y n ) K 2 = f ( t n + a 2 h , y n + a 2 h K 1 ) c 1 = 2 a 2 − 1 2 a 2 , c 2 = 1 2 a 2 \begin{align} y_{n+1}&=y_n+h(c_1K_1+c_2K_2)\\ K_1 &= f(t_n,y_n)\\ K_2 &= f(t_n+a_2h,y_n+a_2hK_1)\\ c_1 &= \frac{2a_2-1}{2a_2},c_2 = \frac{1}{2a_2} \end{align} yn+1K1K2c1=yn+h(c1K1+c2K2)=f(tn,yn)=f(tn+a2h,yn+a2hK1)=2a22a21,c2=2a21

  • 四阶 R u n g e − K u t t a Runge-Kutta RungeKutta法: O ( h 5 ) O(h^5) O(h5)

y n + 1 = y n + h 4 ( K 1 + 2 K 2 + 2 K 3 + K 4 ) K 1 = f ( t n , y n ) K 2 = f ( t n + 0.5 h , y n + 0.5 h K 1 ) K 3 = f ( t n + 0.5 h , y n + 0.5 h K 2 ) K 4 = f ( t n + h , y n + h K 3 ) \begin{align} y_{n+1}&=y_n+\frac{h}{4}(K_1+2K_2+2K_3+K_4)\\ K_1 &=f(t_n,y_n)\\ K_2 &=f(t_n+0.5h,y_n+0.5hK_1)\\ K_3 &=f(t_n+0.5h,y_n+0.5hK_2)\\ K_4 &=f(t_n+h,y_n+hK_3) \end{align} yn+1K1K2K3K4=yn+4h(K1+2K2+2K3+K4)=f(tn,yn)=f(tn+0.5h,yn+0.5hK1)=f(tn+0.5h,yn+0.5hK2)=f(tn+h,yn+hK3)

10.4 显式Adams方法

  • 二步公式
    y n + 1 = y n + h 2 ( 3 f n − f n − 1 ) y_{n+1}=y_n+\frac{h}{2}(3f_n-f_{n-1}) yn+1=yn+2h(3fnfn1)

  • 四步公式
    y n + 1 = y n + h 24 ( 55 f n − 59 f n − 1 + 37 f n − 2 − 9 f n − 3 ) y_{n+1}=y_n+\frac{h}{24}(55f_n-59f_{n-1}+37f_{n-2}-9f_{n-3}) yn+1=yn+24h(55fn59fn1+37fn29fn3)

10.5 隐式Adams方法

  • 一步公式
    y n + 1 = y n + h 2 ( f n + 1 + f n ) y_{n+1}=y_n+\frac{h}{2}(f_{n+1}+f_n) yn+1=yn+2h(fn+1+fn)

  • 二步公式
    y n + 1 = y n + h 12 ( 5 f n + 1 + 8 f n − f n − 1 ) y_{n+1}=y_n+\frac{h}{12}(5f_{n+1}+8f_n-f_{n-1}) yn+1=yn+12h(5fn+1+8fnfn1)

  • 三步公式
    y n + 1 = y n + h 24 ( 9 f n + 1 + 19 f n − 5 f n − 1 + f n − 2 ) y_{n+1}=y_n+\frac{h}{24}(9f_{n+1}+19f_{n}-5f_{n-1}+f_{n-2}) yn+1=yn+24h(9fn+1+19fn5fn1+fn2)

10.6 稳定性

设计算公式的准确值为 y i y_i yi,其计算解为 y ‾ i \overline y_i yi,设
δ i = y i − y ‾ i \delta_i=y_i-\overline y_i δi=yiyi
如果第 i i i步之后各部计算没有引进计算误差,即
∣ δ j ∣ ≤ ∣ δ i ∣ , j = i + 1 , i + 2 , . . . , n |\delta_j| \leq |\delta_i|, j = i+1,i+2,...,n δjδi,j=i+1,i+2,...,n
则称计算公式是绝对稳定的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值