MATLAB-ch013(数值计算-微积分

MATLAB-ch013(数值计算-微积分

ID:39333908

大小:280.60 KB

页数:27页

时间:2019-07-01

MATLAB-ch013(数值计算-微积分_第1页
MATLAB-ch013(数值计算-微积分_第2页
MATLAB-ch013(数值计算-微积分_第3页
MATLAB-ch013(数值计算-微积分_第4页
MATLAB-ch013(数值计算-微积分_第5页
资源描述:

《MATLAB-ch013(数值计算-微积分》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第13讲数值计算 —微积分张建瓴§13.1数值积分在工程教学和应用中,除了进行数据逼近外,还要求逼近曲线下面的面积,这就是积分问题。一、数值积分方法典型的数值积分方法有:用常数(0阶多项式)近似函数矩形法;用直线(一阶多项式)近似函数曲线的梯形法;用抛物线(二阶多项式)近似函数曲线的Simpson法,以及用一般多项式近似函数的Romberg法等。y=sin(x^3)*sqrt(x)x求y,表13-1列出了函数数值积分的一些命令。表13-1函数数值积分的命令常见的一元数值积分命令MATLAT提供了在有限区

2、间内,数值计算某函数下的面积(积分)的三种函数:trapz,quad和quad8。二、一(元)维数值积分1、trapz函数函数trapz通过计算若干梯形面积的和来近似某函数的积分,这些梯形如图13-1所示,是通过使用函数humps的数据点形成。图13-2较好的梯形逼近曲线下的面积示意图从图中可明显地看出,单个梯形的面积在某一段欠估计了函数真正的面积,而在其它段又过估计了函数的真正面积。如同线性插值,当梯形数目越多时,函数的近似面积越准确。例如,在图13-1中,如果我们大致增加一倍数目的梯形,我们得到如下

3、(如图13-2)所示的更好的近似结果。trapz函数对如上所示的两个曲线,用trapz在区间-1>x=-1:0.17:2;%roughapproximation>>y=humps(x);>>area=trapz(x,y)%calltrapzjustliketheplotcommandarea=25.9174trapz函数的应用>>x=-1:0.07:2;%betterapproximation>>y=humps(x);>>area=trapz(x,y)ar

4、ea=26.6243上述两个结果不同是基于对图形的观察,粗略近似可能低估了实际面积。除非特别精确,没有准则说明哪种近似效果更好。trapz函数的应用MATLAB提供的求积函数命令quad和quad8在使用时,其递推的层次限制在十层以内,达到这个限制则会提示警告信息,并且这两个函数命令都不能解决可积的奇异值问题,例如,求解。quad函数和quad8函数函数quad和quad8完整的调用格式为:(1)q=quad('fun',a,b,tol,trace,pl,p2,…)采用Simpson法计算积分;(2)q

5、=quad8('fun',a,b,tol,trace,p1,p2,…)采用八样条Newton-Cotes公式求数值积分。其中:fun是被积函数,可以是表达式字符串、内联函数、M函数文件名,被积函数的自变量,一般采用字母x;a、b分别是积分的上、下限,都是确定的值;quad和quad8函数调用格式tol是一个二元向量,它的第一个元素用来控制相对误差,第二个元素用来控制绝对误差,缺省时积分的相对精度为0.001;trace如果取非零值时,将以动态图形的形式展现积分的整个过程,若取零值,则不画图,其缺省值是0

6、;pl和p2是向被积函数传递的参数。在上面的调用格式中,前三个输入参数是调用时必须的,而后面的输入参数可缺省。quad和quad8的参数MATLAB的函数quad和quad8是基于数学上的正方形概念来计算函数的面积。为获得更准确的结果,两个函数在所需的区间都要计算被积函数。与简单的梯形比较,这两个函数进行更高阶的近似,而且quad8比quad更精确。这两个函数的调用方法与fzero相同,即>>area=quad(‘humps‘,-1,2)%findareabetween-1and2area=26.345

7、0quad和quad8函数的调用>>area=quad8(‘humps‘,-1,2)area=26.3450注意:这两个函数返回完全相同的估计面积,而且这个估计值在两个trapz面积的估计值之间。quad和quad8函数的调用求函数的数值积分(1)建立函数funqfunctiony=funq(x)y=x.^3+x.^2+2;(2)对被积函数funq进行数值积分q=quad('funq',-1,1,le-4)%使用quad命令求数值积分q=4.6667[例13-1]example13_1.mq8=quad

8、8('funq',-1,1,le-4,1)%用quad8命令求数值积分q8=4.6667程序的运行结果显示出积分的过程如图13-3所示。[例13-1]一元函数积分中存在的问题,同样存在于多重积分中。1、积分限为常数的二重积分多重积分使用函数dblquad,其完整的调用格式为:result=dblquad('fun',inmin,inmax,outmin,outmax,tol,method)其中:输入参数fun是被积函数,可以直接用字符串内联

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

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

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