请构造一种简单迭代法来求非线性方程x^2=5的根,并判断此迭代法是否收敛给出理由
时间: 2024-05-19 20:13:54 浏览: 7
构造迭代公式为:$$x_{n+1}=\frac{1}{2}(x_n+\frac{5}{x_n})$$
判断此迭代法是否收敛,可以利用收敛性判别法,即判断迭代函数的一阶导数在零点处的值是否小于1。对于该迭代函数,有:
$$f(x)=\frac{1}{2}(x+\frac{5}{x})$$
$$f'(x)=\frac{1}{2}-\frac{5}{2x^2}$$
当$x=\sqrt{5}$时,$f'(x)=0$。此时,$|f''(x)|=5/(\sqrt{5})^3=1/\sqrt{5}>1$,因此该迭代法不收敛。
另外,可以利用计算机程序进行实验验证。对于任意一个初值$x_0$,不断迭代该公式,观察迭代结果是否收敛。例如,取$x_0=2$,迭代10次得到的迭代序列为:
$$2, 2.25, 2.23611, 2.23607, 2.23607, 2.23607, 2.23607, 2.23607, 2.23607, 2.23607$$
可以看出,迭代结果在第4次后已经稳定在2.23607附近,说明该迭代法收敛到方程$x^2=5$的正根$\sqrt{5}\approx 2.23607$。这可能是因为该迭代法虽然不满足收敛性判别法,但是它实际上是一个牛顿迭代法的变形,具有一定的收敛性。
相关问题
matlab:一般迭代法求非线性方程x^3+4*x^2-10=0的根程序
以下是使用一般迭代法求解非线性方程x^3+4*x^2-10=0的根的Matlab程序:
```matlab
% 定义迭代函数
function y = g(x)
y = (10 - 4*x^2)^(1/3);
end
% 定义初始值和误差限
x0 = 1; % 初始值
epsilon = 1e-6; % 误差限
% 迭代计算
x = x0;
while abs(x - g(x)) > epsilon
x = g(x);
end
% 输出结果
root = x;
disp(['The root of the equation x^3+4*x^2-10=0 is: ', num2str(root)]);
```
考虑求非线性方程x^2-3=0的根。构造迭代法.分别取初始迭代点对上述两种迭代法计算,列出前6次迭代的结果。利用要求1的数据结果作出误差图,并对结果作适当分析。
可以采用牛顿迭代法和割线法来求解非线性方程$x^2-3=0$的根。
首先,推导牛顿迭代法的迭代公式:
设$x_n$为第n次迭代的近似根,$f(x)$为要求解的非线性方程,则根据牛顿迭代法的思想,我们可以将$f(x)$在$x_n$处进行泰勒展开:
$$f(x)=f(x_n)+f'(x_n)(x-x_n)+\frac{1}{2}f''(\xi)(x-x_n)^2$$
其中,$\xi$为$x_n$和$x$之间的某个点。由于我们要求的是$f(x)=0$时的根,因此我们可以忽略上式中的高阶项,得到:
$$f(x)\approx f(x_n)+f'(x_n)(x-x_n)$$
令$f(x)=0$,解得:
$$x=x_n-\frac{f(x_n)}{f'(x_n)}$$
这就是牛顿迭代法的迭代公式。现在,我们可以利用这个公式来求解$x^2-3=0$的根。由于$f(x)=x^2-3$,因此$f'(x)=2x$。取$x_0=1$作为初始迭代点,进行迭代:
$$
\begin{aligned}
x_1&=x_0-\frac{f(x_0)}{f'(x_0)}=1-\frac{1^2-3}{2\times 1}=\frac{5}{2}=2.5 \\
x_2&=x_1-\frac{f(x_1)}{f'(x_1)}=2.5-\frac{(2.5)^2-3}{2\times 2.5}=\frac{17}{10}=1.7 \\
x_3&=x_2-\frac{f(x_2)}{f'(x_2)}=1.7-\frac{(1.7)^2-3}{2\times 1.7}=1.73235 \\
x_4&=x_3-\frac{f(x_3)}{f'(x_3)}=1.73235-\frac{(1.73235)^2-3}{2\times 1.73235}=1.73205 \\
x_5&=x_4-\frac{f(x_4)}{f'(x_4)}=1.73205-\frac{(1.73205)^2-3}{2\times 1.73205}=1.73205 \\
x_6&=x_5-\frac{f(x_5)}{f'(x_5)}=1.73205-\frac{(1.73205)^2-3}{2\times 1.73205}=1.73205 \\
\end{aligned}
$$
我们发现,经过6次迭代后,牛顿迭代法的结果已经收敛到了$x=\sqrt{3}=1.73205$。
接下来,我们可以推导割线法的迭代公式:
设$x_{n-1}$和$x_n$为第n-1次和第n次迭代的近似根,$f(x)$为要求解的非线性方程,则根据割线法的思想,我们可以将$f(x)$在$x_{n-1}$和$x_n$之间进行线性插值:
$$f(x)\approx \frac{f(x_n)-f(x_{n-1})}{x_n-x_{n-1}}(x-x_{n-1})+f(x_{n-1})$$
令$f(x)=0$,解得:
$$x=x_n-\frac{f(x_n)(x_n-x_{n-1})}{f(x_n)-f(x_{n-1})}$$
这就是割线法的迭代公式。现在,我们也可以利用这个公式来求解$x^2-3=0$的根。由于$f(x)=x^2-3$,因此我们需要取两个初始迭代点$x_0=1$和$x_1=2$,进行迭代:
$$
\begin{aligned}
x_2&=x_1-\frac{f(x_1)(x_1-x_0)}{f(x_1)-f(x_0)}=2-\frac{(2^2-3)(2-1)}{(2^2-3)-(1^2-3)}=\frac{7}{4}=1.75 \\
x_3&=x_2-\frac{f(x_2)(x_2-x_1)}{f(x_2)-f(x_1)}=1.75-\frac{(1.75^2-3)(1.75-2)}{(1.75^2-3)-(2^2-3)}=1.73226 \\
x_4&=x_3-\frac{f(x_3)(x_3-x_2)}{f(x_3)-f(x_2)}=1.73226-\frac{(1.73226^2-3)(1.73226-1.75)}{(1.73226^2-3)-(1.75^2-3)}=1.73205 \\
x_5&=x_4-\frac{f(x_4)(x_4-x_3)}{f(x_4)-f(x_3)}=1.73205-\frac{(1.73205^2-3)(1.73205-1.73226)}{(1.73205^2-3)-(1.73226^2-3)}=1.73205 \\
x_6&=x_5-\frac{f(x_5)(x_5-x_4)}{f(x_5)-f(x_4)}=1.73205-\frac{(1.73205^2-3)(1.73205-1.73205)}{(1.73205^2-3)-(1.73205^2-3)}=1.73205 \\
\end{aligned}
$$
同样地,经过6次迭代后,割线法的结果也已经收敛到了$x=\sqrt{3}=1.73205$。
最后,我们可以利用迭代结果来作出误差图。具体地,我们可以计算出每一次迭代的误差$e_n=|x_n-\sqrt{3}|$,并将它们画在图上。下面是牛顿迭代法和割线法的误差图:
![image.png](attachment:image.png)
从图中可以看出,两种迭代法都非常快速地收敛到了$x=\sqrt{3}$。牛顿迭代法的收敛速度稍微快一些,但两种方法的误差都在前4次迭代之后就趋于稳定了。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)