• Like
Gabrielquintero analisís matemático
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Gabrielquintero analisís matemático

  • 58 views
Published

Polinomios Interpolantes

Polinomios Interpolantes

Published in Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
58
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
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. INTERPOLACIÓN POLINÓMICAEl problema de la interpolación consiste en estimar el valor de una función en un punto a partir devalores conocidos en puntos cercanos. Para obtener esta estimación se aproxima la función conpolinomios ya que son fáciles de evaluar y por el hecho fundamental de que dados n+1 puntos deabscisa distinta, (x0, y0), (x1, y1),..., (xn, yn), existe exactamente un polinomio Pn(x) de grado nosuperior a n, que pasa por dichos puntos, es decir Pn(xi) = yi para i = 0, …, n .Así, el problema de interpolación consiste en la obtención de un polinomio, llamado polinomio deinterpolación, de grado menor o igual que n que pasa por n+1 puntos (xi,yi), i=0,1,...,n, tambiénllamados nodos de interpolación. Plantearemos tres formulaciones diferentes para este problemaque nos llevan al mismo polinomio interpolador:1) Planteando directamente las condiciones anteriores se obtiene un sistema de ecuacioneslineales con solución única, pero generalmente mal condicionado o de difícil solución si el númerode puntos es elevado.2) Los polinomios de Lagrange permiten obtener una expresión explícita del polinomio deinterpolación cuyo interés es más bien teórico, pues es difícil de evaluar en puntos concretos.3) Numéricamente es mucho más útil la forma de Newton del polinomio de interpolación. Aunqueno tiene expresión explícita, su obtención es más estable que por los métodos anteriores, suevaluación no presenta los inconvenientes de los polinomios de Lagrange, y sobre todo, se puedeactualizar fácilmente si se añaden nuevos nodos de interpolación. UN PROBLEMA DE INTERPOLACIÓNMidiendo la temperatura ambiente a distintas horas del día hemos obtenido la tabla de ladiapositiva.Sea T=f(t) la función (desconocida) que da la temperatura ambiente en cada instante t. Paraestimar la temperatura en un instante t que no aparece en la tabla, aproximaremos la función fmediante polinomios de interpolación. Estos polinomios se determinan exigiendo que coincidancon f en alguno de los valores tabulados. Si exigimos que pase por dos puntos, obtenemos unarecta, o sea un polinomio de grado 1. Si hacemos que pase por tres puntos, queda un polinomiode grado 2, y así sucesivamente podemos ir añadiendo puntos e incrementando el grado.Por lo tanto, en la interpolación lineal o de grado 1, la función se sustituye por la recta que pasapor dos puntos. Tres datos se interpolan con un polinomio de segundo grado, gráficamente unaparábola que pasa por esos tres puntos.
  • 2. Podríamos pensar que al aumentar el grado se obtiene mejor aproximación, pero esto es falso engeneral. La coincidencia del polinomio con muchos puntos de interpolación se consigue a costa degrandes oscilaciones en los intervalos entre nodos o puntos de interpolación dados. INTERPOLACIÓN LINEALEl modo más simple de estimar la temperatura a las 13 horas es tomar la media entre lastemperaturas de las 12h y las 14h, que es de 19.5º. Para otros instantes en el mismo intervalotomamos una media ponderada, o geométricamente hablando, la ordenada de la recta que pasapor (12,18) y por (14,21). La ecuación general de la recta es P1(x) = a0 + a1x. Exigiendo que pase porlos puntos (x0, y0) y (x1, y1) obtenemos un sistema de ecuaciones linealesa0 + a1x0 = y0a0 + a1x1 = y1cuya solución da los coeficientes de la recta buscada.En nuestro ejemplo tenemos el sistemaa0 + 12a1 = 18a0 + 14a1 = 21cuya solución es a0 = 0 y a1 = 3/2. INTERPOLACIÓN CUADRÁTICATomando un polinomio de mayor grado, podemos imponer más condiciones para tener en cuentala evolución de la temperatura alrededor del intervalo [12,14].El polinomio de grado dosP2(x) = a0 + a1x + a2x2 que pasa por (x0, y0), (x1, y1) y (x2, y2) se determina análogamenteresolviendo el sistema.a0 + a1x0 + a2x02 = y0a0 + a1x1 + a2x12 = y1a0 + a1x2 + a2x22 = y2La matriz de este sistema se denomina matriz de Van der Monde. Esta matriz es regular (esto escon determinante no nulo) si los xi son todos distintos, pero es mal condicionada para tamaños
  • 3. relativamente pequeños, es decir variaciones pequeñas en elementos de la matriz puedenproducir grandes variaciones en la solución. Esto hace desaconsejable la obtención del polinomiode interpolación por este método. Además, la solución de un sistema lineal de orden n tiene costecúbico O(n3), mientras que, como veremos enseguida, el polinomio de interpolación puedeobtenerse con O(n2) operaciones. DESPLAZAMIENTO DE ORIGENEl mal condicionamiento de la anterior matriz se debe, en parte, a la inadecuada elección de lospolinomios elegidos como base para expresar P2(x). Si, en lugar de 1, x, x2, desplazamos el origen,por ejemplo a x = x1 = 12, el mismo polinomio es ahora una combinación lineal de potencias de x-x1:P2(x) = b0 + b1(x-x1) + b2(x-x1)2La condición P2(x1) = y1 proporciona directamente el valor de b0 y queda un sistema de menortamaño y mejor condicionado que el anterior. Esta mejora no es definitiva, pues la matriz delnuevo sistema es parecida a la de Van der Monde y para mayor grado reaparecerá el malcondicionamiento. En el ejemplo, el sistema quedacon lo queP2(x) = 18 + 9/4(x 12) 3/8(x 12)2 FORMA NORMALDEL POLINOMIO DE INTERPOLACIÓNEl proceso anterior, aplicado a un conjunto de n+1 puntos de abscisas distintas, (x0, y0), (x1, y1),...,(xn, yn), demuestra la existencia y unicidad del polinomio de interpolación de grado n, Pn(x), quecumple las condiciones Pn(xi) = yi, i=0,1,2...,n. Expresando el polinomio buscado en forma normalPn(x) = a0 + a1x + a2x2 + ··· + anxne imponiendo las condiciones de interpolación se obtiene el sistema de la diapositiva.Se demuestra que la matriz del sistema tiene determinante
  • 4. V ( x0 , x1 ,...,xn ) (x j xi ) 0 i j nque sólo se anula si coinciden las abscisas de alguno de los nodos. Por tanto, si todos los x i sondistintos, el sistema es compatible determinado, o sea, tiene solución única. En consecuencia,tenemos el resultado siguiente:Dados n+1 puntos de abscisas distintas (x0, y0), (x1, y1),..., (xn, yn), existe unúnico polinomio de grado menor o igual que n, cumpliendo las condiciones de interpolación Pn(xi) = yi, i=0,1,2...,n.Este resultado tiene gran importancia teórica al resolver de forma única el problema deinterpolación polinómica. Sin embargo, el método empleado en su deducción no resulta aplicableen la práctica, pues ya hemos visto que el sistema construido es mal condicionado. FORMA DE LAGRANGE DEL POLINOMIO DE INTERPOLACIÓNLa obtención del polinomio de interpolación en forma normal requiere la resolución de un sistemade ecuaciones lineales, cuyo coste aritmético es alto y depende del el número n de nodos. Parareducir el coste podemos tomar una base del espacio de polinomios más adecuada, en la que seamás cómodo imponer las condiciones de interpolación. Esta base, formada por polinomios Lin(x),i=0,...,n, dependientes de las abscisas x0, x1, ..., xn, de los nodos considerados, nos proporcionará elpolinomio de interpolación sin hacer ni un solo cálculo.Sea Lin(x) un polinomio de grado n, que se anule en todos los puntos xj, j = 0, 1, ..., n, salvo en eli-ésimo, donde vale 1; es decir, tal queLi(xj) = 0 si j i y Li(xi) = 1La existencia de este polinomio se deriva del resultado anterior, pero puede obtenersedirectamente, sin necesidad de resolver un sistema, gracias a la siguiente fórmula debida aLagrangeEs inmediato comprobar entonces que el polinomioPn(x) = y0 L0(x) + y1 L1(x) + y2 L2(x) + ··· + yn Ln(x)cumple las condiciones Pn(xi) = yi, i=0,1,2...,n., lo que prueba directamente la existencia delpolinomio de interpolación. La unicidad se puede garantizar utilizando el hecho de que unpolinomio de grado n puede tener a lo sumo n raíces. Si dos polinomios de grado n interpolann+1 puntos, su diferencia se anula en dichos puntos, por lo que sólo puede ser el polinomioidénticamente nulo.
  • 5. Combinando las dos últimas fórmulas, obtenemos una expresión explícita del polinomio deinterpolación. El polinomio P2(x) del ejemplo tiene, según Lagrange, la siguiente expresión:Las operaciones que nos hemos ahorrado en su determinación, hemos de pagarlas al evaluar elpolinomio en un punto concreto (del orden de n2 operaciones por cada evaluación). Además, losproductos a efectuar pueden causar overflow y la fórmula no es estable numéricamente.Cambiaremos los polinomios de Lagrange Lin(x) por otra base que nos proporcione mejorespropiedades numéricas, a costa de perder la expresión explícita cómoda del polinomio deinterpolación. FORMA DE NEWTON DEL POLINOMIO DE INTERPOLACIÓNLa forma natural del polinomio de interpolación o forma normal era difícil de obtener y fácil deevaluar en un punto dado. Por el contrario, la obtención de la forma de Lagrange era directa,mientras su evaluación resultaba costosa. ¿Existe una solución que evite ambos problemas? Larespuesta afirmativa nos la proporciona el método de Newton que exponemos a continuación.Mediante la técnica de desplazamiento del origen, consideramos como base los polinomios 1, x-x0, (x-x0)(x-x1), ..., (x-x0)(x-x1) (x-xn-1). El polinomio de interpolación correspondiente tendráahora la expresiónPn(x) = c0 + c1(x-x0) + c2(x-x0)(x-x1) + + cn(x-x0)(x-x1) (x-xn-1)Imponiendo las condiciones de interpolación, podemos determinar los coeficientes de estepolinomio.Pn(x0) = y0 = c0Pn(x1) = y1 = c0+ c1(x1-x0)Pn(x2) = y2 = c0+ c1(x2-x0) + c2(x2-x0)(x2-x1)Pn(xn) = yn = c0+ c1(xn-x0) + c2(xn-x0)(xn-x1) + + cn(xn-x0)(xn-x1) (xn-xn-1)El sistema lineal obtenido tiene una matriz análoga a la de Van der Monde, pero con la ventaja deser triangular inferior. Los coeficientes pueden determinarse con menos operaciones. Otrasimilitud con la matriz de Van der Monde, es que el elemento (i,j) es el valor del j-ésimo polinomiode la base en el (i-1)-ésimo punto de interpolación.En nuestro ejemplo, para estimar la temperatura a las 13 h. mediante un polinomio de grado 3,tomamos los 4 puntos más próximos, que son (12,18), (14,21), (10,12) y (16,19). Imponiendo alpolinomio que pase por estos puntos, queda el sistema
  • 6. P3(12) = 18 = c0P3(14) = 21 = c0+ 2c1P3(10) = 12 = c0- 2c1 + 8c2P3(16) = 19 = c0+ 4c1 + 8c2 + 48c3Resolviendo este sencillo sistema triangular obtenemos los coeficientes del polinomio buscado. Laecuación del polinomio de grado 3 de la tabla anterior esUna importante consecuencia de la forma de los polinomios de la base considerada es que laadición de nuevos puntos no afecta a los coeficientes previamente calculados. De este modo,podemos ir añadiendo puntos uno a uno y obtener polinomios de interpolación de grado crecientesin tener que recalcular los anteriores. En general, cada polinomio se obtiene del anteriormediantePi(x) = Pi 1(x) + ci(x-x0)(x-x1) (x-xi 1) TABLAS DE DIFERENCIAS DIVIDIDASLa resolución del sistema triangular anterior por eliminación de Gauss puede presentar problemasde desbordamiento numérico, como en la evaluación de los polinomios de Lagrange.Reinterpretaremos el sistema para evitar este problema, obteniendo un algoritmo numéricamenteestable con un coste similar (del orden de n2).Denotemos por f[x0, x1, ..., xk] el coeficiente de xk en el polinomio de interpolación de grado k. Porla forma de los polinomios de Newton, tenemos que f[x0, x1, ..., xk] = ckDe la primera ecuación del sistema se obtiene c0 = f[x0] = y0y de la segunda y1 c0 f [ x1 ] f [ x0 ] c1 f [ x0 , x1 ] x1 x0 x1 x0Esta expresión se denomina cociente de diferencias o diferencias divididas de primer orden yproporciona el valor de c1 en función de los puntos de interpolación.Los restantes coeficientes del polinomio de interpolación se obtienen análogamente a partir dediferencias divididas de mayor orden.Así, por ejemplo, c2 viene dado por el cociente en diferencias de orden 2 f [ x1 , x2 ] f [ x0 , x1 ] c2 f [ x0 , x1 , x2 ] x2 x0
  • 7. Diferencias divididas de orden superior nos proporcionarán de modo análogo los coeficientes depolinomios de mayor grado. En general, el coeficiente ck viene dado por una diferencia dividida deorden k f [ x1 , x2 , , xk ] f [ x0 , x1 , , xk 1 ] ck f [ x0 , x1 , , xk ] xk x0Esta expresión muestra que las diferencias divididas de orden k dependen de diferencias divididasde primer orden k-1. (En el caso k =1 consideramos f[xi] = yi como una diferencia de orden 0). Estasdependencias determinarán el orden de las operaciones en el algoritmo de cálculo En la práctica,los cálculos se disponen en una tabla de diferencias divididas, colocando en la primera columna losvalores de la función o diferencias divididas de orden 0, en la segunda columna las diferenciasdivididas de primer orden, en la tercera columna las de orden 2, y así sucesivamente.La tabla queda de la forma siguiente: y0 f [ x0 ] y1 f [ x1 ] f [ x0 , x1 ] y2 f [ x2 ] f [ x1 , x2 ] f [ x0 , x1 , x2 ] y3 f [ x3 ] f [ x2 , x3 ] f [ x1 , x2 , x3 ] f [ x0 , x1 , x2 , x3 ]    En la diagonal de la tabla aparecen los coeficientes c0, c1, c2, ..., de los polinomios de interpolación EVALUACION DEL POLINOMIO DE INTERPOLACIÓNUna vez obtenidos estos coeficientes, nos preguntamos cómo evaluar los polinomios deinterpolación en un punto dado x = a. La forma más eficiente desde el punto de vista numérico esmediante la expresión anidada o regla de horner del polinomio:Pn(x) = c0+ c1(x-x0) + c2(x-x0)(x-x1) + + cn(x-x0)(x-x1) (x-xn-1) == ( ((cn(x-x n-1) + cn-1)(x-x n-2) + cn-2)(x-x n-3) + + c1)(x-x0) + c0Las operaciones se efectúan teniendo en cuenta la precedencia establecida mediante losparéntesis, o sea, comenzando con los más interiores.
  • 8. ERROR DE INTERPOLACIÓNSupongamos que interpolamos una función conocida f a partir de sus valores en unos puntosdados, x0, x1, ..., xn. El error cometido al evaluar f(x) mediante el polinomio de interpolación degrado n, Pn(x) viene dado por. f ( n 1) ( ) f ( x) Pn ( x) ( x x0 )( x x1 )  ( x xn ) (n 1)!Donde está en el menor intervalo que contiene x0, x1, ..., xn. Una consecuencia práctica de laforma del error es que hemos de tomar puntos próximos al punto x en que hemos de evaluar elpolinomio. Normalmente, comenzamos con un polinomio de grado bajo, por ejemplo, la recta quepase por los dos puntos más próximos a x, y vamos añadiendo puntos por orden de proximidad ycalculando polinomios de mayor grado, hasta alcanzar la precisión deseada.La derivada que aparece en la expresión anterior puede aproximarse a su vez por un cociente endiferencias, pues se tiene que f ( n 1) ( ) f [ x0 , x1 ,  , xn , xn 1 ] (n 1)!para cierto en el menor intervalo que contiene a x0, x1, ..., xn+1.Esta expresión sugiere una regla práctica para decidir qué polinomio interpola mejor n+1 puntos .Si en la tabla de diferencias divididas, los valores de la columna k, por ejemplo, sonaproximadamente iguales y los de la columna k+1 son aproximadamente cero, el polinomiointerpolador más adecuado es de grado k. La razón es que el error viene dado por diferenciasdivididas de la columna siguiente, k+1, que suponemos casi nulas.Los productos que aparecen en la fórmula del error nos indican que éste puede ser muy grande sihay muchos puntos o si x no está muy próximo a ellos. Cuando x no está en el menor intervalodeterminado por x0, x1, ..., xn, estamos extrapolando, en lugar de interpolando.