MATLAB数学实验报告 定积分的近似计算.doc

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

MATLAB数学实验报告 实验日期:2015年11月20日 实验名称 定积分的近似计算姓名:学号:班级:问题背景描述: 利用牛顿—莱布尼兹公式虽然可以精确地计算定积分的值,但它仅适用于被积函数的原函数能用初等函数表达出来的情形.如果这点办不到或者不容易办到,这就有必要考虑近似计算的方法.在定积分的很多应用问题中,被积函数甚至没有解析表达式,可能只是一条实验记录曲线,或者是一组离散的采样值,这时只能应用近似方法去计算相应的定积分.实验目的: 本实验将主要研究定积分的三种近似计算算法:矩形法、梯形法、抛物线法。对于定积分的近似数值计算,Matlab有专门函数可用。实验原理与数学模型: 1.? 矩形法 根据定积分的定义,每一个积分和都可以看作是定积分的一个近似值,即 在几何意义上,这是用一系列小矩形面积近似小曲边梯形的结果,所以把这个近似计算方法称为矩形法.不过,只有当积分区间被分割得很细时,矩形法才有一定的精确度. 针对不同的取法,计算结果会有不同。 (1) 左点法:对等分区间 , 在区间上取左端点,即取。 (2)右点法:同(1)中划分区间,在区间上取右端点,即取。 (3)中点法:同(1)中划分区间,在区间上取中点,即取。 2.? 梯形法 等分区间 , 相应函数值为 (). 曲线上相应的点为 () 将曲线的每一段弧用过点,的弦(线性函数)来代替,这使得每个上的曲边梯形成为真正的梯形,其面积为 ,. 于是各个小梯形面积之和就是曲边梯形面积的近似值, , 即 , 称此式为梯形公式。? 3.? 抛物线法 将积分区间作等分,分点依次为 ,, 对应函数值为 (), 曲线上相应点为 (). 现把区间上的曲线段用通过三点,,的抛物线 来近似代替,然后求函数从到的定积分: 由于,代入上式整理后得 同样也有 …… 将这个积分相加即得原来所要计算的定积分的近似值: , 即 这就是抛物线法公式,也称为辛卜生(Simpson)公式.?实验所用软件及版本: Matlab 7.0主要内容(要点): 1.? 分别用梯形法与抛物线法,计算,取.并尝试直接使用函数trapz()、quad()进行计算求解,比较结果的差异. 2.? 试计算定积分.(注意:可以运用trapz()、quad()或附录程序求解吗?为什么?) 3.? 学习fulu2sum.m的程序设计方法,尝试用函数 sum 改写附录1和附录3的程序,避免for 循环。实验过程记录(含基本步骤、主要程序清单及异常情况记录等): 第2题  eq \o\ac(○,1)梯形法 format long a=1;b=2;n=120;s=0; syms x y y=1/x; for i=a:1/n:b xj=a+(i-1).*(b-a)./n; %左点 xi=a+i.*(b-a)./n; %右点 yj=subs(y,x,xj); %左点值 yi=subs(y,x,xi); %右点值 s=s+(yi+yj).*(b-a)./(2.*n); end s integrate=int(y,1,2) %integrate为matlab中自带的积分函数 integrate=double(integrate) abs((s-integrate)./integrate) %相对误差 【调试结果】 s = (121*y)/120 integrate = log(2) integrate = 0.693147180559945 ans = abs((136233888727957504*y)/93649721522480385 - 1)  eq \o\ac(○,2)抛物线法: format long a=1;b=2;s=0; n=120;% 抛物线条数120 小区间个数2*n syms x y y=1/x; for i=a:1/n:b x0=a+(2.*i).*(b-a)./(2*n); %第一点 x1=a+(2.*i-1).*(b-a)./(2*n); %第二点 x2=a+(2.*i-0).*(b-a)./(2*n); %第san点 y0=subs(y,x,x0); %第一点值 y1=subs(y,x,x1); %第二点值 y2=subs(y,x,x2); %第三点值 s=s+(y0+4.*y1+y2).*(b-a)./(6.*n); end s int

文档评论(0)

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

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

1亿VIP精品文档

相关文档