发布网友 发布时间:2022-04-23 10:49
共4个回答
热心网友 时间:2023-07-12 10:51
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
热心网友 时间:2023-07-12 10:52
syms x
int(exp(-x),x,0,1)
热心网友 时间:2023-07-12 10:52
下面是我做的simpson积分:给定精度。
里面有我写的WORD版本,就是求解过程的分析(也有误差分析)
http://www.matlabsky.com/thread-7207-1-1.html
热心网友 时间:2023-07-12 10:53
~jypan/Teaching/sxsy0902/lect07p_exp03.pdf
答案在上面,你自己看吧