- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.29.2004
PAGE
PAGE 1
一.给出一个有效的算法和无效的算法计算积分
y(n)=∫(x^n)/(4x+1)dx,n=0,1,2,…,10,积分限为(0,1)
有效算法
利用递推公式y(n)=-y(n-1)/4+1/(4n),取y0=(log5)/4
程序为:#includeiostream.h
#includemath.h
void main()
{ double y0,y1;
y0=1/4.0*log(5.0);
couty0=y0 ;
for(int n=1;n=10;n++)
{ y1=-1.0/4.0*y0+1.0/(4.0*n);
coutyn=y1 ;
y0=y1;
if(n%3==0) coutendl;
}
}
其结果为: y0=0.402359 y1=0.14941 y2=0.0876475 y3=0.0614215
y4=0.0471446 y5=0.0382138 y6=0.0321132
y7=0.027686 y8=0.0243285 y9=0.0216957
y10=0.0195761 Press any key to continue
无效算法
利用递推公式y(n-1)=-4y(n)+1/n, 又由广义积分中值定理可得y(n)=1/((4n+1)(4ζ+1)), ζ∈(0,1),则1/(5(n+1))y(n)1/(n+1), 所以可取y(n)≈[1/(5(n+1))+ 1/(n+1)]/2=3/(5(n+1)
程序为:#includeiostream.h
#includemath.h
void main()
{ float y9,y10;
y10=3.0 /55.0;
couty10=y10 ;
for(int n=9;n=0;n--)
{ y9=-4.0*y10+1.0/(n+1);
coutyn=y9 ;
y10=y9;
if(n%3==0) coutendl;
}
}
其结果为:y10=0.0545455 y9=-0.118182
y8=0.583838 y7=-2.21035 y6=8.98427
y5=-35.7704 y4=143.282 y3=-572.877
y2=2291.84 y1=-9166.86 y0=36668.4
心得体会
由有效算法与无效算法的结果可以知道:有效算法的误差的传递是逐步缩小的,而无效算法的误差的传递是逐步扩大的。因此有效算法是数值稳定的算法。
二.用牛顿法求下列方程lnx+x-2=0的根。
1.算法
给定初值X0,ε为根的容许误差,η为|F(X)|的容许误差,N为迭代次数的容许值。
(1).如果F(X0)的导数等于零或者迭代次数大于N,则算法失败,结束;否则执行2。
(2).计算X1=X0-F(X0)/F’(X0)。
(3).若|X1-X0|ε,或者|F(X1)|η,则输出X1,程序结束,否则执行4。
(4).令X0=X1,转向1。
2.程序
#includeiostream.h
#includemath.h
#define EPS 1e-8
#define ETA 1e-8
#define N 100
float f(float x)
{
return log(x)+x-2;
}
float f1(float x)
{
return 1+1/x;
}
void main()
{ float x1,x0=1.5,d;
coutx0=x0 ;
for(int i=0;i=N;)
{ if(f1(x0)==0) break;
else x1=x0-f(x0)/f1(x0);
d=(x1-x0);
if(fabs(f(x1))ETAfabs(d)EPS)
{ coutx1endl;
break;
}
else x0=x1;
i++;
coutxi=x0 ;
while(i%3==0) coutendl;
}
coutThe root of the equation is x=x0endl;
}
3.结果
x0=1.5 x1=1.55672
x2=1.55715
1.55715
The root of the equation is x=1.55715
4.心得体会
通过牛顿迭代算法的编
您可能关注的文档
最近下载
- 2025入团积极分子考试题库(含答案).pdf VIP
- 2024中职专业目录(新版).docx VIP
- 迪斯尼音乐厅的建筑与声学.pdf VIP
- 第6章空间力系分解.ppt VIP
- 2025年部编人教版(统编新教材)小学语文二年级上册教学计划及进度表.docx
- 2025年肺功能检查测试题及答案.doc VIP
- 2025年高考数学全国新课标Ⅱ卷试卷评析及备考策略(课件).pptx VIP
- 酒吧调研报告.pptx
- 第8课《回忆鲁迅先生》课件 (共45张ppt) 2025-2026学年统编版语文八年级上册.pptx VIP
- 2023版《思想道德与法治》(绪论-第一章)绪论 担当复兴大任 成就时代新人;第一章 领悟人生真谛 把握人生方向 第3讲 创造有意义的人生.pptx VIP
文档评论(0)