Método de cálculo numérico-algoritmo de integración numérica

Requisitos:
1. Escribe una función de integración numérica. La entrada son los límites superior e inferior de integración, el número de segmentos, el integrando y el método de integración; se
requiere el método de integración compuesta. La función contiene tres métodos de integración compuesta: T, Simpson, y Cotes.
código matlab:
① función principal

function y=integral(a,b,n,fun,flag)  
%a,b积分上下限,n分段段数,fun被积函数,flag积分方法: 1:T,2:S,3:C
h=(b-a)/n;
s0=0;
fa=subs(fun,a);
fb=subs(fun,b);
if flag==1
    for k = 1:n-1
        xk = a+k*h;
        s0 = s0+subs(fun,xk);
    end
    y = (h/2)*(fa+2*s0+fb);
end
if flag==2
    s1=subs(fun,a+0.5*h);
    for k = 1:n-1
        xk = a+k*h;
        s0 = subs(fun,xk)+s0;
        s1 = subs(fun,xk+(h/2))+s1;
    end
    y=(h/6)*(fa+2*s0+4*s1+fb);
end
if flag==3
   s1=0;
   s2=0;
   s3=0;
   for k = 1:n-1
        xk = a+k*h;
        s0 = s0+subs(fun,xk);
   end
   for k = 0:n-1
       xk = a+k*h;
       s1 = subs(fun,xk+(h/4))+s1;
       s2 = subs(fun,xk+(h/2))+s2;    
       s3 = subs(fun,xk+(3*h/4))+s3;
   end
   y=(h/90)*(7*fa+32*s1+12*s2+32*s3+14*s0+7*fb);
end

Supongo que te gusta

Origin blog.csdn.net/weixin_46837674/article/details/113032461
Recomendado
Clasificación