MATLAB利用迭代法进行的算例

迭代法的基本思想:对给定方程f(x)=0,将它转换成等价的形式x=\varphi (x)。给定x_0,构造序列

 x_{k+1}=\varphi(x_k)k=1,2,3,\cdots,如果迭代收敛

\lim_{k\to \infty }x_{k+1}=\lim_{k\to \infty }\varphi (x_k)=x^*

x^*即为方程f(x)=0的根。

这种求根方法称为迭代法,x_{k+1}=\varphi (x_{k})称为迭代格式,\varphi (x)称为迭代函数,若迭代序列收敛,则称迭代格式收敛,否则称为发散。

算例:

用迭代法求方程x^4+2x^2-x-3=0[1,1.2]的实根。

利用等价形式:

(1)x=\varphi _1(x)=(3+x-2x^2)^{\frac{1}{4}}

(2)x=\varphi_2(x)=\sqrt{\sqrt{x+4}-1}

(3)x=\varphi _3(x) =x^4+2x^2-3

取初始近似值x_0=1,分别考虑用迭代公式计算。

迭代法代码:

function [i,xk] = interative(x0,eps,k)
x(1) = x0;
for i = 1:k
    x(i+1) = fy(x(i));
    if abs(x(i+1)-x(i)) < eps
        break
    end
end
xk = x(i+1);
[i,xk]

函数文件如下: 

function y = fy(x)
y = (3+x-2*x^2)^(1/4);
% y = sqrt(sqrt(x+4)-1);
% y = x^4+2*x^2-3;

输入命令interative(1,1e-10,100),得到:

(1)45.0000    1.1241

(2)10.0000    1.1241

(3)100   Inf

说明前两种迭代格式收敛,第三种迭代格式发散。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值