作业帮 > 综合 > 作业

辛普森 matlab用辛普森公式求积分∫ e-xdx (上限1 下限0 )并估计误差.请用Matlab做,我对Matla

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/04/29 03:24:48
辛普森 matlab
用辛普森公式求积分∫ e-xdx (上限1 下限0 )并估计误差.
请用Matlab做,我对Matlab真的一点也不懂.
function [y e]= Simpson(f,a,b,M)
% f被积函数;a积分下限;b积分上限;M子区间个数(将x分为多少个区间)
h=(b-a)/(2*M);
s1=0;
s2=0;
for i=1:M
x=a+(2*i-1)*h;
s1=s1+feval(f,x);
end
for j=1:(M-1)
x=a+2*j*h;
s2=s2+feval(f,x);
end
y=h/3*(feval(f,a)+2*s2+4*s1+feval(f,b));
e=quad(f,0,1)-y;%误差(运行后不显示,把这行命令的分号去掉就运行可以显示误差)
我的结果是
>> Simpson(f,a,b,M)
e =
-4.4409e-016
ans =
2.2183