blog/source/_posts/matlab-simpson.md

945 B

title date tags category
Matlab使用Simpson辛普森法计算数值积分 2021-11-12 00:00:00
Matlab
编程
技术

Matlab 运用Simpson辛普森公式求定积分(附代码)

直接附代码

simpson.m
function [out] = simpson(f,n,a,b)
%SIMPSON 此处显示有关此函数的摘要
%   此处显示详细说明

h=(b-a)/n;

s1=fi(f,1,h,a)+fi(f,n+1,h,a);

s2=0;
for index=3:2:n-1
    s2=s2+2*fi(f,index,h,a);
end

s4=0;
for index=2:2:n
    s4=s4+4*fi(f,index,h,a);
end

out=h/3*(s1+s2+s4);
end


function [out] = fi(f,i,h,a)

out=f(a+(i-1)*h);
end

调用:

simpson(<函数句柄>, <n>, <下限>, <上限>)

参考文章

matlab用辛普森公式求积分_积分近似计算之辛普森公式_weixin_39726131的博客-CSDN博客