1
Práctica 8: Métodos de Interpolación (Octubre 2017) Carlos Andrés Alza Aguirre
[email protected] ca.alza959@uniandes .edu.co
—En este documento se implementarán diferentes Abstract técnicas de interpolación en el programa MATLAB. Las anteriores técnicas primero serán utilizadas para interpolar una función conocida y posteriormente para imitar una figura dada. Index Terms —Interpolació n,
Acto seguido, se utilizó el anterior algoritmo para interpolar la función Fig. 3, tomando como puntos de interpolación los correspondientes a muestrear la función en los índices Fig. 4. En la Fig. 5 podemos encontrar la gráfica resultante de la función original y las diferentes graficas obtenidas al interpolar con los puntos conocidos.
Lineal, Lagrange, Spl ine Cúbic o.
I. I NTRODUCCION STE informe busca implementar tres algoritmos de interpolación, Lineal, Lagrange y Spline cúbico. Con dichos algoritmos se va realizar en primer lugar la interpolación de una función conocida aumentando el número de puntos conocidos a interpolar. Posteriormente, se buscará imitar el logo de Batman utilizando las tres interpolaciones. Por último, se analizarán las diferencias y las ventajas que tiene cada uno de los algoritmos frente a los otros.
E
Fig. 3. Función original.
Fig. 4. Índices para muestrear el intervalo.
II. I NTERPOLACIÓN LINEAL Este método de interpolación crea una función a trozos la cual toma los diferentes puntos disponibles y los une por medio de rectas Fig. 1. El algoritmo que representa este método lo podemos ver en la Fig. 2. Siendo el paso 1 el que genera la función a trozos y el paso 2 el que calcula los puntos en la función.
Fig. 1. Función de interpolación lineal. Fig. 5. Graficas resultantes con interpolación lineal.
1
2
Fig. 2. Algoritmo de interpolación lineal.
Por último, con este algoritmo se procedió a realizar la imitación del logo de Batman obteniendo Fig. 6. En la cual se ve primero el logo obtenido con el algoritmo creado y segundo el logo obtenido utilizando la función interp1 de Matlab.
2
Fig. 6. Logo de Batman con interpolación lineal e interp1.
III. I NTERPOLACIÓN POR POLINOMIOS DE LAGRANGE Este método de interpolación crea un polinomio de grado n Fig. 7 y con ello se logra tener curvas y no rectas como en el método anterior. El algoritmo que representa este método lo podemos ver en la Fig. 8. Siendo el paso 1 donde se calcula el valor de L, el paso 2 donde se calcula el polinomio y se simplifica el mismo, por último, el paso 3 es donde se evalúa los valores en el polinomio encontrado.
Fig. 9. Graficas resultantes con interpolación de Lagrange.
Como podemos ver en la Fig. 9. La interpolación se aleja bastante del resultado esperado y más aún cuando se aumenta el grado del polinomio, este fenómeno es conocido como el fenómeno de Runge. Para resolver este problema usamos los nodos de Chebyshev Fig. 10 y cómo podemos en la Fig. 11 el resultado de la interpolación por medio de dichos nodos se acerca mucho mejor al resultado esperado y más cuando se aumenta el número de nodos.
Fig. 7. Función de interpolación por polinomios de Lagrange.
Fig. 10. Nodos de Chebyshev.
1 2
3 Fig. 8. Algoritmo de interpolación por polinomios de Lagrange.
Acto seguido, se utilizó el anterior algoritmo para interpolar la función Fig. 3, tomando como puntos de interpolación los correspondientes a muestrear la función en los índices Fig. 4. En la Fig. 9 podemos encontrar la gráfica resultante de la función original y las diferentes graficas obtenidas al interpolar con los puntos conocidos.
Fig. 11. Graficas resultantes con nodos de Chebyshev.
A continuación, con el algoritmo de Lagrange se procedió a realizar la imitación del logo de Batman obteniendo Fig. 12 y como en el anterior caso se observa que, en el polinomio más grande, parte inferior, la interpolación se aleja de lo esperado.
3 función original y las diferentes graficas obtenidas al interpolar con los puntos conocidos.
Fig. 12. Logo de Batman con interpolación de Lagrange.
IV. I NTERPOLACIÓN POR SPLINE CÚBICO Esta interpolación consiste en definir una función a trozos donde los puntos disponibles se unen por medio de polinomios de grado 3 Fig. 13. El algoritmo que representa este método lo podemos ver en la Fig. 14. Siendo el paso 1 donde se calculan los coeficientes de la interpolación y el paso 2 donde se calculan los polinomios de grado 3.
Fig. 15. Graficas resultantes con interpolación de Spline Cúbico.
Por último, con este algoritmo se procedió a realizar la imitación del logo de Batman obteniendo Fig. 16. En la cual se ve primero el logo obtenido con el algoritmo creado y segundo el logo obtenido utilizando la función interp1 de Matlab.
Fig. 13. Función de interpolación por Spline Cúbico
Fig. 12. Logo de Batman con interpolación de Spline Cúbico.
1
2 Fig. 14. Algoritmo de interpolación Spline Cúbico
Acto seguido, se utilizó el anterior algoritmo para interpolar la función Fig. 3, tomando como puntos de interpolación los correspondientes a muestrear la función en los índices Fig. 4. En la Fig. 15 podemos encontrar la gráfica resultante de la
V. A NÁLISIS Y CONCLUSIÓN En primera medida, nos podemos dar cuenta que la mejor interpolación entre estas tres es la de Spline Cúbico, lo anterior dado que por un lado la interpolación lineal une con rectas los puntos disponibles por lo cual la gráfica resultante se aleja de lo esperado, mientras que, la interpolación de Lagrange tiene un efecto de Runge el cual debe ser minimizado por medio de los nodos de Chebyshev. Por lo anterior, la interpolación de Spline cúbico es mejor dado que la gráfica resultante se asemeja mucho a la esperada y no necesita de nodos de Chebyshev para eliminar el efecto de Runge. Así mismo, es necesario analizar que en las secciones 3 y 4 del logo de Batman se genera un problema, esto debido a que los valores en ‘x’ tienen asociado más de un valor en ‘y’ por lo cual la gráfica obtenida no era la que queríamos. En vista de esto, para solucionar el problema se colocaron los valores de ‘y’ en ‘x’ y viceversa con lo cual eliminamos el error, y para ser coherentes con el resultado, a la hora de graficar se volvían a invertir los ejes.