miércoles, 21 de marzo de 2012

metodo de Simpson de 1/3 y 3/8 en Matlab

clear all;
clc;
fprintf('Calculo de la integral por el metodo de Simpson de 1/3 y 3/8\n\n');
fprintf('Para cualquier cantidad de segmentos par o impar\n\n');
f=input('introduce la funcion:','s');
a=input('lime inferior:');
b=input('limite superior:');
c=input('numero de segmentos a dividir :');
h=(b-a)/c;
qqqqq=0;
if (-1)^c==-1
b=b-(3*h);
c=c-3;
e=b+h;
ff=b+2*h;
g=b+3*h;
ee=g-b;
x=b;
q=eval(f);
x=e;
qq=eval(f);
x=ff;
qqq=eval(f);
x=g;
qqqq=eval(f);
qqqqq=(ee)*((q+3*qq+3*qqq+qqqq)/8);
end
z=0;
x=a;
for i=1:c;
if (-1)^i==1
k=eval(f);
z=z+k;
end
x=h*i;
end 
zz=0;
x=a;
for i=2:c;
if (-1)^i==-1
k=eval(f);
zz=zz+k;
end
x=h*i;
end
x=a;
if x==a
d=eval(f);
end
x=b;
if x==b
eee=eval(f);
end
 z=z*4;
v=zz*2;
z=z+v+d+eee;
z=z/(3*c);
z=z*(b-a);
z=z+qqqqq
fprintf('Resultado ');

11 comentarios:

  1. gracias me sirvio mucho pero ando buscando uno de gauss-jordan y gauss-seidel pero por iteraciones despejando las x,y,z

    ResponderEliminar
  2. Muy interesante la forma en la que planteas el problema. solo es necesario hacer unos cambios en el algoritmo, pásame tu E-mail para enviarte el código apenas lo termine.
    Gracias por tu comentario

    ResponderEliminar
  3. lo podrias poner con una interfaz en matlab gracias lo nesecito

    ResponderEliminar
  4. hazlo con interfaz o publicalo como se hace en matlab pero con inetrfaz

    ResponderEliminar
    Respuestas
    1. te invito a que veas los videotutoriales de matlab en ellos tocamos muy amplia mente el tema de creación y desarrollo con interfaz.
      De este codigo simplemente cambiamos los comandos f=input('introduce la funcion:','s');
      a
      f=inline(get(handles.entrada,'string'));
      el código seria el mismo. Pero te recomiendo los videoturiales de matlab llevamos ya 30 de lo mas básico hasta la creación de interfaz.
      Gracias y suerte.

      Eliminar
    2. gracias... sera que me pueden ayudar con el metodo de polinomio de lagrange (interpolador)

      Eliminar
  5. como se llama tu canal en you tube?

    ResponderEliminar
  6. buenas, yo tengo una tarea de matlab en donde me piden sacar la integral por el metodo de simpson, pero los datos que debe ingresar el usuario son:
    a) Función a integrar
    b) Límites de integración
    c) Tamaño de los sub-intervalos de calculo
    entonces, como podría hacerlo pidiendo el tamaño de los sub-intervalos?

    ResponderEliminar