下载

1下载券

加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 牛顿迭代

牛顿迭代.doc

牛顿迭代

haodabao
2013-04-13 0人阅读 举报 0 0 暂无简介

简介:本文档为《牛顿迭代doc》,可适用于IT/计算机领域

实验题目Newton迭代法摘要为初始猜测则由递推关系产生逼近解的迭代序列这个递推公式就是Newton法。当距较近时很快收敛于。但当选择不当时会导致发散。通过事先规定迭代的最多次数和迭代的精度,若超过这个次数还没有达到预定精度则停止迭代另选初值。前言:采用c语言实现牛顿迭代。为了减少输入把两个精度ee设定成宏常量。通过此次实验我们可以发现牛顿迭代法既有优点又有缺点。优点是牛顿迭代往往收敛速度较快同时可以给出精确的数值解而缺点也是显而易见的牛顿迭代一定要找好合适的初始值若初始值选不好则可能迭代不收敛为此还需要其他方法给出合适的初始值。特别是函数具有多个密集分布的根时不易确定初始值而且迭代收敛速度慢。这是牛顿迭代不适宜用的地方。程序设计流程C语言编写的牛顿迭代法程序:#include<stdioh>#include<stdlibh>#include<mathh>#defineN#defineee#defineeedoublef(doublex)doubleff(doublex)voidmain(){doublea,F,DF,tol,xintn=printf("pleaseinputa:n")scanf("lf",a)for(n=n<=Nn){F=f(a)DF=ff(a)if(fabs(F)<e){printf("x=lf",a)exit()}if(fabs(DF)<e){printf("failedSUNn")exit()}x=a(double)FDFtol=fabs(xa)if(tol<e){printf("x=lf",x)exit()}a=x}printf("failedMOONn")}doublef(doublex){doubleff=cos(x)xreturnf}doubleff(doublex){doubleff=sin(x)returnf}注:对于具体的函数在f,ff函数中输入y及y的导数的表达式,再调试即可求解。而把e及e定为宏常量,可以方便直接更改。问题()小题:把f改成cosxx,ff改成sinx输入X=,再运行程序,最后得到X=()小题:把f改成exp(x)sin(x)ff改成exp(x)cos(x)输入X=再运行程序最后得到X=问题()小题:把f改成xexp(x)ff改成exp(x)输入X=再运行程序最后得到X=()小题:把f改成x*x*x*exp(x)exp(*x)ff改成*x*(exp(x)x*exp(x))*exp(*x)输入X=再运行程序最后得到X=思考题:若初始值接近于方程的根可以保证迭代收敛而初始值偏离方程的根较大时迭代有可能不收敛。我们可以用二分法事先确定根的大概估计值并把它作为牛顿迭代法的初始值。此外我们还可以用更简单的方法只要把初值X选取得使f’(x)f’’(x)同号则Xn趋于根即迭代收敛。实验中两个方程同根但第二个方程有重根逐步缩小N的值调用函数运算发现第一个方程迭代了次得出结果第二个方程迭代了次得出结果且第二个方程的结果不如第一个准确第一个结果为X=第二个结果为X=。而通过代入XX发现带入X得到的值更接近说明后者更准确。这是由于第二个方程在根处导数为在根的领域内导数很小使Newton法收敛速度变慢精度变低。通过作图可以发现函数在较小的区间内存在多个根。意味着导数也在小区间内有多个根。因此用牛顿迭代法求根不仅难以确定根的初始值而且迭代收敛速度很慢。可以用二分法求根。否�EMBEDEquationDSMT����EMBEDEquationDSMT���结束输出奇异标志输出�EMBEDEquationDSMT���输出迭代失败标志�EMBEDEquationDSMT����EMBEDEquationDSMT����EMBEDEquationDSMT����EMBEDEquationDSMT����EMBEDEquationDSMT���开始定义�EMBEDEquationDSMT���输入�EMBEDEquationDSMT���是是否是否unknownunknownunknownunknownunknownunknownunknownunknownunknownunknownunknownunknownunknownunknownunknownunknownunknownunknownunknownunknown

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/4

牛顿迭代

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利