复化梯形公式及复化辛普森公式的精度比较.docVIP

  • 35
  • 0
  • 约2.4千字
  • 约 6页
  • 2019-01-10 发布于安徽
  • 举报

复化梯形公式及复化辛普森公式的精度比较.doc

. . WORD.格式整理. . . .专业.知识.分享. . 实验四、复化梯形公式和复化Simpson公式的精度比较 (2学时) 一、实验目的与要求 1、熟悉复化Simpson公式和复化梯形公式的构造原理; 2、熟悉并掌握二者的余项表达式; 3、分别求出准确值,复化梯形的近似值,复化Simpson的近似值,并比较后两者的精度; 4、从余项表达式,即误差曲线,来观察二者的精度,看哪个更接近于准确值。 二、实验内容: 对于函数,试利用下表计算积分。 表格如下: 0 1/8 1/4 3/8 1/2 5/8 3/4 7/8 1 1 0.9973978 0.9896158 0.9767267 0.9588510 0.9361556 0.9088516 0.8771925 0.8414709 注:分别利用复化梯形公式和复化Simpson公式计算,比较哪个精度更好。 其中:积分的准确值。 三、实验步骤 熟悉理论知识,并编写相应的程序; 上机操作,从误差图形上观察误差,并与准确值相比较,看哪个精度更好; 得出结论,并整理实验报告。 四、实验注意事项 1、复化梯形公式,程序主体部分: for n=2:10 T(n)=0.5*T(n-1) for i=1:2^(n-2) T(n)=T(n)+(sin((2*i-1)/2^(n-1))/((2*i-1)/2^(n-1)))/2^(n-1); end end 2、复化Simpson公式,程序主体部分: for i=1:10 n=2.^i x=0:1/n:1 f=sin(x)./x f(1)=1 s=0 for j=1:n/2 s=s+f(2*j) end t=0 for j=1:(n/2-1) t=t+f(2*j-1) end S(i)=1/3/n*(f(1)+4*s+2*t+f(n+1)) end 五.实验内容 复化梯形公式和复化辛普森公式的引入 复化梯形公式: ; 复化辛普森公式: ; 根据题意和复化梯形公式、复化辛普森公式的原理编辑程序求解代码如下: Matlab代码 clc s=quad(sin(x)./x,0,1) p1=zeros(10,1); p2=zeros(10,1); for k=6:15 s1=0; s2=0; x=linspace(0,1,k); y=sin(x)./x; z=(1/(2*(k-1))):(1/(k-1)):1; sz=sin(z)./z; y(1)=1; for i=1:(k-1) s1=s1+0.5*(x(i+1)-x(i))*(y(i)+y(i+1)); end for j=1:(k-1) s2=s2+(1/6)*(x(j+1)-x(j))*(y(j)+y(j+1)+4*sz(j)); end p1(k-5)=s1-s; p2(k-5)=s2-s; end p1; p2; s1=s+p1(4) s2=s+p2(4) format long for k=1:length(p1) p1(k)=abs(p1(k)); p2(k)=abs(p2(k)); end p1 p2 plot(6:1:15,p1,-r) hold on plot(6:1:15,10000*(p2),-c) hold off 部分程序结果输出: s = 0.946083070076534 s1 = 0.945690863582701 s2 = 0.946083085384947 结果分析 根据结果输出可知:积分的准确值为:I= 0.946083070076534; 通过复化梯形公式和复化辛普森公式得到的积分值为: s1 =0.945690863582701: s2 =0.946083085384947; 相对误差为: ; ; 显然,从相对误差可知通过辛普森公式得到的结果误差小精度高。 由于以上的算法只算了结点个数为9的情况,只能横向比较两公式的精确程度,而不能分别比较两公式随节点个数变化精度的变化,故而将以上程序重新编(以上程序为最终程序)可得出两公式随节点个数变化精度的变化情况所取得节点个数为从6到15,共计10种情况对应的误差值如下表: 节点数 6 7 8 9

文档评论(0)

1亿VIP精品文档

相关文档