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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(MATLAB计算方法迭代法牛顿法二分法实验报告要点.docx)为本站会员(HR专家)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

MATLAB计算方法迭代法牛顿法二分法实验报告要点.docx

1、姓名实验报告成绩评语:指导教师(签名)年月日说明:指导教师评分后,实验报告交院(系)办公室保存。实验一方程求根一、 实验目的用各种方法求任意实函数方程f (x) 0 在自变量区间 a ,b 上,或某一点附近的实根。并比较方法的优劣。二、 实验原理(1) 、二分法ba对方程 f ( x) 0 在a ,b 内求根。将所给区间二分,在分点x判2ba断是否 f ( x) 0x2 。否则,继续判断是否 f (a)f ( x)0 ,;若是,则有根若是,则令 bx , 否则令 a x 。否则令 a x 。重复此过程直至求出方程f (x) 0 在a,b中的近似根为止。(2)、迭代法将方程 f ( x)0 等价

2、变换为 x =( x )形式,并建立相应的迭代公式xk 1( x )。(3)、牛顿法若已知方程的一个近似根 x0 ,则函数在点 x0 附近可用一阶泰勒多项式 p1 ( x) f ( x0 ) f (x0 )( xx0 ) 来 近似 , 因此 方 程 f ( x)0 可 近 似表 示 为f ( x0 )f (x)f (x0 )( x x )0设f ( x )0, 则 x x0f ( x0 ) 。取 x 作为原方程新的近00f ( xk )似根 x1,然后将 x1作为 x0 代入上式。迭代公式为:xk 1x0 f ( xk ) 。三、实验设备 :MATLAB 7.0软件四、结果预测(1) x11

3、=0.09033(2) x5 =0.09052 (3) x2 =0,09052五、 实验内容(1)、在区间 0,1上用二分法求方程 ex10x 2 0 的近似根,要求误差不超过 0.5 10 3。f (xk )(2)、取初值 x0 0 ,用迭代公式 xk 1 x0 f (xk ) ,求方程 ex 10x 2 0 的近似根。要求误差不超过 0.5 10 3 。(3)、取初值 x0 0 ,用牛顿迭代法求方程 ex 10 x 2 0 的近似根。要求误差不超过 0.5 10 3 。六、实验步骤与实验程序(1)二分法第一步:在 MATLAB 7.0 软件,建立一个实现二分法的MATLAB函数文件 agu

4、i_bisect.m 如下:function x=agui_bisect(fname,a,b,e)%fname为函数名, a,b 为区间端点, e 为精度fa=feval(fname,a); %把 a 端点代入函数,求fafb=feval(fname,b); %把 b 端点代入函数,求fbif fa*fb0 error(两端函数值为同号);end%如果 fa*fb0 ,则输出两端函数值为同号k=0x=(a+b)/2while(b-a)(2*e) %循环条件的限制fx=feval(fname,x);%把 x 代入代入函数,求fxif fa*fxfun=inline(exp(x)+10*x-2)

5、x=agui_bisect(fun,0,1,0.5*10-3)第三步:得到计算结果,且计算结果为kx00.5000000000000010.2500000000000020.1250000000000030.0625000000000040.0937500000000050.0781250000000060.0859375000000070.0898437500000080.0917968750000090.09082031250000100.09033203125000110.09033203125000(2)迭代法第一步:第一步:在 MATLAB7.0 软件,建立一个实现迭代法的MATLA

6、B函数文件 agui_main.m 如下:function x=agui_main(fname,x0,e)%fname为函数名 dfname 的函数 fname 的导数, x0 为迭代初值%e为精度, N为最大迭代次数 ( 默认为 100)N=100;x=x0; % 把 x0 赋给 x,再算 x+2*e 赋给 x0x0=x+2*e;k=0;whileabs(x0-x)e&kfun=inline(exp(x)+10*x-2) x=agui_main(fun,0,1,0.5*10-3)第三步:得出计算结果,且计算结果为kx10.1000000000000020.0894829081924430.0

7、906391358595840.0905126166743750.09051261667437以下是结果的屏幕截图(3)牛顿迭代法第一步 :第一步:在MATLAB 7.0 软件,建立一个实现牛顿迭代法的MATLAB函数文件 =agui_newton.m 如下:function x=agui_newton(fname,dfname,x0,e)%fname为函数名 dfname 的函数 fname 的导数, x0 为迭代初值%e为精度, N为最大迭代次数 ( 默认为 100)N=100;x=x0; % 把 x0 赋给 x,再算 x+2*e 赋给 x0x0=x+2*e;k=0;whileabs(x0

8、-x)e&kfun=inline(exp(x)+10*x-2) dfun=inline(exp(x)+10) x=agui_newton(fun,dfun,0,0.5*10-3)第三步: 得出结果,且结果为kx10.0909090909090920.0905251085833930.09052510858339以下是结果的屏幕截图七、实验结果(1) x11 =0.09033(2) x5 =0.09052(3) x2 =0,09052八、实验分析与结论由上面的对二分法、迭代法、牛顿法三种方法的三次实验结果,我们可以得出这样的结论:二分法要循环k=11 次,迭代法要迭代k=5 次,牛顿法要迭代 k=2 次才能达到精度为0.5 10 3 的要求,而且方程 ex10x 2 0的精确解经计算,为 0.0905250,计算量从大到小依次是 :二分法 ,迭代法 ,牛顿法。由此可知,牛顿法和迭代法的精确度要优越于二分法。而这三种方法中,牛顿法不仅计算量少,而且精确度高。从而可知牛顿迭代法收敛速度明显加快。可是迭代法是局部收敛的,其收敛性与初值x0 有关。二分法收敛虽然是速度最慢,但也有自己的优势,可常用于求精度不高的近似根。迭代法是逐次逼近的方法, 原理简单 , 但存在收敛性和收敛速度的问题。对与不同的题目, 可以从三种方法的优缺点考虑用哪一种方法比较好。

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报