matlab实现复化梯形公式,复化simpson公式以及romberg积分.doc

matlab实现复化梯形公式,复化simpson公式以及romberg积分.doc

ID:58807354

大小:117.00 KB

页数:5页

时间:2020-09-27

matlab实现复化梯形公式,复化simpson公式以及romberg积分.doc_第1页
matlab实现复化梯形公式,复化simpson公式以及romberg积分.doc_第2页
matlab实现复化梯形公式,复化simpson公式以及romberg积分.doc_第3页
matlab实现复化梯形公式,复化simpson公式以及romberg积分.doc_第4页
matlab实现复化梯形公式,复化simpson公式以及romberg积分.doc_第5页
资源描述:

《matlab实现复化梯形公式,复化simpson公式以及romberg积分.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、(一)实验目的熟悉并掌握数值积分的方法,重要训练复化梯形公式,复化simpson公式以及romberg积分。(二)问题描述问题三数值积分椭圆周长的计算。考虑椭圆,为计算其周长,只要计算其第一象限的长度即可.用参数方程可以表示为,计算公式为为计算方便,我们可以令,即计算下面的积分(可以归结为上面的形式)采用复化梯形公式,复化Simpson公式以及Romberg积分的方法计算积分给出通用程序,该通用程序可以计算任何一个函数在任意一个区间在给定的精度下的数值积分。程序输出为计算出的数值积分值以及计算函数值的次数。(三)算法介绍首先利用给出的各迭代公式,设计程序。在matlab对话框中输入要计算

2、的函数,给出区间和精度。复化梯形的迭代公式为:;复化simpson迭代公式为:;Romberg迭代公式为:。(一)程序对于复化梯形公式和复化simpson公式,我们放在jifenn.m中。(%标记后的程序可用来把b看为变量时的算法实现)%复化梯形公式functiony=jifenn(f,n,a,b)(说明:f表示任一函数,n精度,a,b为区间)fi=f(a)+f(b);h=(b-a)/n;d=1;%functionf=jifen(n,a,b,c)%symst%y=sqrt(1+(c^2-1)*cos(t)^2);%ya=subs(y,t,a);%yb=subs(y,t,b);%fi=ya

3、+yb;fori=1:n-1x=a+i*h;fi=fi+2*f(x);d=d+1;%yx=subs(y,t,x);%fi=fi+2*yx;endf4=h/2*fi,d%复化simposon公式f1=0;f2=0;dd=1;fori=1:n-1dd=dd+1;ifrem(i,2)~=0;x1=a+i*h;f1=f1+f(x1);elserem(i,2)==0;x2=a+i*h;f2=f2+f(x2);endendf3=(h/3)*(f(a)+4*f1+2*f2+f(b)),dd对于romberg积分,建立romberg.m文件。functiony=romberg(f,n,a,b)(说明:f

4、表示任一函数,n精度,a,b为区间)z=zeros(n,n);h=b-a;z(1,1)=(h/2)*(f(a)+f(b));f1=0;fori=2:nfork=1:2^(i-2)f1=f1+f(a+(k-0.5)*h);endz(i,1)=0.5*z(i-1,1)+0.5*h*f1;h=h/2;f1=0;forj=2:iz(i,j)=z(i,j-1)+(z(i,j-1)-z(i-1,j-1))/(4^(j-1)-1);endendz,n(一)运行结果对于复化梯形公式和复化simpson公式,我们运行下列语句并得到结果:>>fun=inline('sqrt(1+(0.5^2-1).*cos

5、(t).^2)');>>jifenn(fun,8,0,pi/2)f4=1.2111d=8f3=1.2111dd=8>>1.2111*4ans=4.8444>>1.2111*4ans=4.8444(说明:在本题中将椭圆中的未知量a取为1,b取为0.5。f4为复化梯形公式得到的椭圆周长,f3为复化simpson公式得到的椭圆周长)。对于romberg,运行下列语句并最终得到结果为:>>fun=inline('sqrt(1+(0.5^2-1).*cos(t).^2)');>>romberg(fun,8,0,pi/0.5)z=3.141600000003.14163.14160000004.71

6、245.23605.3756000004.83984.88234.85874.850500004.84424.84574.84324.84304.84290004.84424.84424.84414.84414.84424.8442004.84424.84424.84424.84424.84424.84424.844204.84424.84424.84424.84424.84424.84424.84424.8442ans=4.8442n=8(说明:其中最终结果为4.8442)。(一)结果分析我们计算了当椭圆长轴为1,短轴为0.5时的周长。通过上述三种方法的计算可以看到,结果相差不大。根据

7、椭圆周长的一个计算公式我们可以得到L=4.283。因此三种方法都较好的接近真值。(七)心得体会应该熟练掌握这三种方法,才能在编程时正确快速的写出迭代公式。同时在一种思想的前提下可以寻找多种方法实现算法,互相验证。

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

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

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