ImageVerifierCode 换一换
格式:DOCX , 页数:93 ,大小:531.53KB ,
资源ID:10142973      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10142973.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数值分析上机报告.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数值分析上机报告.docx

1、数值分析上机报告 数值分析上机报告学 院 班 级 姓 名 学 号 指导教师 2013.06内 容第一次上机题目一分别用不动点迭代与Newton法求解方程的正根与负根。(1)不动点迭代a原理将变形为进行迭代,直到 为止变形后为有两种形式: 和b程序注:(初值为0,误差限为10e-6) 形式:Lx1_1_1.mx=zeros(100,1);tol=1;i=1;x(1)=0;while tol=10e-6; disp(x(i) x(i+1)=exp(2*x(i)-5; tol=abs(x(i+1)-x(i); i=i+1;enddisp(i-1); 形式:Lx1_1_2.mx=zeros(100,1

2、);tol=1;i=1;x(1)=0;while tol=10e-6; disp(x(i) x(i+1)=1/2*log(x(i)+5); tol=abs(x(i+1)-x(i); i=i+1;enddisp(i-1);c运行结果注:(初值为0,误差限为10e-6)正根:x1x2x3x4x5x600.804718950.879335600.885721880.886264700.88631081负根:x1x2x3x40-4-4.99966454-4.99995457(2)Newton法a原理假设,是方程根的近似,考虑在点展开的一阶泰勒多项式:,则有:,即, ,通过初始值p0,就可以产生序列:。

3、针对本题来说,迭代公式为: b程序注:(误差限为10e-6)Lx1_1_3.mclc,clear %Newton法p0=1;%求正根p0=-2;%求负根TOL=10(-6);N0=30;%Inputi=1;format long g;while i=N0 p=p0-(p0-exp(2*p0)+5)/(1-2*exp(2*p0); disp(p); if abs(p-p0)N0disp(超过最大迭代步数,原方程无解!);endc运行结果注:(误差限为10e-6)正根:X0X1X2X3X410.899183860.886494100.886315130.88631509负根:X0X1X2X3-2-

4、5.09506038-4.99995532- 4.99995460结果分析:不动点迭代会因为迭代公式选取的不同得出不同的迭代结果,而牛顿法迭代会因为初值选取的不同而得到不同的结果。牛顿法比不动点迭代法收敛速度快,能使用较少的迭代步数达到理想的结果。题目二 P100,2.6.9对于,使用下面的各种方法求位于0.1,1 内的解,精确到10e-4。a.二分法 b .Newton法 c. 正割法 d. 试位法 e. Mller法 (1)二分法a原理假定f(x)是定义在a,b上的连续函数,且f(a)和f(b)反号。设a1=a和b1=b,p1是a,b的中点。 若f(p1)与f(a1)同号,让a2=p1,b

5、2=b1;若f(pn)与f(a1)反号,让a2= a1,b2=p1;重复此过程直到f(pn)=0或者,终止迭代。b.程序注:(误差限为10e-4)Lx1_2_1.mclc,clear %二分法TOL=10(-4);N0=30;a=0.1;b=1;i=1;format long g;FA=600*a4-550*a3+200*a2-20*a-1;while i=N0 p=a+(b-a)/2; FP=600*p4-550*p3+200*p2-20*p-1;disp(i);disp(a);disp(b);disp(p);disp(FP); if FP=0 | (b-a)/20 a=p;FA=FP; e

6、lse b=p; end endendif iN0 disp(超过最大迭代步数,原方程无解!);endc.运行结果注:(误差限为10e-4)NAnBnPnF(Pn)10.110.5511.897520.10.550.3251.43851562530.10.3250.2125-0.272934570312540.21250.3250.268750.52432952880859350.21250.268750.2406250.11629644393920860.21250.2406250.2265625-0.080510288476942270.22656250.2406250.233593750

7、.017347389683127580.22656250.233593750.230078125.0317*90.2300781250.233593750.2318359375-0.00721856665244491100.23183593750.233593750.232714843750.00505592718842429110.23183593750.232714843750.232275390625-0.00108343871279004120.2322753906250.232714843750.23249511718750.00198571425098226130.23227539

8、06250.23249511718750.232385253906250.000451005303902186140.2322753906250.232385253906250.232330322265625-0.000316249816916248(2)Newton法a原理如题目一,令,得到本题迭代公式为:b.程序注:(误差限为10e-4,初值x0=0.5)Lx1_2_2.mclc,clear %Newton法p0=0.5;TOL=10(-4);N0=30;i=1;format long g;while i=N0 p=p0-(600*p04-550*p03+200*p02-20*p0-1)/

9、(2400*p03-1650*p02+400*p0-20); disp(i); disp(p); if abs(p-p0)N0 disp(超过最大迭代步数,原方程无解!);endc.运行结果注:(误差限为10e-4,初值x0=0.5)X0X1X2X30.50.3851851851851850.2812826491652530.234848973527312X4X50.2323578624218840.232352964768764(3)正割法a原理在Newton公式中使用近似公式,得到迭代公式为:,b.程序注:(误差限为10e-4,初值x0=0.15,x1=0.85)Lx1_2_3.mclc,

10、clear %正割法p0=0.15;p1=0.85;TOL=10(-4);N0=30;i=1;q0=600*p04-550*p03+200*p02-20*p0-1;q1=600*p14-550*p13+200*p12-20*p1-1;while i=N0 p=p1-q1*(p1-p0)/(q1-q0); disp(i+1); disp(p); if abs(p-p1)N0 disp(超过最大迭代步数,原方程无解!);endc.运行结果注:(误差限为10e-4,初值x0=0.15,x1=0.85)X0X1X2X30.150.850.157*86410.163700278470673X4X5X6X

11、70.2408853731511510.2317730923239290.2323490659375360.232352966526348(4)试位法a原理在正割法基础上增加检验:即对满足初值x0和x1,x2取连接所得直线截距。但为了计算x3,需要检验,若为负值,x3取连接所得直线截距,否则,x3取连接所得直线截距,并交换x0和x1下标,同理确定以后的Xk的值。b.程序注:(误差限为10e-4,初值x0=0.1,x1=0.4)Lx1_2_4.mclc,clear %试位法p0=0.1;p1=0.4;TOL=10(-4);N0=100;i=1;q0=600*p04-550*p03+200*p02

12、-20*p0-1;q1=600*p14-550*p13+200*p12-20*p1-1;while i=N0 p=p1-q1*(p1-p0)/(q1-q0); disp(i+1); disp(p); if abs(p-p1)TOL break; else i=i+1; q=600*p4-550*p3+200*p2-20*p-1; if q*q1N0 disp(超过最大迭代步数,原方程无解!);endc.运行结果注:(误差限为10e-4,初值x0=0.1,x1=0.4)X0X1X2X30.10.40.1961290322580650.223540690358892X4X5X6X70.230112

13、2035189140.2317754155258630.232203*0.232314285473330X80.232342947957081(5)Mller法a原理Mller法通过考虑经过、和的抛物线与x轴交点的横坐标来确定下一个近似值x3.以此类推。b.程序注:(误差限为10e-4,初值x0=0.1,x1=0.3,x2=0.5)Lx1_2_5.mclc,clear %Mller 法 TOL=10(-4);N0=30;%Inputi=1;x0=0.1;x1=0.3;x2=0.5;h1=x1-x0;h2=x2-x1;det1=(600*x14-550*x13+200*x12-20*x1-1)-

14、(600*x04-550*x03+200*x02-20*x0-1)/h1;det2=(600*x24-550*x23+200*x22-20*x2-1)-(600*x14-550*x13+200*x12-20*x1-1)/h2;d=(det2-det1)/(h2+h1);while i=N0 b=det2+h2*d; D=sqrt(b2-4*(600*x24-550*x23+200*x22-20*x2-1)*d); disp(i+2); if abs(b-D)abs(b+D) E=b+D; else E=b-D; end h=-2*(600*x24-550*x23+200*x22-20*x2-1

15、)/E; p=x2+h; disp(p); if abs(h)N0 disp(超过最大迭代步数,原方程无解!);endc.运行结果注:(误差限为10e-4,初值x0=0.1,x1=0.3,x2=0.5)X0X1X2X30.10.30.50.250700784928408X4X5X6X70.2234158903910800.2329155744008380.2323530547699870.232352964750002结果分析: 通过实验结果比较我们可以看到,Newton法只需选取不同的初始值,便可求出全部的解,即牛顿法对于它的全部解都是收敛的。二分法比较简单易行,但对初值的选取必须满足函数值

16、乘积为负,且收敛速度较慢。正割法是对Newton法的改进,Mller 法和试位法是对正割法的改进,所以这几种算法差别不太大,但是,由于二者弥补了正割法的不足,所以,相对来说更精确一些。题目三 用Newton法求解方程f(x)的零点,e=10-6 ,这里。再用求重根的两种方法求f(x)的零点。a原理求重根的方法:1、定义,如果p是f(x)的一个m重零点,并且有,和由于,其中p是u(x)的单重零点。应用牛顿法就可以得到如下公式:迭代形式为:。如果g具有需要的连续性条件,则无论f(x)零点的重数,关于g的迭代公式就是二次收敛。2、如果p是f(x)的多重零点,定义b程序1Newton法注:(误差限为1

17、0e-6,初值x0=0.5)Lx1_3_1.mclear all;clc;p0=0.01;tol=10e-6;N0=100;i=1;format long g;while i=N0 p=p0-(p0-sin(p0)/(1-cos(p0); disp(i); disp(p); if abs(p-p0)N0 disp(超过最大迭代步数,原方程无解!);end2第一种求重根方法注:(误差限为10e-6,初值x0=0.5)Lx1_3_2.m%第一种求重根方法clear all;clc;p0=0.5;tol=10e-6;N0=30;i=1;format long g;while i=N0 p=p0-(p

18、0-sin(p0)*(1-cos(p0)/(1-cos(p0)2-(p0-sin(p0)*sin(p0); disp(i); disp(p); if abs(p-p0)N0 disp(超过最大迭代步数,原方程无解!);end3第二种求重根方法注:(误差限为10e-6,初值x0=0.5,重数m取为2)Lx1_3_3.m%第二种求重根方法clear all;clc;p0=0.5;tol=10e-6;N0=30;m=2;i=1;format long g;while i=N0 p=p0-m*(p0-sin(p0)/(1-cos(p0); disp(i); disp(p); if abs(p-p0)N

19、0 disp(超过最大迭代步数,原方程无解!);endc运行结果1Newton法注:(误差限为10e-6,初值x0=0.5)X0X1X2X30.50.331931939489110.220880000703620.147133388298258X22X23X24X256.6327737201341e-054.42184894556538e-052.94789959330259e-051.9652668253838e-052第一种求重根方法注:(误差限为10e-6,初值x0=0.5)X0X1X2X30.50.008274056887745023.77629891905318e-081.50220

20、208792981e-083第二种求重根方法注:(误差限为10e-6,初值x0=0.5,重数m取为2)X0X1X2X30.50.1638638789782190.0545234220364570.0181708716869622X4X5X6X70.0060568239014230.0020189363628070.00067297860467170.0002243261947150X8X9X10X117.47753973315954e-052.49251358236218e-058.30837786750213e-062.76950811671404e-06结果分析: 由课本知识我们得知,用N

21、ewton法求重根时只能达到线性收敛。从以上实验结果可以看出,Newton法的迭代次数要远远多于后面两种求重根方法的迭代次数。而后两种方法相比,第一种方法收敛速度要明显快于第二种方法。题目四 用Newton法求解方程f(x)的零点,e=10-6 ,这里 。再用Steffensens method加速其收敛。a原理1Newton法Newton法原理同题1。2Steffensens 方法和Aitken2方法稍有不同,Steffensens 方法构造同样的开始的前4项:p0,p1,p2和。但是,在这一步,它假设比p2更好的逼近p,从而将不动点迭代应用于而不是p2。使用这种符号产生的序列为:每个第3项

22、由2方法产生,其余的由不动点方法产生。b程序1Newton法注:(误差限为10e-6,初值x0=0.5)程序同题目三。2Steffensens 方法Lx1_4_2.m%Steffensens方法clear all;clc p0=0.5;TOL=10(-6);N0=100;i=1;while i=N0 p1=sin(p0); p2=sin(p1); delte_2_pn=p2-2*p1+p0; if delte_2_pn=0 %第一处终止条件 break; end p=p0-(p1-p0)2/delte_2_pn; disp(i); disp(p); disp(p1); disp(p2); if

23、 abs(p-p0)N0 disp(超过最大迭代步数,原方程无解!);endc运行结果1Newton法注:(误差限为10e-6,初值x0=0.5)X0X1X2X30.50.331931939489110.220880000703620.147133388298258X22X23X24X256.6327737201341e-054.42184894556538e-052.94789959330259e-051.9652668253838e-052Steffensens 方法k00.50.4794255386042030.46126955503318110.3249690539268930.319

24、2794596354510.31388251658303220.214354510454120.212716755849220.21111619848984430.1422459414419530.141766727971670.14129233825280440.09463868926992930.0944974809095575.0943*160.0007279124937069750.0007279124294254370.000727912365143916170.000485160618961170.0004851605999282520.000485160580895337180.0003221760068692380.0003221760012957340.00032217599572223190.000207570264469470.0002075702629789280.000207570261488386200.000125603451414741结果分析: 与Newton法相比, Steffensen的收敛速度应该会更快一些,因为,理论上Steffensen方法是二次收敛的,而应用于求重根的Newton方法只能

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1