用向前欧拉公式和改进的欧拉公式求方程y’=y-2x/y,y(0)=1的数值解(0≤x≤1,h=0.1)
时间: 2023-11-29 08:06:39 浏览: 115
改进的欧拉公式
我们可以使用向前欧拉公式和改进的欧拉公式来求解此方程的数值解。首先,将区间[0,1]分成10个等距的子区间,即$h=0.1$。令$y_i$为数值解在$x_i$处的近似值,则有:
$$
y_{i+1} = y_i + hf(x_i, y_i)
$$
其中,$f(x,y)=y-2x/y$是给定的方程。这就是向前欧拉公式的迭代公式。
接下来,我们使用改进的欧拉公式。改进的欧拉公式为:
$$
y_{i+1} = y_i + \frac{h}{2}(f(x_i, y_i)+f(x_{i+1},y_i+hf(x_i,y_i)))
$$
现在,我们可以开始迭代计算数值解了。根据题目给出的初始条件$y(0)=1$,我们可以得到$y_0=1$。然后,我们可以使用向前欧拉公式和改进的欧拉公式来计算$y_1$,$y_2$,$\cdots$,$y_{10}$的值。
具体地,向前欧拉公式的迭代公式为:
$$
y_{i+1} = y_i + hf(x_i, y_i) = y_i + 0.1(y_i-2x_i/y_i)
$$
改进的欧拉公式的迭代公式为:
$$
y_{i+1} = y_i + \frac{h}{2}(f(x_i, y_i)+f(x_{i+1},y_i+hf(x_i,y_i)))\\
= y_i + 0.05[(y_i-2x_i/y_i)+(y_i+0.1(y_i-2x_i/y_i)-2(x_i+0.1)/(y_i+0.1(y_i-2x_i/y_i))]
$$
根据上述迭代公式,我们可以得到以下数值解:
$y_0=1$
$y_1=1.1$
$y_2=1.2118$
$y_3=1.3374$
$y_4=1.4771$
$y_5=1.6313$
$y_6=1.8006$
$y_7=1.9854$
$y_8=2.1865$
$y_9=2.4047$
$y_{10}=2.6412$
因此,该方程在区间[0,1]上的数值解为$y(0)=1$,$y(0.1)=1.1$,$y(0.2)=1.2118$,$\cdots$,$y(1)=2.6412$。
阅读全文