数值积分算法实验报告.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数值积分算法实验报告

数值积分算法实验报告 实验目的:验证数值分析理论 实验工具:matlab 摘要:本实验通过对比龙贝格积分算法和三点,五点勒让德高斯求积公式,对数值分析理论进行验证。文章中提供了用matlab写的小程序即运行结果。我们可以看到,龙贝格积分算法方便快捷且效率较高。三点积分算法不足以满足精度要求,五点法基本可以满足,但是如果追求更高精度,则五点法改进困难,而龙贝格则可适用于任何精度的计算。高斯求积的效率是比较高的,只需五点就可以达到非常高的精度。 一 matlab源程序 1.%龙贝格积分算法,jd表示相对精度 function z=lbgjf(a,b,jd) h=(b-a); TT(1,1)=h.*(f(b)+f(a))/2; k=2; TT(1,2)=TT(1,1)./2+h/2.*f(a+h/2); TT(2,1)=TT(1,2).*4/3-TT(1,1)./3; z=TT(2,1); while abs((TT(k,1)-TT(k-1,1))./TT(k,1))=jd k=k+1;h=h./2; for j=1:2.^(k-2) ff(1,j)=f(a+h*(j-1/2)); end fff=sum(ff).*h/2; TT(1,k)=TT(1,k-1)./2+fff; for j=2:k TT(j,k-j+1)=4^(j-1).*TT(j-1,k-j+2)./(4^(j-1)-1)-TT(j-1,k-j+1)/(4^(j-1)-1); z=TT(j,k-j+1); end end 2 %五点法·¨ function z=fivedlrd(a,b) Ak=[0.2369269 0.4786287 0.5688889 0.4786287 0.2369269];xk=[-0.9061798 -0.5384693 0 0.5384693 0.9061798]; for i=1:5 ff(i)=Ak(i).*f((b-a).*xk(i)./2+(b+a)./2); end z=(b-a)./2.*sum(ff) 3%三点法¨ function z=threedlrd(a,b) Ak=[0.5555556 0.8888889 0.5555556]; xk=[-0.7745967 0 0.7745967]; for i=1:3 ff(i)=Ak(i).*f((b-a).*xk(i)./2+(b+a)./2); end z=(b-a)./2.*sum(ff) 4%另用一matlab文件来表示函数 function y=f(x) y=sin(x).^10; end 二 实验过程 1 f(x)=x.^2, 2 f(x)=x.^3 可以看到,对于这种简单函数三种方法基本没有区别 3 f(x)=sin(x).^10. lbgjf(2,3,10e-6) ans = 0.0608 fivedlrd(2,3) z = 0.0608 ans = 0.0608 threedlrd(2,3) z = 0.0618 ans = 0.0618 4f(x)= exp(exp(sin(x).^10)) threedlrd(2,3) z = 2.9278 ans = 2.9278 fivedlrd(2,3) z = 2.9304 ans = 2.9304 lbgjf(2,3,10e-6) ans = 2.9304 可见三点法已经不再满足要求。而就运行的效率而言,由于函数还是比较简单,龙贝格积分算法与五点法看不出区别。 三 试着运行较复杂的函数,并调整小数保留位数 1,f=exp(exp(sin(x).^10)) %设置保留十位有效数字 digits(10) vpa(threedlrd(0,1)) z = 2.7833 ans = 2.783341381 vpa(fivedlrd(0,1)) z = 2.7843 ans = 2.784294601 vpa(lbgjf(0,1,10e-10)) ans = 2.784300709 此时五点积分也有四位有效数字。 2 f= x.^(x.^exp(x)) vpa(fivedlrd(1,2)) z = 4.6999e+031 ans = .4699887108e32 vpa(lbgjf(0,1,10e-10)) ans = .8427189556 此时,可以看到龙贝格积分的速度已经没有五点法

文档评论(0)

tianma2015 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档