Your SlideShare is downloading. ×
Interpolacion
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Interpolacion

4,397

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
4,397
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
150
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Universitaria: Priscila Wendy Espinoza Tito II / 2012
  • 2. Introducción En ciertos casos el usuario conoce el valor de una función f(x) en una serie de puntos x1, x2, · · · , xn, pero no se conoce una expresión analítica de f(x) que permita calcular el valor de la función para un punto. La idea de la interpolación es poder estimar f(x) para un x arbitrario, a partir de la construcción de una curva o superficie que une los puntos donde se han realizado las mediciones y cuyo valor si se conoce. Se asume que el punto arbitrario x se encuentra dentro de los límites de los puntos de medición, en caso contrario se llamaría extrapolación.
  • 3. En este capítulo estudiaremos el importantísimo tema de lainterpolación de datos. Veremos dos tipos de interpolación:la interpolación POLINOMIAL y la interpolaciónSEGMENTARIA (splines). .Comencemos dando la definición general. Definición. Dados puntos que corresponden a los datos: y los cuales se representan gráficamente como puntos en el plano cartesiano
  • 4. Si existe una función definida en el intervalo (dondesuponemos que ), tal que para ,entonces a se le llama una función de interpolación de losdatos, cuando es usada para aproximar valores dentro delintervalo , y se le llama función de extrapolación de losdatos, cuando está definida y es usada para aproximar valoresfuera del intervalo.
  • 5. Diferencias Divididas Finitas deNewton Se definen de la siguiente manera f ( xi ) f (x j ) f [ xi , x j ] xi xj f [ xi , x j ] f [ x j , xk ] f [ xi , x j , xk ] xi xk f [ xn ,, x1 ] f [ xn 1 ,, x0 ] f [ xn , xn 1 ,, x1 , x0 ] xn x0
  • 6.  El polinomio de Newton se define de la siguiente manera f x b0 b1 x x0 b2 x x0 x x1  bn x x0 x x1  x xn 1 donde b0 f x0 b1 f [ x1 , x0 ] b2 f x2 , x1 , x0  bn f xn ,, x0
  • 7.  Para calcular los coeficientes , es conveniente construir una tabla de diferencias divididas como la siguiente :
  • 8.  Ejemplo. Calcular la tabla de diferencias divididas finitas con los siguientes datos :Procedemos como siguePor lo tanto el polinomio de Newton es:
  • 9. Polinomio de Interpolación deLagrange Se plantea como sigue Donde los polinomios se llaman los polinomios de Lagrange, correspondientes a la tabla de datos. Como se debe satisfacer que , esto se cumple si y para toda . Y así sucesivamente, veremos finalmente que la condición se cumple si y para toda . Por lo tanto, planteamos como sigue:
  • 10.  Con esto se cumple la segunda condición sobre . La constante c se determinará para hacer que se cumpla la primera condición: l0 x0 1 1 c x0 x1 x0 x2  x0 xn 1 c x0 x1 x0 x2  x0 xn Por lo tanto el polinomio queda definido como: Análogamente se puede deducir que: para j=1,…,n
  • 11.  Ejemplo. Calcular el polinomio de Lagrange usando los siguientes datos: Solución f ( x) 2l0 ( x) l1 ( x) 2l2 ( x) 3l3 ( x) ( x 3)( x 5)( x 7) ( x 3)( x 5)( x 7) l0 ( x)donde ( 2)( 4)( 6) 48 ( x 1)( x 5)( x 7) ( x 1)( x 5)( x 7) l1 ( x) (2)( 2)( 4) 16 ( x 1)( x 3)( x 7) ( x 1)( x 3)( x 7) l2 ( x ) (4)( 2)( 2) 16 ( x 1)( x 3)( x 5) ( x 1)( x 3)( x 5) l3 ( x) (6)( 4)( 2) 48Sustituyendo arriba, el polinomio de Lagrange quedadefinido como sigue:
  • 12. Interpolación de Splines Esta interpolación se llama interpolación segmentaria o interpolación por splines. La idea central es que en vez de usar un solo polinomio para interpolar los datos, podemos usar segmentos de polinomios y unirlos adecuadamente para formar nuestra interpolación. Cabe mencionar que entre todas, las splines cúbicas han resultado ser las más adecuadas para aplicaciones.
  • 13. Dada nuestra tabla de datos,donde suponemos que x0 x1  xn , y dado k un número enteropositivo, una función de interpolación spline de grado k, para la tabla dedatos, es una función s(x) tal que :i) s ( xi ) yi , para toda i 0,1,, n .ii) s x es un polinomio de grado k en cada subintervalo xi 1 , xi .iii ) s x tiene derivada contínua hasta de orden k 1 en x0 , xn .
  • 14. FUNCIONES SPLINES DE GRADO 1 Dados los n+1 puntos Claramente esta función cumple con las condiciones de la spline de grado 1. Así, tenemos que para este caso: donde: i) sj x es un polinomio de grado menor o igual que 1 ii) s x tiene derivada continua de orden k-1=0. iii) s x j y j , para j 0,1,, n .
  • 15. Por lo tanto, la spline de grado 1 queda definida como : y0 f x1 , x0 x x0 si x x0 , x1 y1 f x2 , x1 x x1 si x x1 , x2 sx  yn 1 f xn , xn 1 x xn 1 si x xn 1 , xn donde f [ xi , x j ] es la diferencia dividida de Newton. FUNCIONES SPLINES DE GRADO 2 Para aclarar bien la idea, veamos un ejemplo concreto, consideremos los siguientes datos :
  • 16. Primero que nada, vemos que se forman tres intervalos : 3,4.5 4.5,7 7,9 En cada uno de estos intervalos, debemos definir una función polinomialde grado 2, como sigue: a1 x 2 b1 x c1 si x 3,4.5 sx a2 x 2 b2 x c2 si x 4.5,7 a3 x 2 b3 x c3 si x 7,9 Primero, hacemos que la spline pase por los puntos de la tabla de datos. Es decir, sedebe cumplir que: s(3) 2.5, s(4.5) 1, s(7) 2.5, s(9) 0.5Así, se forman las siguientes ecuaciones: s(3) 2.5 9a1 3b1 c1 2.5 2 (4.5) a1 4.5b1 c1 1 s(4.5) 1 (4.5) 2 a2 4.5b2 c2 1 49a2 7b2 c2 2.5 s (7 ) 2.5 49a3 7b3 c3 2.5 s(9) 0.5 81a3 9b3 c3 0.5
  • 17. Hasta aquí, tenemos un total de 6 ecuaciones vs. 9 incógnitas.El siguiente paso es manejar la existencia de las derivadas contínuas. En elcaso de las splines de grado 2, necesitamos que la spline tenga derivadacontínua de orden k-1=1, es decir, primera derivada continua.Calculamos primero la primera derivada: 2a1 x b1 si x 3,4.5 s x 2a2 x b2 si x 4.5,7 2a3 x b3 si x 7,9 Vemos que esta derivada está formada por segmentos de rectas, quepudieran presentar discontinuidad en los cambios de intervalo. Es decir,las posibles discontinuidades son x 4.5 y x 7 . Por lo tanto para que s x sea contínua, se debe cumplir que: 2a1 4.5 b1 2a2 4.5 b2o lo que es lo mismo, 9a1 b1 9a2 b2También debe cumplirse que: 2a2 7 b2 2a3 7 b3o lo que es lo mismo, 14 a2 b2 14 a3 b3
  • 18. Así, tenemos un total de 8 ecuaciones vs. 9 incognitas; esto nos da ungrado de libertad para elegir alguna de las incógnitas. Elegimos porsimple conveniencia a1 0 . De esta forma, tenemos un total de 8 ecuaciones vs. 8 incógnitas. Estas son lassiguientes: 3b1 c1 2.5 4.5b1 c1 1 20.25a2 4.5b2 c2 1 49a2 7b2 c2 2.5 49a3 7b3 c3 2.5 81a3 9b3 c3 0.5 b1 9 a2 b2 14a2 b2 14a3 b3Este sistema de ecuaciones tiene la siguiente forma matricial: 3 1 0 0 0 0 0 0 b1 2.5 4.5 1 0 0 0 0 0 0 c1 1 0 0 20.25 4.5 1 0 0 0 a2 1 0 0 49 7 1 0 0 0 b2 2.5 0 0 0 0 0 49 7 1 c2 2.5 0 0 0 0 0 81 9 1 a3 0.5 1 0 9 1 0 0 0 0 b3 0 0 0 14 1 0 14 1 0 c3 0
  • 19. Usando Mathematica se obtiene la siguiente solución: b1 1 c1 5 .5 a2 0.64 b2 6.76 c2 18.46 a3 1 .6 b3 24.6 c3 91.3 Sustituyendo estos valores (junto con a1 0 ), obtenemos la funciónspline cuadrática que interpola la tabla de datos dada: x 5.5 si x 3,4.5 2 sx 0.64 x 6.76 x 18.46 si x 4.5,7 2 1.6 x 24.6 x 91.3 si x 7,9 5 4 3 2 1 3 4.5 7 9 -1
  • 20. Métodos Interpolación en Matlab En matlab encontramos las siguientes funciones para interpolar datos: interp1 interpolación de datos unidimensionales. spline interpolación con el método de spline cúbica polyfit interpolación con polinomios
  • 21. El comando “interp1” El comando interp1 se emplea para interpolar una serie de datos. El formato de este comando es: yi = interp1(x, y, xi, método) Donde: x : abscisa de los puntos a interpolar, expresada como vector fila. y : ordenada de los puntos a interpolar, expresada como vector fila. xi : abscisas para construir la función de interpolación, expresada como vector fila. Si es un solo valor, calculará el valor interpolando con la función declarada en métodos. método: determina el método de interpolación, entre:
  • 22. Los metodos nearest interpolación asignado el valor del vecino más cercano. linear interpolación lineal (default) spline interpolación con spline cúbica pchip interpolación con polinomios de Hermite cubic (igual que pchip) v5cubic interpolación Cúbica usada in MATLAB 5
  • 23.  Ejemplo de implementación
  • 24. El comando “spline” Otra manera de realizar una interpolación de tipo spline, es invocando el comando spline, cuyo formato se muestra a continuación: yy = spline (x, y, xx) Donde: x : abscisa de los puntos a interpolar, expresada como vector fila. y : ordenada de los puntos a interpolar, expresada como vector fila. xx : abscisas para construir la función de interpolación, expresada como vector fila. Si es un solo valor calculará el valor interpolando.
  • 25.  Ejemplo de implementación
  • 26. El comando “polyfit” Calcula los coeficientes de un polinomio de grado “n” que ajustan, mediante mínimos cuadrados, a una serie de datos. El formato de este comando se resume, así: yy = polyfit (x, y, orden) x : abscisa de los puntos a interpolar, expresada como vector fila. y : ordenada de los puntos a interpolar, expresada como vector fila. orden: indica el orden del polinomio que se utilizará en el ajuste. Además, se usa el comando polyval para calcular el valor de un polinomio para un dado valor de x, según la forma: y = polyval ( p , x ) donde: p es el polinomio, ingresado como vector fila y x es el valor de la incógnita cuya imagen se desea calcular.
  • 27.  Ejemplo de implementación
  • 28. Gracias por su atención

×