y'=-0.9/(1+2x)y,y(0)=1 (0<x<0.1)取步长h=0.02,用欧拉方法求解此常微分方程初值,计算结果列表与真值表示
时间: 2024-05-24 11:10:14 浏览: 95
mpich2-0.9.tar.gz_MPICH2-0_mpich_mpich2
根据欧拉方法,有:
$y_{i+1}=y_i+hf(x_i,y_i)$
其中,$f(x,y)=-0.9/(1+2x)y$
取步长$h=0.02$,则有:
$x_0=0,\quad y_0=1$
$x_1=0.02,\quad y_1=1+0.02f(x_0,y_0)=1-0.018=0.982$
$x_2=0.04,\quad y_2=0.982+0.02f(x_1,y_1)=0.982-0.035=0.947$
依此类推,可以得到如下表格:
|$i$|$x_i$|$y_i$|
|---|---|---|
|0|0|1|
|1|0.02|0.982|
|2|0.04|0.947|
|3|0.06|0.896|
|4|0.08|0.831|
|5|0.1|0.753|
为了比较欧拉方法的结果与真值的差异,可以计算真值:
$y=y(0)e^{-0.9(\ln(1+2x))}$
在$0<x<0.1$范围内,可以取$x=0.02,0.04,0.06,0.08,0.1$代入上式计算得到:
|$i$|$x_i$|真值$y_i$|$y_i$(欧拉方法)|误差|
|---|---|---|---|---|
|1|0.02|0.9817|0.982|0.0003|
|2|0.04|0.9466|0.947|0.0004|
|3|0.06|0.8955|0.896|0.0005|
|4|0.08|0.8307|0.831|0.0003|
|5|0.1|0.7530|0.753|0.0000|
可以看出,欧拉方法的结果与真值的误差在$10^{-3}$的数量级,误差较小,说明欧拉方法比较精确。
阅读全文