变步长复化辛普森公式计算积分

上传人:pu****.1 文档编号:575282063 上传时间:2024-08-17 格式:PDF 页数:3 大小:105.35KB
返回 下载 相关 举报
变步长复化辛普森公式计算积分_第1页
第1页 / 共3页
变步长复化辛普森公式计算积分_第2页
第2页 / 共3页
变步长复化辛普森公式计算积分_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《变步长复化辛普森公式计算积分》由会员分享,可在线阅读,更多相关《变步长复化辛普森公式计算积分(3页珍藏版)》请在金锄头文库上搜索。

1、2. 编写用变步长复化辛普森公式计算积分( )baf x dx 的程序。 用上面编写的程序计算下列积分并分析计算结果 (1)0cosxxdx (2)2202cosxx dx (3)10dxx 程序: function S=bianfuhuasimpson(fx,a,b,eps,M) % 变步长复合 simpson 求积公式 % 调用方式: S=fuhuasimpson(fx,a,b,epsilon) % fx - 求积函数(函数文件) % a, b - 求积区间 % eps - 计算精度 % M-最大允许输出划分数 n=1; h=(b-a)/n; T1=h*(feval(fx,a)-feval

2、(fx,b)/2; Hn=h*feval(fx,(a+b)/2); S1=(T1+2*Hn)/3; n=2*n; % 最好与倒数第三行保持一致(变步长) while n=M T2=(T1+Hn)/2; Hn=0; h=(b-a)/n; for j=1:n x(j)=a+(j-1/2)*h; y(j)=feval(fx,x(j); Hn=Hn+y(j); end Hn=h*Hn; S2=(T2+2*Hn)/3; fprintf( n=%2d S2=%-12.9f S2-S1=%-12.9fn,n,S2,abs(S2-S1); if abs(S2-S1)eps break; else T1=T2;

3、 S1=S2; n=2*n; end end S=S2; % 达到下列条件之一,则运算终止: % (1).abs(S2-S1)M % 输入 1:S=bianfuhuasimpson(inline(sqrt(x)*cos(x),0,pi,10e-6,2000) % 输入 2:S=bianfuhuasimpson(inline(2*x2*cos(x2),0,sqrt(pi),10e-6,2000) % 输入 3:S=bianfuhuasimpson(inline(sqrt(x),0,1,10e-6,2000) 输出结果: (1) S=bianfuhuasimpson(inline(sqrt(x)*

4、cos(x),0,pi,10e-6,2000) n= 2 S2= S2-S1= n= 4 S2= S2-S1= n= 8 S2= S2-S1= n=16 S2= S2-S1= n=32 S2= S2-S1= n=64 S2= S2-S1= n=128 S2= S2-S1= n=256 S2= S2-S1= n=512 S2= S2-S1= n=1024 S2= S2-S1= S = (2) S=bianfuhuasimpson(inline(2*x2*cos(x2),0,sqrt(pi),10e-6,2000) n= 2 S2= S2-S1= n= 4 S2= S2-S1= n= 8 S2=

5、S2-S1= n=16 S2= S2-S1= n=32 S2= S2-S1= n=64 S2= S2-S1= n=128 S2= S2-S1= n=256 S2= S2-S1= n=512 S2= S2-S1= n=1024 S2= S2-S1= S = (3) S=bianfuhuasimpson(inline(sqrt(x),0,1,10e-6,2000) n= 2 S2= S2-S1= n= 4 S2= S2-S1= n= 8 S2= S2-S1= n=16 S2= S2-S1= n=32 S2= S2-S1= n=64 S2= S2-S1= n=128 S2= S2-S1= n=256 S2= S2-S1= n=512 S2= S2-S1= n=1024 S2= S2-S1= S =

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号