当前位置:文档之家› 定积分的近似计算(数学实验报告matlab版)

定积分的近似计算(数学实验报告matlab版)

fxi=subs(fx,'x',xi);
fxij=(fxi+fxj)/2;
m=fxj*(b-a)/n;
p=fxi*(b-a)/n;k=fxij*(b-a)/n;
inum1=sum(m)
inum2=sum(p)
inum3=sum(k)
改写抛物线法
ex6gaixiepaowuxianfa.m
format long
syms x fx
fx=1./x;
for k=1:n
i=2*k-1; j=2*k;
xi=a+(b-a)*i/(2*n);
xj=a+(b-a)*j/(2*n);
fxi=subs(fx,'x',xi);
fxj=subs(fx,'x',xj);
m=m+fxi;p=p+fxj;
end
fxa=subs(fx,'x',a);
2,int使用较广泛,对被积函数的要求较弱,对广义积分同样适用。
3,Matlab编程中出错时可以根据提示修改,当不会修改时,换一种方法也行。可以尝试
多种方法求解。
4,sum()可以避免for循环
思考与深入:
Matlab的计算功能强大,可以方便的进行一些很复杂的计算,而且运算效率极高。
我对Matlab了解不够透彻,有时不知自己哪里出错,根据提示也不能修改,我会在今后的
学习应用中不断了解。
教师评语:
abs(inum-integrate)/integrate)
改写矩形法
ex6gaixiejuxingfa.m
format long
n=100;a=0;b=1;
syms x fx
fx=1/(1+x^2);
i=1:n;
xj=a+(i-1)*(b-a)/n;
xi=a+i*(b-a)/n;
fxj=subs(fx,'x',xj);
trapz(x,y)
(2)抛物线法:
formatlong
n=120;a=1;b=2;inum=0;
symsxfx
fx=1/x;
fori=1:n
xj=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);
针对不同 的取法,计算结果会有不同。
(1) 左点法:对等分区间
,在区间 上取左端点,即取 。
(2)右点法:同(1)中划分区间,在区间 上取右端点,即取 。
(3)中点法:同(1)中划分区间,在区间 上取中点,即取 。
2.梯形法
等分区间
, 相应函数值为 ( ).曲线 上相应的点为 ( )将曲线的每一段弧 用过点 , 的弦 (线性函数)
ex2zhi2paowuxianfa.m
format long
n=120;
a=1;b=2;m=0;p=0;
syms x fx
fx=1./x;
for k=1:n
i=2*k-1; j=2*k;
xi=a+(b-a)*i/(2*n);
xj=a+(b-a)*j/(2*n);
fxi=subs(fx,'x',xi);
fxb=subs(fx,'x',b);
inum=(b-a)*(fxa+fxb+4*m+2*p)/(6*n)
integrate=int(fx,1,2)
integrate=double(integrate)
fprintf('The relative error between inum and real-value is about:%g\n\n',...
fxk=subs(fx,'x',xk);
inum=inum+(fxj+4*fxk+fxi)*(b-a)/(6*n);
end
inum
quad('1./x',1,2)
2、(1)符号求积分:
int('sin(x)/x','x',0,inf)
(2)quad('sin(x)./x',0,inf)
3ex2zhi2tixingfa.m
来代替,这使得每个 上的曲边梯形成为真正的梯形,其面积为
, .于是各个小梯形面积之和就是曲边梯形面积的近似值,

即 ,称此式为梯形公式。
3.抛物线法
将积分区间 作 等分,分点依次为
, ,对应函数值为
( ),曲线上相应点为
( ).
现把区间 上的曲线段 用通过三点 , , 的抛物线
来近似代替,然后求函数 从 到 的定积分:
run('E:\matlab\ex2zhi2trapz.m')
inum =
0.69315152080005
integrate =
log(2)
integrate =
0.69314718055995
The relative error between inum and real-value is about:6.26164e-006
应用近似方法去计算相应的定积分,以便更好地熟练地掌握定积分的近似计算.
实验目的:
1加深理解积分理论中分割、近似、求和、取极限的思想方法;
2了解定积分近似计算的矩形法、梯形法与抛物线法;
3会用MATLAB语言编写求定积分近似值的程序,会用MALAB中的命令求定积分。
实验内容
1分别用梯形法与抛物线法,计算 ,取n=120.要求使用函数trapz()、quad()进行计算求解,并比较结果的差异;
format long
n=120;a=1;b=2;inum=0;
syms x fx
fx=1./x;
for i=1:n
xj=a+(i-1)*(b-a)/n; xi=a+i*(b-a)/n;
fxj=subs(fx,'x',xj); fxi=subs(fx,'x',xi);
inum=inum+(fxj+fxi)*(b-a)/(2*n);
symsxfx
fx=1/x;
fori=1:n
xj=a+(i-1)*(b-a)/n;
xi=a+i*(b-a)/n;
fxj=subs(fx,'x',xj);
fxi=subs(fx,'x',xi);
inum=inum+(fxj+fxi)*(b-a)/(2*n);
end
inum
x=1:1/120:2;
y=1./x;
由于 ,代入上式整理后得
同样也有
……
将这 个积分相加即得原来所要计算的定积分的近似值:


这就是抛物线法公式,也称为辛卜生(Simpson)公式.
实验所用软件及版本:2012B
主要内容:
1,分别用梯形法与抛物线法,计算 ,将积分区间[1,2]作120等分。并尝试用函数trapz(),quad()进行算求解,比较结果的差异。
2,试计算定积分.
(注意:可以运用trapz()、quad()、或附录程序求解吗?为什么?)
3,学习fuluBsum.m的程序设计方法,尝试用函数sum改写矩形法和抛物线法的程序,避免for循环。
实验过程记录(含基本步骤、主要程序清单及异常情况记录等):
1、(1)梯形法:
、formatlong
n=120;a=1;b=2;inum=0;
n=100;a=0;b=1;
syms x fx
fx=1/(1+x^2);
i=0:(n-1);
xj=a+(2*i)*(b-a)/(2*n);
xi=a+(2*i+1)*(b-a)/(2*n);
xk=a+(2*i+2)*(b-a)/(2*n);
fxj=subs(fx,'x',xj);
fxi=subs(fx,'x',xi);
数学实验报告
实验序号:2日期:2013年12月5日
班级
2011应数一班
姓名
孙婉婉
学号
1101114143
实验名称
定积分的近似计算
问题背景描述:
牛顿—莱布尼兹公式仅使用于被积函数的原函数能用初等函数表达出来的情形。如果这
点办不到或者不容易办到,就有必要考虑近似计算的方法。在定积分的许多应用问题中,被
积函数甚至没有解析表达式,可能只是一条实验记录曲线,或者是一组离散的采样值,这时
fxj=subs(fx,'x',xj);
m=m+fxi;p=p+fxj;
end
fxa=subs(fx,'x',a);
fxb=subs(fx,'x',b);
inum=(b-a)*(fxa+fxb+4*m+2*p)/(6*n)
integrate=int(fx,1,2)
integrate=double(integrate)
2试计算定积分 .(注意:可以运用trapz( )、quad( )或附录程序求解吗?为什么?);
3学习fuluBsum.m的程序设计方法,尝试用函数sum改写附录C的程序,避免for循环。
实验原理与数学模型:
实验原理与数学模型:
1. 矩形法:根据定积分的定义,每一个积分和都可以看作是定积分的一个近似值,即 在几何意义上,这是用一系列小矩形面积近似小曲边梯形的结果,所以把这个近似计算方法称为矩形法.不过,只有当积分区间被分割得很细时,矩形法才有一定的精确度.
相关主题