数值分析实验报告2.doc

数值分析实验报告2.doc

ID:50975771

大小:94.50 KB

页数:5页

时间:2020-03-16

数值分析实验报告2.doc_第1页
数值分析实验报告2.doc_第2页
数值分析实验报告2.doc_第3页
数值分析实验报告2.doc_第4页
数值分析实验报告2.doc_第5页
资源描述:

《数值分析实验报告2.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验报告一、实验名称复合梯形求积公式、复合辛普森求积公式、龙贝格求积公式及自适应辛普森积分。二、实验目的及要求1. 掌握复合梯形求积计算积分、复合辛普森求积计算积分、龙贝格求积计算积分和自适应辛普森积分的基本思路和步骤.2.培养Matlab编程与上机调试能力.三、实验环境计算机,MATLAB软件四、实验内容1.用不同数值方法计算积分。(1)取不同的步长h。分别用复合梯形及复合辛普森求积计算积分,给出误差中关于h的函数,并与积分精确指比较两个公式的精度,是否存在一个最小的h,使得精度不能再被改善。(2)用龙贝格求积计算完成问题(1)。(3)用自适应辛普森积分,使其精度达到

2、10-4。五、算法描述及实验步骤1.复合梯形公式将区间[a,b]划分为n等份,分点xk=a+ah,h=(b-a)/h,k=0,1,...,n,在每个子区间[xk,xk+1](k=0,1,...,n-1)上采用梯形公式(1.1),得(1.1)(1.2)(1.3)其中Tn称为复合梯形公式,Rn为复合梯形公式的余项。2.复合辛普森求积公式将区间[a,b]划分为n等份,在每个子区间[xk,xk+1](k=0,1,...,n-1)上采用辛普森公式(1.4),得第5页(1.4)(1.5)(1.6)其中Sn称为复合辛普森求积公式,Rn为复合辛普森求积公式的余项。1.龙贝格算法统一的公

3、式:(1.7)经过m(m=1,2...)次加速后,余项便取下列形式:(1.8)上述处理方法通常称为理查森外推加速法。设以表示二分k次后求得的梯形值,且以表示序列{}的m次加速值,则依递推公式(1.7)可得(1.9)公式(1.9)也称为龙贝格求积算法,计算过程如下:(1)取k=0,h=b-a,求。令(k记区间[a,b]的二分次数)。(2)求梯形值T0((b-a)/2k),即按递推公式(1.10)计算。(1.10)(3)求加速值,按公式(1.9)逐个求出T值。(4)若(预先给定的精度),则终止计算,并取;否则令转(2)继续计算。4.自适应积分方法设给定精度要求,计算积分的近

4、似值。先取步长h=b-a,应用辛普森公式有第5页(1.11)表区间[a,b]对分,步长h2=h/2=(b-a)/2,在每个小区间上用辛普森公式,得(1.12)上式即为(1.13)将(1.12)与(1.13)比较得(1.14)则期望得到(1.15)此时可取S2(a,b)作为的近视,则可达到给定的误差精度。如果不行,则细分区间,进行计算。六、调试过程及实验结果取不同的步长,得到的不同结果如下表:方法步长数n8163264复合梯形-0.4081752659412-0.4300526451254-0.4384455545521-0.4420384567157复合辛普森-0.43

5、66254599415-0.4413577845643-0.4485764578412-0.4440567812461龙贝格公式-0.4440466483230-0.444046683231-0.440466472144-0.4440466483231自适应辛普森-0.4432496512462-0.4439840234457-0.44426854611233-0.4443774893458七、总结通过本次学习Matlab,掌握了复合梯形求积公式、复合辛普森求积公式、龙贝格求积公式及自适应辛普森积分的程序和算法,为以后处理数据提供一种更加简便,准确的方法。八、附录(源程

6、序清单)1.复合梯形functions=fuhetixing(f,a,b,n)%f为被积分函数%a,b是积分上下限%n是子区间个数%s是积分值h=(b-a)/n;s=0;第5页fork=1:(n-1)x=a+h*k;s=s+feval('f',x);endformatlongs=h*(feval('f',a)+feval('f',b))/2+h*s;2.复合辛普森functionS=Comsimpson(f,a,b,n)%f为被积分函数%a,b是积分上下限%n是子区间个数%s是积分值h=(b-a)/(2*n);s1=0;s2=0;fork=1:nx=a+h*(2*k-1

7、);s1=s1+feval('f',x);endfork=1:(n-1)x=a+h*2*k;s2=s2+feval('f',x);endformatlongS=h*(feval('f',a)+feval('f',b)+4*s1+2*s2)/3;3.龙贝格function[T,quad,err,h]=Romberg(f,a,b,n,delta)%f为被积分函数%a,b是积分上下限%n+1是T数表的列数%T表示T数表%quad是所求积分值%delta是设定的允许误差限m=1;h=b-a;err=1;J=0;T=zeros(n,n);%定义T表

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。