1、10sinxd数学实验报告实验序号: (4) 日期:2015/1/2班级 1350134 姓名 辛浩 学号 135013425实验名称分别利用矩形法、梯形法、辛普森法对定积分进行近似计算并比较计算效果。问题背景描述:定积分在几何学和物理学上都有很重要的作用,所以学会对定积分的求解显得尤为重要。求解方法有多种,可以利用矩形法、梯形法、辛普森法对定积分进行近似计算。实验目的:用 Matlab 显示定积分的计算过程及计算结果,进而比较矩形法、梯形法、辛普森法三种方法的计算效果。学习用 Matlab 来计算定积分,研究这三种方法的近似计算。进而比较这几种方法的计算效果。实验原理与数学模型:1、积分算法
2、a 矩形法在几何意义上,这是用一系列小矩形面积近似小曲边梯形的结果,所以把这个近似计算方法称为矩形法。不过,只有当积分区间被分割得很细时,矩形法才有一定的精确度。b 梯形法各个小梯形面积之和就是曲边梯形面积的近似值。c 辛普森法2、Matlab 求积分函数数值积分函数:trapz、quad、dblquad符号积分函数:int实验所用软件及版本:Matlab7.4.0主要内容(要点):1、 分别用矩形法、梯形法、辛普森法计算 近似值2、 并进行比较三种方法的区别以及计算效果011() 22b nayyfxdh 02132124() ()6 b nnaafxdyyy 11()()() nnb ii
3、i ii iai xffxhf-11()()() nnb iiai iifxdfhxxf1 ibiiai i10sinxd实验过程纪录(含基本步骤、主要程序清单及异常情况纪录)1、 计算的 近似值方法一:矩形法 n=100x=0:1/n:1left_sum=0;right_sum=0;for i=1:nif i=1left_sum=left_sum + 1/n;elseleft_sum=left_sum + sin(x(i)/x(i)*(1/n);endright_sum=right_sum + sin(x(i+1)/x(i+1)*(1/n);endleft_sumright_sumn =10
4、0x =Columns 1 through 100 0.0100 0.0200 0.0300 0.0400 0.0500 0.0600 0.0700 0.0800 0.0900Columns 11 through 200.1000 0.1100 0.1200 0.1300 0.1400 0.1500 0.1600 0.1700 0.1800 0.1900Columns 21 through 300.2000 0.2100 0.2200 0.2300 0.2400 0.2500 0.2600 0.2700 0.2800 0.2900Columns 31 through 400.3000 0.31
5、00 0.3200 0.3300 0.3400 0.3500 0.3600 0.3700 0.3800 0.3900Columns 41 through 500.4000 0.4100 0.4200 0.4300 0.4400 0.4500 0.4600 0.4700 0.4800 0.4900Columns 51 through 600.5000 0.5100 0.5200 0.5300 0.5400 0.5500 0.5600 0.5700 0.5800 0.5900Columns 61 through 700.6000 0.6100 0.6200 0.6300 0.6400 0.6500
6、 0.6600 0.6700 0.6800 0.6900Columns 71 through 800.7000 0.7100 0.7200 0.7300 0.7400 0.7500 0.7600 0.7700 0.7800 0.7900Columns 81 through 900.8000 0.8100 0.8200 0.8300 0.8400 0.8500 0.8600 0.8700 0.8800 0.8900Columns 91 through 1000.9000 0.9100 0.9200 0.9300 0.9400 0.9500 0.9600 0.9700 0.9800 0.9900C
7、olumn 1011.0000left_sum =0.9469right_sum =0.9453方法二:辛普森法 syms xquad(sin(x)./x,0,1)ans =0.9461方法三:梯形法 syms xy=sin(x)./x;yi=eval(int(y,0,1) yi =0.9461实际值:(sinx/x)dx=(1/x)(x-x3/3!+x5/5!-x7/7!+.)dx=(1-x2/3!+x4/5!-x6/7!+.)dx=x-x3/3(3!)+x5/5(5!)-x7/7(7!)+.+cx=1 y0.9460832、计算近似值 120+x方法一:矩形法n=120; a=0; b=1
8、; syms x fx; fx=1/(1+x2); i=1:n; xx=a+i*(b-a)/n; fxx=subs(fx,x,xx); f=fxx*(b-a)/n; sum=sum(f) sum = 0.7833 方法二:辛普森法n=120; a=0; b=1; syms x fx fx=1/(1+x2);i=1:n; 10sinxdxx=a+(2*i-2)*(b-a)/(2*n);yy=a+(2*i-1)*(b-a)/(2*n); zz=a+(2*i-0)*(b-a)/(2*n); fyy=subs(fx,x,yy); f=(fxx+4*fyy+fzz)*(b-a)/(6*n); s=sum
9、(f) s =0.7854方法三 梯形法 syms x y=1/(1+x2); yi=eval(int(y,0,1)yi =0.7854实验报告与实验总结:的近似值1、矩形法 left_sum =0.9469right_sum =0.94532、 梯形法 yi =0.94613、 辛普森法ans =0.9461的近似值120+x1、矩形法sum = 0.7833 2、梯形法yi =0.78543、辛普森法s =0.7854将题中的近似计算结果相比较,发现运用不同的方法,计算结果会有不同。梯形法、矩形法都利用切割,近似,求和,取极限的方法进行求解。由计算结果可知,利用辛普森法法近似计算定积分,更
10、接近于实际值,精确程度更高。 通过本实验深刻理解了不定积分、定积分概念,熟悉了 Matlab 数学软件的求不定积分、定积分的命令,了解简单的编程语句。加深理解了积分理论中分割、近似、求和、取极限的思想方法。学习并掌握了用 Matlab 求定积分的方法,了解了定积分近似计算的矩形法、梯形法,和辛普森法法。并认识到对于不同的题目,采取不同的运算方法,结果会不同,且精确程度也不同。思考与深入: 深刻理解不定积分、定积分概念,熟悉 matlab 数学软件的求不定积分、定积分的命令,了解简单的编程语句,以更快更准确且熟练地设计出程序。矩形法、梯形法、辛普森法是主要研究定积分的三种近似计算算法。Matlab 的专门函数trapz(),quad()也是用于定积分的近似数值计算,可以进一步探讨之间的区别。对于不定积分,是否可以使用该分割方法?还可以继续研究。 教师评语: