Está en la página 1de 5

Métodos de integración

Por trapecios Por Simpson 1/3 simple

Por Simpson 1/3 compuesto por Simpson 3/8


Método de trapecios código

clc,clear

syms x

f=input('Ingresa la funcion: ');


fun=char(f);
func=inline(f);

inicio=input('Ingresa el valor inicial de graficacion: ');


final=input('Ingresa el valor final de graficacion: ');

fplot(fun,[inicio,final],'b')
grid on
hold on

disp('Metodo de integración por trapecios ...')

a=input('Ingresa el valor de a: ');


b=input('Ingresa el valor de b: ');
n=input('Ingresa el valor de n: ');

h=(b-a)/n;
I=0;

for k=[0:n-1];

a1=a+h*k;
b1=a+(h*(k+1));
fa1=feval(func,a1);
plot(a1,0,'r.')
plot(a1,fa1,'r.')
fb1=feval(func,b1);
plot(b1,0,'r.')
plot(b1,fb1,'r.')
p=[a1 a1 b1 b1 a1];
q=[0 fa1 fb1 0 0];
line(p,q,'color','r')
I=I+((h/2)*(fa1+fb1));

end

disp(['El resultado de la integral es: ' num2str(I)])


Método de Simpson 1/3 Simple

clc,clear

syms x

f=input('Ingresa la funcion: ');


fun=char(f);
func=inline(f);

inicio=input('Ingresa el valor inicial de graficacion: ');


final=input('Ingresa el valor final de graficacion: ');

fplot(fun,[inicio,final],'b')
grid on
hold on

disp('Integracion por metodo de Simpson 1/3 Simple ...')

a=input('Ingresa el valor de a: ');


b=input('Ingresa el valor de b: ');
n=3;

h=(b-a)/2;
I=0;
sumaf=0;
k=0;
for k=[0:n-1];

a1=a+h*k;

if k==1
sumaf=[(4*feval(func,a1))+sumaf];
else
sumaf=[feval(func,a1)+sumaf];
end

b1=a+(h*(k+1));
fa1=feval(func,a1);
plot(a1,0,'r.')
plot(a1,fa1,'r.')
fb1=feval(func,b1);
plot(b1,0,'r.')
plot(b1,fb1,'r.')
p=[a1 a1 b1 b1 a1];
q=[0 fa1 fb1 0 0];
line(p,q,'color','r')

end

I=((b-a)/6)*[sumaf];

disp(['El resultado de la integral es:..' num2str(I)])


Método de Simpson 1/3 Compuesto

clc,clear

syms x

f=input('Ingresa la funcion: ');


fun=char(f);
func=inline(f);

inicio=input('Ingresa el valor inicial de graficacion: ');


final=input('Ingresa el valor final de graficacion: ');

fplot(fun,[inicio,final],'b')
grid on
hold on

disp('Integracion por metodo de Simpson 1/3 Compuesto ...')

a=input('Ingresa el valor de a: ');


b=input('Ingresa el valor de b: ');
n=input('Ingresa el valor de n(Debe ser par): ');

h=(b-a)/n;
suma1=0;
suma2=0;
I=0;

for k=[0:n-1];

a1=a+h*k;
if mod(k,2)==0
suma2=[feval(func,a1)+suma2];

else
suma1=[feval(func,a1)+suma1];
end

b1=a+(h*(k+1));
fa1=feval(func,a1);
plot(a1,0,'r.')
plot(a1,fa1,'r.')
Metodo de Simpson 3/8

clc,clear

syms x

f=input('Ingresa la funcion: ');


fun=char(f);
func=inline(f);

inicio=input('Ingresa el valor inicial de graficacion: ');


final=input('Ingresa el valor final de graficacion: ');

fplot(fun,[inicio,final],'b')
grid on
hold on

disp('Integracion por metodo de Simpson 3/8 ...')

a=input('Ingresa el valor de a: ');


b=input('Ingresa el valor de b: ');
n=4;

h=(b-a)/3;
I=0;
sumaf=0;
k=0;
for k=[0:n-1];

a1=a+h*k;

if k==1
sumaf=[(3*(feval(func,a1)))+sumaf];
elseif k==2
sumaf=[(3*(feval(func,a1)))+sumaf];
else
sumaf=[(feval(func,a1))+sumaf];
end

b1=a+(h*(k+1));
fa1=feval(func,a1);
plot(a1,0,'r.')
plot(a1,fa1,'r.')
fb1=feval(func,b1);
plot(b1,0,'r.')
plot(b1,fb1,'r.')
p=[a1 a1 b1 b1 a1];
q=[0 fa1 fb1 0 0];
line(p,q,'color','r')

end

I=((b-a)/8)*[sumaf];

disp(['El resultado de la integral es:..' num2str(I)])

También podría gustarte