Anda di halaman 1dari 7

UNIVERSIDAD IINTERNACIONAL SEK FACULTAD DE INGENIERIA MECNICA ENERGIA Y CONTROL NOVENO SEMESTRE NUMERICAL METHODS Jonathan A. Portilla A. jonand-portilla@hotmail.

es Mtodo de Simpson 1/3: Descripcin del Mtodo: El Mtodo Simpson 1/3, 3/8 o compuesto tienen como objetivo dar una aproximacin mucho ms cercana del rea bajo la curva, es decir, es un mtodo de integracin de mucha precisin y que hoy en da es muy utilizado y prctico. Consiste en conectar grupos sucesivos de tres puntos sobre la curva mediante parbola de segundo grado y sumar las areas bajo las parbolas para obtener el valor aproximado del rea bajo la curva.

a f(a) Donde: xm = Es el punto medio entre a y b.

xm f(xm )

b f(b)

Fig. 1. Representacin grfica del rea bajo la curva aplicando el mtodo Simpson 1/3

En donde se tiene que f2(x) es el polinomio de interpolacin para los datos tabulados arriba. De aqu que se usar el Polinomio de Lagrange. Por lo tanto:

En lo cual:

Entonces:

Simplificando trminos:

En los trminos anteriores se tiene una de las partes iguales, es decir una constante que es:

Por lo que de aqu calculamos la Integral por partes:

Sea:

Por lo tanto

Usamos esta frmula para calcular la integral de cada uno de los tres trminos de .

De aqu que debido a

es que se le denomina Regla de Simpson de un tercio.

En la prctica, sustituimos el valor de final:

para obtener nuestra frmula

DESCRIPCIN DEL ALGORITMO: 1. %Simpson de un tercio 2. clear all; 3. clc; 4. disp('Mtodo de Simpson un Tercio'); 5. f=inline(input('Ingrese la funcion: \n','s')); 6. a=str2num(input('Ingrese el lmite inferior: \n','s')); 7. b=str2num(input('Ingrese el lmite superior: \n','s')); 8. n=str2double(input('Ingrese el valor n: \n','s')); 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. End ezplot(f), grid on h=(b-a)/n; for i=1:n+1 x(i)=a+(i-1)*h; end if rem(n,2) == 0 suma=0; for i=3:2:n+1 suma=suma+f(x(i-2))+4*f(x(i-1))+f(x(i)); End I=(h/3)*suma;fprintf(['La raiz es: ' num2str(I)])

La programacin arriba descrita fue hecha en Matlab 7.8.0 con un lenguaje de programacin de Matlab, y de aqu que detallamos lo principal paso a paso de acuerdo a las lneas de programacin. 1. Comentario que deseamos que aparezca como encabezado de la Programacin. 2. Me permite ejecutar un borrado y cierre total tanto de variables en el MuPad y tambin limpia el espacio de trabajo. 3. Permite borrar o limpiar el espacio de trabajo. 4. La funcin disp o fprintf me permite mostrar una accin a realizar, en este caso mostrar al ejecutar el programa lo que est dentro del parntesis, es decir, Mtodo de Simpson un tercio. 5. En esta lnea de programacin estamos construyendo una funcin F en lnea, es decir, nos permite ingresar la funcin al momento de ejecutar el programa. 6. El comando str2num me permite que el dato que voy a ingresar como lmite superior o inferior se represente como un valor numrico nicamente. 7. Similar situacin que el paso 6. 8. El comando str2double convierte una cadena de caracteres representando un nmero real en el nmero real correspondiente. Para as dar valores del numero de divisiones que necesitamos que se evale la funcin. 9. Se ingresa la Ecuacin correspondiente para que el programa ejecute el mtodo correspondiente. 10. El comando For, ejecuta una o varias sentencias en un nmero predeterminado de veces. Est determinado por un condicionante inicial, seguido de unas sentencias y el final (end) despus de realizado el proceso. Se empieza a dar condicionantes y restricciones para ingresar los datos al programa. 11. If, es un condicionante que de acuerdo a nuestra programacin necesitamos que se cumpla, caso contrario se termina la programacin. 12. El comando rem, nos dice que si el residuo despus de la divisin en la funcin, (n,2) == 0 tiene que ser estrictamente igual a cero. Por lo tanto se cumple suma=0. Caso contrario termina la ejecucin. 13. Continuando con los comandos de ejecucin del programa, se sigue condicionando usando el for y el end de acuerdo a los requerimientos que el mtodo necesita. 14. Calculamos el valor de I, I=(h/3)*suma;fprintf(['La raiz num2str(I)]) y mostramos su resultado con el comando fprintf o disp. 15. Termina la programacin. End 16. Se muestra la grafica con el comando ezplot y se le coloca una grilla a la grfica usando el comando grid on. es: '

ALGORITMO DE PROGRAMACIN

INICIO

LEER: f=? Lim Inf=? Lim Sup=? n=?


h=(b-a)/n

for i=1:n+1 i<n+1 x(i)=a+(i-1)*h

i>n+1

NO
rem(n,2)=0

SI suma=0

for i=3:2:n+1i>n+1 i<n+1

i>n+1

suma=suma+f(x(i-2)+4*f(x(i1))+f(x(i))

I=(h/3)*suma

Mostrar: La Raz es = I

FIN

El diagrama de flujos antes descrito muestra el algoritmo de programacin que se emple para realizar el presente trabajo, usando un lenguaje de programacin de Matlab, que tiene mucha similitud a lenguajes como Java, C y otros, pero para nuestro caso se us Matlab incluso tomando en consideracin que es el tema de estudio de la materia.

Se escogi el mtodo de Simpson 1/3 ya que de acuerdo a lo descrito matemticamente es un mtodo de mayor aproximacin a una raz tiene, es decir por ser mas exacto que los otros mtodos he tomado la decisin de desarrollar el programa de dicho mtodo con la herramienta de Matlab, que ayuda a ser mucho mas fcil el desarrollo de integrales matemticas con solo introducir la funcin y las variables necesarias para obtener los resultados desde el programa y software de Matlab. CONCLUSIONES Se tiene con este mtodo una mayor exactitud y un margen de error mnimo para determinar integrales incluso que sean complejas. Con la ayuda de este programa se facilita la determinacin de resultados de sistemas de integracin. Para realizar el algoritmo y desarrollar el script del programa es base fundamental conocer muy bien de que forma se utiliza el mtodo escogido. Nuestra programacin permite utilizar la mayor parte de ecuaciones en la que es permisible realizar una integracin y a dems podemos visualizar grficamente el resultado. RECOMENDACIONES Ejecutar el programa en versiones iguales o mayores a la versin en la que se realiz la programacin (Matlab 7.8.0) Ingresar los datos de manera coherente y acorde a los trminos matemticos que establece el Mtodo. Ensanchar los conocimientos de Mtodos Numricos con el desarrollo de programas en el software Matlab.

BIBLIOGRAFA Ing. Ricardo Seminario http://disi.unal.edu.co Vsquez, Mtodos Numricos para Ingeniera

http://www.docstoc.com/docs/3254392/Integracion-Numerica-I-Reglas-elementales-deintegracion-numerica-Regla-del http://www.slideshare.net/AstroPhoenix/fundamentos-de-programacin-en-scilab Javier Garca de Jaln, Jos Ignacio Rodrguez, Jess Vidal, Aprenda Matlab como si estuviera en Primero, Universidad Politcnica de Madrid, Diciembre 2005.

Anda mungkin juga menyukai