收藏 分享(赏)

MATLAB程序设计与应用34130new.doc

上传人:dreamzhangning 文档编号:2206272 上传时间:2018-09-05 格式:DOC 页数:4 大小:61KB
下载 相关 举报
MATLAB程序设计与应用34130new.doc_第1页
第1页 / 共4页
MATLAB程序设计与应用34130new.doc_第2页
第2页 / 共4页
MATLAB程序设计与应用34130new.doc_第3页
第3页 / 共4页
MATLAB程序设计与应用34130new.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、M atlab程序设 计 与 应 用 课 程 论 文定 积 分 的 近 似 计 算 与 Matlab实 现姓 名 : 陈 林 学 号 : 110314233 班 级 : 统 计 学 二 班摘要:定积分计算的基本公式是 Newton-Leibniz 公式,但对于较复杂的函数要求其精确值是比较困难的,而且很多形式较简单的初等函数的原函数也不是初等函数,如sinxx dx,e-x2dx,dxlnx 等等,其原函数都不是初等函数,无法利用 Newton-Leibniz 公式计算。因此,研究定积分的近似计算是非常必要的,而且,可以通过计算机编程来方便计算定积分的近似值。本文考虑了定积分近似计算的矩形法、

2、梯形法、抛物线法和对这三种方法进行修改后的定积分近似计算公式,并给出了每种方法的 Matlab 程序。关键词:Matlab;定积分;近似计算;矩形法;梯形法;抛物线法;修改公式引言:定积分计算的基本公式是牛顿莱布尼兹公式。但被积函数的原函数不知道时,如何计算?这时就需要利用近似计算。特别是在许多实际应用中,被积函数甚至没有解析表达式,而是一条实验记录曲线,或一组离散的采样值,此时只能用近似方法计算定积分。本实验将主要研究定积分的三种近似计算算法:矩形法、梯形法、抛物线法。实验内容:1、矩形法根据定积分的定义,每一个积分和都可以看作是定积分的一个近似值,即 nibaxifdxf1)()(在几何意

3、义上,这是一系列小形面积近似曲边梯形的结果,所以把这个近似计算方法称为矩形法。不过,只有当积分区间被分割的很细时,矩形法才有一定的精确度。2、梯形法等分区间x0=ax1xi=a+(b-a)/n*ixn=b, x=(b-a)/n相应函数值为y0,y1,yn ),10),(nixfyi曲线 上相应的点为)(xfyP0,P1,Pn (),10),niyxPi将曲线的每一段弧 用过点 ,pi 的弦 (线性函数)来代替,pi11p这使得每个上的曲边梯形成为真正的梯形,其面积为 nixyii ,2,*/)(于是各个小梯形面积之和就是曲边梯形面积的近似值, bani niyixyidxf1 1)(2/*/)

4、()(即ba nynaf )/0(/)() 称此式为梯形公式。3、抛物线法由梯形法求近似值,当 为凹曲线时,它就偏小;当 为凸曲)(xfy )(xfy线时,它就偏大。若每段改用与它凸性相接近的抛物线来近似时,就可减少上述缺点,这就是抛物线法。4、改写矩形法和抛物线法现给出利用求和函数,避免了 for 循环的梯形法程序如下:format longn=100;a=0;b=1;syms x fxfx=1/(1+x2);i=1:n;xj=a+(i-1)*(b-a)/n; %所有左点的数组xi=a+i*(b-a)/n; %所有右点的数组fxj=subs(fx,x,xj); %所有左点值fxi=subs(

5、fx,x,xi); %所有右点值f=(fxi+fxj)/2*(b-a)/n; %梯形面积inum=sum(f); %加和梯形面积求解integrate=int(fx,0,1);integrate=double(integrate)fprintf(The relative error between inum and real-value is about: %gnn,.abs(inum-integrate)/integrate)学习此程序设计方法,用函数 sum 改写矩形法和抛物线法的程序,避免 for循环。改写后的矩形法程序如下:format longn=100;a=0;b=1;syms x

6、 fxfx=1/(1+x2);i=1:nxj=a+(i-1)*(b-a)/n; xi=a+i*(b-a)/n; fxj=subs(fx,x,xj); fxi=subs(fx,x,xi); f=(fxi+fxj)/2*(b-a)/n; inum=sum(f); integrate=int(fx,0,1);integrate=double(integrate)fprintf(The relative error between inum1 and real-value is about: %gnn,.abs(inum1-integrate)/integrate)fprintf(The relati

7、ve error between inum2 and real-value is about: %gnn,.abs(inum2-integrate)/integrate)fprintf(The relative error between inum3 and real-value is about: %gnn,.abs(inum3-integrate)/integrate))实验出现的问题:实验程序复杂繁琐,出现了很多小问题,比如函数名称、格式、标点符号等的错误,这时候需要仔细检查认真对待。改写后的抛物线法程序如下:format longn=100;a=0;b=1;inum=0;syms x

8、fxfx=1/(1+x2);i=1:nxj=a+(i-1)*(b-a)/n;xi=a+i*(b-a)/n;xk=(xi+xj)/2;fxj=subs(fx,x,xj);fxi=subs(fx,x,xi);fxk=subs(fx,x,xk);f=(fxi+fxj)/2*(b-a)/n; inum=sum(f); integrate=int(fx,0,1);integrate=double(integrate)fprintf(The relative error between inum and real-value is about: %gnn,.abs(inum-integrate)/inte

9、grate)实验出现的问题:虽然避免了很多小的失误,但在程序设计上遇到了困难,在反复运行试验后才得出了正确的结果。修改后的程序避免了 for 语句,降低了运算复杂程度,也减少了运算时间。总结:通过本实验加深理解了积分理论中分割、近似、求和、取极限的思想方法。学习并掌握了用 matlab 求定积分的方法,了解了定积分近似计算的矩形法、梯形法,和抛物线法。并认识到对于不同的题目,采取不同的运算方法,结果会不同,且精确程度也不同。 同时,对于自身,要深刻理解不定积分、定积分概念,熟悉 matlab 数学软件的求不定积分、定积分的命令,了解简单的编程语句,以更快更准确且熟练地设计出程序。心得体会:定积

10、分的近似计算有很多方法,在为一个题目寻找最合适的方法过程中会遇到很多问题和很难解决的麻烦,在这次的实验中,也更了解了其中的奥秘。在做每个实验时都需要仔细认真,并且要有很大的耐心,有时还需要创新思维,抛弃思维定势,用更广阔的眼光看待看似简单的问题可能会得到意想不到的结果,以及产生相关问题解决方案的灵感。在学习当中亦是如此,不仅要解决问题,更要在解决问题的过程中获得更多有价值的东西,学会举一反三以及万变不离其宗的道理。这些都对以后的学习以及生活更有帮助,学以致用才是学习的最高境界。参考文献:【】同济大学应用数学系 高等数学(上册) 【 北京:高等教育出版社, 【】刘证,丁桂艳关于定积分几种近似计算的误差估计【】 鞍山科技大学学报,(): 【】刘玉琏,傅沛仁数学分析讲义【】 北京:高等教育出版社, 【高孝忠,杨光强定积分的一种近似计算公式】 六盘水师专学报,():

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报