MATLABch013(数值计算微积分)20090923.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MATLABch013(数值计算微积分)20090923.ppt

第13讲 数值计算 —微积分 §13.1 数值积分 常见的一元数值积分命令 二、一(元)维数值积分 trapz 函数 trapz 函数的应用 trapz 函数的应用 quad函数和quad8函数 quad和quad8函数调用格式 quad和quad8的参数 quad和quad8函数的调用 quad和quad8函数的调用 [例13-1] example13_1.m [例13-1] 三、多重数值积分 dblquad函数的参数 〖例13-6〗 example13_6.m 2、内积分上下限为函数的二重积分 [例13-10] example13_10.m 三、卷积 §13.1 数值微分 一、多项式求导法求数值微分 一、多项式求导法求数值微分 §13.3 符号微积分 一、符号自变量的确定 一、符号自变量的确定 §13.1 数值积分 * * 张建瓴 在工程教学和应用中,除了进行数据逼近外,还要求逼近曲线下面的面积,这就是积分问题。 一、数值积分方法 典型的数值积分方法有:用常数(0阶多项式)近似函数矩形法;用直线(一阶多项式)近似函数曲线的梯形法;用抛物线(二阶多项式)近似函数曲线的Simpson法,以及用一般多项式近似函数的Romberg法等。 y=sin(x^3)*sqrt(x) x求y, 表13-1列出了函数数值积分的一些命令。 表13-1 函数数值积分的命令 MATLAT提供了在有限区间内,数值计算某函数下的面积(积分)的三种函数:trapz,quad和quad8。 1、trapz函数 函数trapz通过计算若干梯形面积的和来近似某函数的积分,这些梯形如图13-1所示,是通过使用函数humps的数据点形成。 图13-2 较好的梯形逼近曲线下的面积示意图 从图中可明显地看出,单个梯形的面积在某一段欠估计了函数真正的面积,而在其它段又过估计了函数的真正面积。如同线性插值,当梯形数目越多时,函数的近似面积越准确。例如,在图13-1中,如果我们大致增加一倍数目的梯形,我们得到如下(如图13-2)所示的更好的近似结果。 对如上所示的两个曲线,用trapz在区间-1x2上计算y=humps(x)下面的面积: x=-1: 0.17: 2; % rough approximation y=humps(x); area=trapz(x, y) % call trapz just like the plot command area = 25.9174 x=-1: 0.07: 2; % better approximation y=humps(x); area=trapz(x , y) area = 26.6243 上述两个结果不同是基于对图形的观察,粗略近似可能低估了实际面积。除非特别精确,没有准则说明哪种近似效果更好。 MATLAB提供的求积函数命令quad和quad8在使用时,其递推的层次限制在十层以内,达到这个限制则会提示警告信息,并且这两个函数命令都不能解决可积的奇异值问题,例如,求解 。 函数quad和quad8完整的调用格式为: (1)q=quad(fun,a,b,tol,trace,pl,p2,…) 采用Simpson法计算积分; (2)q=quad8(fun,a,b,tol,trace,p1,p2,…) 采用八样条Newton-Cotes公式求数值积分。 其中:fun是被积函数,可以是表达式字符串、内联函数、M函数文件名,被积函数的自变量,一般采用字母x; a、b分别是积分的上、下限,都是确定的值; tol是一个二元向量,它的第一个元素用来控制相对误差,第二个元素用来控制绝对误差,缺省时积分的相对精度为0.001; trace如果取非零值时,将以动态图形的形式展现积分的整个过程,若取零值,则不画图,其缺省值是0; pl和p2是向被积函数传递的参数。 在上面的调用格式中,前三个输入参数是调用时必须的,而后面的输入参数可缺省。 MATLAB的函数quad和quad8是基于数学上的正方形概念来计算函数的面积。为获得更准确的结果,两个函数在所需的区间都要计算被积函数。 与简单的梯形比较,这两个函数进行更高阶的近似,而且quad8比quad更精确。这两个函数的调用方法与fzero相同,即 area=quad(‘humps‘,-1,2) % find area between -1 and 2 area = 26.3450 area=quad8(‘humps‘,-1,2) area = 26.3450 注意: 这两个函数返回完全相同的估计面积,而且这个估计值在两个trapz面积的估计值之间。

文档评论(0)

docindpp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档