上机作业1研究.docx

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2015级研究生 《计算方法》作业 2015年11月 上机作业1 数值试验3 3-1试验目的:考察不动点迭代法的局部收敛性 试验内容: 至少采用3种迭代法,迭代100次,考察收敛性,改变初值符号,再做迭代。分析收敛与发散的原因。 (1)迭代原理:若实数满足,称为函数的一个不动点,迭代称为不动点迭代,称为迭代函数。由不动点方程建立迭代法,其中称为初值,需要预先给定。 方程分别对应下列不同形式的不动点方程: ? ? ? 取,按迭代,并分析收敛性。 (2)不动点迭代法代码 编制函数文件 Iteratepro.m function y=iteratepro(x) x1=g(x); n=1; while (norm(x1-x) =1.0e-5) (n=100) x=x1; x1=g(x);n=n+1; end x1 n 编制函数文件 不动点方程(1) function y=g(x) y=(exp(x)-3)/2; 不动点方程(2) function y=g(x) y=exp(x)-x-3; 不动点方程(3) function y=g(x) y=x-(2*x-exp(x)+3)/(2-exp(x)); (3)迭代结果汇总表: 近似解 初值x=-0.5 迭代次数n 初值x=0.5 迭代次数n 格式(1) -1.1967 7 -1.3734 8 格式(2) -1.3734 42 -1.3734 41 格式(3) -1.3734 4 -1.3734 5 (4)结果分析: (1)三种迭代格式均收敛,近似解为。 (2)当设定的初值接近真实解,所用的迭代次数较小。 (3)不同迭代格式,效果不一样,迭代格式(3)实质是newton迭代法,其迭代效果明显快于其他格式。 3-2试验目的:考察Newton法求根的收敛速度 试验内容:应用Newton法求解试验3-1中的方程,并与实验3-1中收敛的迭代法进行比较,考察收敛速度。精确到0.00001。 (1)Newton迭代法原理: 在求解非线性方程时,它的困难在于是非线性函数,为克服这一困难,考虑它的线性展开。设当前点为,在处的展开式为 令,解其方程得到 (2)程序代码 编制函数文件 newton.m function y=newton(x0) x1=x0-fc(x0)/df(x0); n=1; while (abs(x1-x0)=1.0e-5)(n=100) x0=x1; x1=x0-fc(x0)/df(x0);n=n+1; end x1 n 对于试验3-1编制函数文件 fc.m function y=fc(x) y=2*x-exp(x)+3; df.m function y=df(x) y=2-exp(x); (3)运行结果 结果汇总表: 近似解 初值x=-0.5 迭代次数n 初值x=0.5 迭代次数n 格式(1) -1.1967 7 -1.3734 8 格式(2) -1.3734 42 -1.3734 41 Newton迭代 -1.3734 4 -1.3734 5 结果分析: (1)三者结果均收敛,解。 (2)Newton迭代法迭代次数最小,收敛速度明显优于格式(1),(2)。 3-3 试验目的:掌握求重根的方法 试验内容:分别用Newton法和不动点迭代法求解方程,考察收敛速度,再用求重根的两种方法求方程的根,精确到0.00001。 (1)实验原理同3-1,3-2; (2)程序代码 Newton迭代法程序 函数文件 fc.m function y=fc(x) y=x-sin(x); df.m function y=df(x) y=1-cos(x); 程序代码 newton.m function y=newton(x0) x1=x0-fc(x0)/df(x0); n=1; while abs(x1-x0)=1.0e-5 x0=x1; x1=x0-fc(x0)/df(x0);n=n+1; end 不动点迭代法 编制函数文件 Iteratepro.m function y=iteratepro(x) x1=g(x); n=1; while norm(x1-x)=1.0e-6 x=x1; x1=g(x);n=n+1; end 函数文件 g.m function y=g(x) y=sin(x); 运行结果 近似解 初值x=1 迭代次数n 牛顿法 1.9449

文档评论(0)

知识宝库 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档