Análisis numérico de Matlab, integración numérica y diferenciación numérica
1 Fórmula trapezoidal compuesta
function I=ftrapz(f,a,b,n)
format long %显示15位双精度
h=(b-a)/n;
x=linspace(a,b,n+1);
y=feval(f,x);
I=h*(0.5*y(1)+sum(y(2:n))+0.5*y(n+1));
Archivo de función
function y=fun1(x)
y=exp(-x);
Programa de llamada
t=ftrapz(@fun1,0,1,10)
2 fórmula de Simpson compuesta
function I=fsimpson(fun,a,b,n)
h=(b-a)/n;
x=linspace(a,b,2*n+1);
y=feval(fun,x);
I=(h/6)*(y(1)+2*sum(y(3:2:2*n-1))+4*sum(y(2:2:2*n))+y(2*n+1));
Archivo de función
function y=fun1(x)
y=exp(-x);
Programa de llamada
s=fsimpson(@fun1,0,1,10)