实验二、定积分的近似计算

上传人:ji****72 文档编号:48609655 上传时间:2018-07-18 格式:PPT 页数:30 大小:923KB
返回 下载 相关 举报
实验二、定积分的近似计算_第1页
第1页 / 共30页
实验二、定积分的近似计算_第2页
第2页 / 共30页
实验二、定积分的近似计算_第3页
第3页 / 共30页
实验二、定积分的近似计算_第4页
第4页 / 共30页
实验二、定积分的近似计算_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《实验二、定积分的近似计算》由会员分享,可在线阅读,更多相关《实验二、定积分的近似计算(30页珍藏版)》请在金锄头文库上搜索。

1、实验二定积分的近似计算数学实验1l 定积分计算的基本公式是牛顿莱布尼兹公式。但当被积函数的原函数不知道时,如何计算?这时就需要利 用近似计算。特别是在许多实际应用中,被积函数甚至 没有解析表达式,而是一条实验记录曲线,或一组离散 的采样值,此时只能用近似方法计算定积分。l 本实验主要研究定积分的三种近似计算算法:矩形法 、梯形法和抛物线法。同时介绍 Matlab 计算定积分的相关函数。q 问题背景和实验目的定积分的近似计算2l 矩形法l 梯形法l 抛物线法q 数值积分的常见算法主要内容q Matlab 求积分函数l 数值积分函数:trapz、quad、dblquadl 符号积分函数:int3q

2、 定积分的定义定积分的近似4矩形法n 充分大,x 充分小l 通常我们取左点法右点法中点法l 点 可以任意选取,常见的取法有:左端点 , 右端点 和中点 。l 定积分的近似:5步长节点矩形法左点法右点法中点法6矩形法举例例:用不同的矩形法计算下面的定积分 ( 取 n=100 ),并比较这三种方法的相对误差。l 左点法:l 右点法:l 中点法:解 :h =1/n=0.01, xi = i*h, a=0, b=1, n=100 (i = 0, 1, 2, ., 100)7l 理论值:l 左点法相对误差:l 相对误差分析矩形法举例l 右点法相对误差:l 中点法相对误差:不同的算法有不同的计算精度有没有

3、更好的近似计算定积分的方法 ?8定积分几何意义9l 曲边小梯形的面积可以由直边小梯形的面积来近似l 整个曲边梯形的面积 :梯形法10l 如果我们 n 等分区间 a,b,即令:则=梯形公式梯形法梯形公式与中点公式有什么区别 ?11解 :=例:用梯形法计算下面定积分 ( 取 n=100 ),并计算相对误差梯形法举例a=0, b=1, n=100, f (x) = 1/( 1+x2 ) = h =1/100=0.01, xi = i*h, yi = f (xi) l 相对误差:12l 2n 等分区间 a,b ,得用抛物线代替该直线, 计算精度是否会更好?l 计算每个节点上的函数值:抛物线法l 在区间

4、 x0, x2 上,用过以下三点的抛物线来近似原函数 f (x) 。13设过以上三点的抛物线方程为:则在区间 x0, x2 上,有y = x2 + x + = p1(x) 抛物线法14l 同理可得:l 相加即得:抛物线法15l 整理后可得:或辛卜生 (Simpson) 公式抛物线法公式抛物线法16=例:用抛物线法计算下面定积分 ( 取 n=100 ),并计算相对误差解 :a=0, b=1, n=100, yi = f (xi) = 1/( 1+xi2 ) 抛物线法l 相对误差:17l 矩形法l 梯形法l 抛物线法q 数值积分的常见算法Matlab 函数q Matlab 求积分函数l 数值积分函

5、数:trapz、quad、dblquadl 符号积分函数:int18trapz(x,y) x 为分割点(节点)组成的向量, y 为被积函数在节点上的函数值组成的向量。q trapztrapz梯形法19前面的 做法例:用梯形法计算下面定积分 ( 取 n=100 )解 :a=0, b=1, n=100, yi = f (xi) = 1/( 1+xi2 ) x=0:1/100:1; y=1./(1+x.2); trapz(x, y)trapz 函数trapz(x,1./(1+x.2)trapz 举例20quad(f,a,b,tol)f = f(x) 为被积函数,a,b 为积分区间,tol 为计算精度

6、将自变量看成是向量l 不用自己分割积分区间 l 可以指定计算精度,若不指定,缺省精度是 10-6l 精度越高,函数运行的时间越长 l 此处的函数 f 是数值形式,应该使用数组运算,即:.* ./ . . quadq quad抛物线法21解 : quad(1./(1+x.2),0,1) quad(1./(1+x.2),0,1,1e-10) quad(1./(1+x.2),0,1,1e-16)函数表达式一定要用 单引号 括起来! 涉及的运算一定要用 数组运算!例:用 quad 计算定积分:quad 举例22dblquad(f,a,b,c,d,tol)l tol 为计算精度,若不指定,则缺省精度为

7、10-6l f 可以是:字符串;inline 定义的内联函数;函数句柄l a,b 是 第一积分变量 的积分区间,c,d 是 第二积分变量 的积分区间按字母顺序,大写字母排在小写字母的前面dblquadq 抛物线法计算二重积分: dblquad23 f=inline(4*x*y+3*y2); I=dblquad(f,-1,1,0,2)f 中关于第一自变量的运算是数组运算,即把 x 看成是向 量,y 看成是标量。也可以全部采用数组运算例:计算二重积分 dblquad(inline(4*x*y+3*x2),-1,1,0,2) dblquad(inline(4*x*y+3*x.2),-1,1,0,2)

8、X例:计算二重积分dblquad 举例24例:计算二重积分 dblquad(x,y)4*x*y+3*x.2 , -1, 1, 0, 2)指定 x、y 分别是第一和第二积分变量 dblquad(inline(4*x*y+3*x.2) ,-1, 1, 0, 2)l 被积函数 f (x,y) 的另一种定义方法:匿名函数 dblquad(y,x)4*x*y+3*x.2 , -1, 1 , 0, 2 )下面的命令运行结果和上面的一样吗?dblquad 举例25int(f,a,b) 计算 f 关于默认自变量 的定积分,积分区间为a,b。int(f) 计算 f 关于默认自变量 的不定积分。int(f,v,a

9、,b) 计算函数 f 关于自变量 v 的定积分,积分区间为 a, bint(f,v) 计算函数 f 关于自变量 v 的不定积分 findsym(f,1 )intq 符号积分: int26例:用 int 函数计算定积分:解 : syms x; f=1/(1+x2); int(f,x,0,1) f=sym(1/(1+x2); int(f,x,0,1) int(1/(1+x2),x,0,1)或 int(1/(1+x2),0,1)或或int 举例27double(a) 将 a 转化为双精度型,若 a 是字符,则取对应的 ASCII 码 a=3; double(a) double(a)例 :ans = 3ans = 97相关函数28 x=1:0.001:2; y=exp(x.(-2); trapz(x,y)l 梯形法:l 抛物线法: quad(exp(x.(-2),1,2,10e-10)l 符号积分法: syms x int(exp(x(-2),x,1,2)例:用 Matlab 函数近似计算定积分数值实验29l 抛物线法: dblquad(inline(x+y2),0,2,-1,1)l 符号积分法: f=int(x+y2,y,-1,1); int(f,x,0,2)数值实验例:用 Matlab 函数近似计算二重积分30

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号