二.算法步骤
1.Steffensen迭代法的算法:
Input : 区间端点a,b;最大迭代次数N ;最大误差要求del
Output:近似解或失败信息
while 
n←1
while(n<=N) do:
y←f(x0);z←f(y);
x←x_0-(y-x_0 )^2/(z-2y+x_0 );
If (|x-x0|<del) then;
return x;
End
n←n+1;
x0←x;
end
return False; 

三.MATLAB程序

2.2之一般迭代法
clc
e=10e-10;
x0=1.5;
x1=(3*x0+1)^(1/5);
while abs(x1-x0)>e;x0=x1;x1=(3*x0+1)^(1/5)
end
2.2之steffensen法
clc
x0=1.5;
e=(1e-5)*(1/2);
w=1;
char=['x','y','z'];
disp(char);
temp=2;
while w==1x=x0;y= y=(3*x0+1)^(1/5);z=(3*y+1)^(1/5);location=['B',num2str(temp),':D',num2str(temp)];ex=[x,y,z]; xlswrite('E:\BG1',ex,location);disp(ex);x=x0-((y-x0)^2)/(z-2*y+x0);if abs(x-x0)<ew=0;else x0=x;end
temp=temp+1;
end
2.3一般迭代法
clc
x=0.5:0.001:1.5;
y1=1+(1/2)*sin(x);
y2=abs(-(1/2)*cos(x));
y3=1;
plot(x,y1,&apos;r.&apos;,x,y2,&apos;k.&apos;,x,y3,&apos;m.&apos;);
text(0.9,1.4,&apos;f(x)&apos;);
text(0.9,0.9,&apos;y=1&apos;);
text(0.9,0.4,&apos;f(x)导数&apos;);
axis([0.5,1.5,0,1.5]);
2.3.2之steffensen法
clc
x0=1.5;
e=(1e-5)*(1/2);
w=1;
char=[' x ','y  ','z'];
disp(char);
temp=2;
while w==1x=x0;y=1+(1/2)*sin(x0);z=1+(1/2)*sin(y);location=['B',num2str(temp),':D',num2str(temp)];ex=[x,y,z]; xlswrite('E:\BG2',ex,location);disp(ex);x=x0-((y-x0)^2)/(z-2*y+x0);if abs(x-x0)<ew=0;else x0=x;end temp=temp+1;
end

四.结果分析:
1.用简单迭代法和steffensen迭代法都能求出非线性方程得近似解,且用一般迭代法和steffensen迭代法求出的近似解基本一样。
2. 用 Steffensen 迭代法来求解时迭代的次数少很多,可见 Steffensen 迭代法加速了收敛速度。

一般迭代法与steffensen迭代法matlab实现相关推荐

  1. 数值分析2-解非线性方程的不动点迭代法,斯蒂芬森(steffensen)迭代法,牛顿法以及简化牛顿法的matlab程序

    对于形如f(x)=0的单变量非线性方程,可以构造不同的迭代函数进行迭代求根,以f(x)=x3-x-1为例,我们可以简单的通过等式变形构造出x=x3-1和x=(x+1)(1/3)两种等价形式:也可以自己 ...

  2. 不动点迭代法matlab视频,不动点迭代法matlab

    不动点迭代法的 MATLAB 程序代码如下: Function [root,n]=StablePoint(f,x0,eps) %用不动点迭代法求函数的一个零点 %初始迭代向量:x0 %根的精度:eps ...

  3. matlab 高斯迭代法求解,高斯迭代法matlab算例

    Matlab 线性方程组的迭代解法 Gauss-Seidel 迭代法 Matlab 线性方程组的迭代解法 Gauss-Seidel 迭代法实验报告 1.熟悉 Gauss-Seidel 迭代法,并编写 ...

  4. 数值分析牛顿法 matlab,科学网—数值分析--非线性函数牛顿迭代法matlab程序 - 殷春武的博文...

    %%%程序编写者  西北工业大学自动化学院    Email: yincwxa2013@mail.nwpu.edu.cn %%  All rights reserved clear clc x0=in ...

  5. 用matlab求不动点迭代,科学网—数值分析--非线性方程组不动点迭代法matlab程序 - 殷春武的博文...

    %%%程序编写者  西北工业大学自动化学院    Email: yincwxa2013@mail.nwpu.edu.cn %%  All rights reserved clear clc x1=in ...

  6. 牛顿迭代法例题 matlab,牛顿迭代法-matlab程序(解线性方程组)

    牛顿迭代法 matlab程序(解线性方程组) 作者:佚名来源:转载发布时间:2009-3-7 16:55:53 减小字体 增大字体 1.功能 本程序采用牛顿法,求实系数高次代数方程 f(x)=a0xn ...

  7. 牛顿迭代法解线性方程matlab程序,牛顿迭代法matlab程序(解线性方程组)

    <牛顿迭代法matlab程序(解线性方程组)>由会员分享,可在线阅读,更多相关<牛顿迭代法matlab程序(解线性方程组)(4页珍藏版)>请在金锄头文库上搜索. 1.牛顿迭代法 ...

  8. 牛顿迭代法-matlab实现

    牛顿迭代法-matlab实现 牛顿迭代法简介: 牛顿迭代法又称为切线法,简单来说就是不断求切线与x轴的交点,来逐渐接近解的迭代过程.方法使用函数f(x)的泰勒级数的前面几项来寻找方程f(x) = 0的 ...

  9. matlab编jacobi方法,jacobi迭代法matlab

    h Matlab 线性方程组的迭代解法(Jacobi 迭代法 Gauss-Seidel 迭代法)实验报告 2008年11月09日 星期日 12:49 1.熟悉 Jacobi 迭代法,并编写 Matla ...

最新文章

  1. 皮一皮:人生就像编程,总有防不胜防的bug会被人发现...
  2. 【Android开发经验】android:windowSoftInputMode属性具体解释
  3. 园友们注意:淘宝网上QQ会员 4钻 3元 等都为骗子行为
  4. 测试综合技能的期末预测
  5. 几种多数据库表update的方式测试
  6. 【英语学习】【WOTD】opusculum 释义/词源/示例
  7. Python心得基础篇【7】面向对象进阶篇
  8. java sqlserver数据库连接_JAVA连接SQLserver数据库
  9. 【正点原子MP157连载】 第二十四章 DAC实验-摘自【正点原子】STM32MP1 M4裸机CubeIDE开发指南
  10. linux经典学习网站及博客
  11. vb.net 教程 3-1 窗体编程基础 1
  12. python不是内部命令或外部命令,也不是可执行程序解决方案”解决方法
  13. 2019秋季10月新番动漫推荐
  14. npm run dev之后 可爱(e’xin)的warning,error们
  15. Python 基础 函数的使用——参数
  16. 前端程序调试方法总结--高级版
  17. string大小写转换
  18. php cms 2017 排名,cms系统排行_PHP CMS系统排行榜
  19. C++ 变量的生存期
  20. 神奇的开关 — 可控硅

热门文章

  1. Linux平台设备驱动
  2. scrapy splash模拟点击
  3. 王阳明心学 量子物理_量子物理学论文的文本分类
  4. 分布式服务治理zookeeper原理及使用大全
  5. 实训——基于大数据Hadoop平台的医疗平台项目实战
  6. IDEA-集成VisualVM插件,启动Java VisualVM
  7. 助你成功的10个万能谈话技巧
  8. VMware Workstation导出的ovf格式虚拟机 不能用VirtualBox导入
  9. 袁萌浅谈C919大飞机(二)
  10. Mysql内查询时报错,错误代码: 1146