1:用Euler法、隐式Euler法、梯形法及改进Euler法求解 ,取
,计算到
,并与精确解比较.
解:由于,
,
Euler法:
时,
.
隐式Euler法:
解出
当时,
梯法:
解出
当时,
改进Euler法:
即
当时,
精确解:,(梯形法效果最好,改进Euler较好:具有相同的误差数量级,其它不好!)
![]() |
Euler法![]() |
隐式Euler法![]() |
梯形法![]() |
改进Euler法![]() |
精确解![]() |
0.1 | 1.000 000 | 1.009 091 | 1.004 762 | 1.005 000 | 1.004 837 |
0.2 | 1.010 000 | 1.026 446 | 1.018 594 | 1.019 025 | 1.019 731 |
0.3 | 1.029 000 | 1.051 315 | 1.040 633 | 1.041 218 | 1.040 818 |
0.4 | 1.056 100 | 1.083 014 | 1.070 097 | 1.070 802 | 1.070 320 |
0.5 | 1.090 490 | 1.120 922 | 1.106 278 | 1.107 076 | 1.106 531 |
2:用梯形法的迭代格式求的数值解,
,计算到
解:梯形公式
迭代式,解为:
3:出用梯形格式的迭代算法求解初值问题 的计算公式,取步长
,并求
的近似值,要求迭代误差不超过
。
解:梯形公式的迭代算法为
,
于是取,有
由,经计算有:
因 ,于是取
则
,于是取
4:用欧拉法解初值问题,取步长h=0.2。计算过程保留6位小数。
解h=0.2, f(x)=-y-xy2。首先建立欧拉迭代格式
当,x1=0.2时,已知x0=0,y0=1,有y(0.2)»y1=0.2×1(4-0×1)=0.8
当,x2=0.4时,已知x1=0.2, y1=0.8,有y(0.4)»y2=0.2×0.8×(4-0.2×0.8)=0.614 4
当 ,x3=0.6时,已知x2=0.4,y2=0.6144,有y(0.6)»y3=0.2×0.6144×(4-0.4×0.4613)=0.8
5:用改进的欧拉法(预报-校正公式)求解初值问题,取步长h=0.2,计算 y(1.2),y(1.4)的近似值,小数点后至少保留5位。
解 步长h=0.2, 此时f(x,y)=-y-y2sinx
欧拉预报-校正公式为:
有迭代公式:
当=0,x0=1, y0=1时,x1=1.2,有
当=1,x1=1.2, y1=0.71549时,x2=1.4,有
=0.52608
6:写出用四阶龙格-库塔法求解初值问题的计算公式,取步长h=0.2计算y(0.4)的近似值。至少保留四位小数。
解 此处f(x,y)=8-3y, 四阶龙格-库塔法公式为
其中 k1=f(xk,yk);k2=f(xn+h,yk+
hk1);k3=f(xk+
h,yn+
hk2);k4=f(xk+h,yk+hk3)
本例计算公式为:
其中 k1=8-3 yk;k2=5.6-2.1 yk;k3=6.32-2.37yk; k4=4.208+1.578yk
当x0=0,y0==2,