Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Interpolacion PDF
Interpolacion PDF
x x0 x1 ... xn
y y0 y1 ... yn
1. Los polinomios aproximan de manera uniforme a las funciones continuas (dada una
funcin cualquiera, definida y continua en un intervalo cerrado, existe un polinomio tan
prximo a la funcin como se desee).
Los polinomios de Taylor concentran toda la informacin en un solo punto x0 (lo que limita
su uso al caso de aproximaciones en puntos cercanos a x0). Normalmente resulta ms
conveniente usar mtodos que incluyan informacin en diversos puntos como es el caso de la
interpolacin.
Nota: Es fcil probar la existencia y unicidad de solucin viendo que la matriz de los
coeficientes del sistema lineal de n ecuaciones con n+1 incgnitas (los coeficientes del
polinomio interpolador) tiene determinante no nulo, por ser un determinante de
Vandermonde.
Aunque existe uno y slo un polinomio de interpolacin de grado menor o igual que n
asociado a los datos de partida, dicho polinomio puede expresarse de maneras distintas y se
llega a l a travs de distintos algoritmos, lo que se traduce en polinomios de interpolacin
con nombres diversos.
Se busca un polinomio de primer grado que interpole los valores de f en dos puntos:
Es el polinomio de grado uno (recta) que pasa por los dos puntos distintos (x0, y0) y (x1, y1).
x x1 x x0
y el polinomio P1(x) = L0(x) f(x0) + L1(x) f(x1) = . f(x0) + f(x1)
x0 x1 x1 x0
As, P1(x) = L0(x) f(x0) + L1(x)f(x1) es la nica funcin lineal que pasa por (x0, y0) y (x1, y1).
Generalizamos ahora y construimos un polinomio de grado mximo n que pasa por los n+1
puntos (x0, y0) y (x1, y1)., . . . , (xn, yn).
0 si i k
Lk ( xi ) =
1 si i = k
( x x0 )( x x1 )...( x x k 1 )( x x k +1 )...( x xn )
Lk ( x) =
( xk x0 )( xk x1 )...( xk x k 1 )( xk x k +1 )...( xk xn )
Teorema: Si x0, x1, . . . , xn son n+1 nmeros distintos entre s y si f es una funcin de la que
se conocen sus valores en dichos nmeros, entonces el polinomio interpolador de Lagrange
viene dado por la expresin:
n
P ( x) = L0 ( x) f ( x0 ) + ... + Ln ( x) f ( xn ) = Lk ( x) f ( xk )
k =0
n
( x xi )
donde, para cada k = 0, . . . , n, es Lk ( x) =
i = 0,i k ( xk xi )
Nota: El polinomio interpolador de Lagrange tiene ms importancia terica que prctica pues
es relativamente costoso de evaluar y ha de recalcularse completamente para aadir otro punto
ms a la interpolacin.
Calculamos una cota del error cometido al aproximar una funcin mediante el polinomio
interpolador de Lagrange.
f n +1) (c ( x ))
f ( x ) = P( x ) + ( x x 0 )( x x1 )...(x x n )
(n + 1)!
Nota : Si la derivada de orden n+1 es una funcin acotada en [a, b], entonces:
M
| f n +1) ( x ) | M | f ( x ) P( x ) | (b a ) n +1
(n + 1)!
Para disminuir el error puede acortarse la amplitud del intervalo (a, b) o bien aumentar el
nmero de puntos. Aunque, hay que tener cuidado pues, si los datos tienen errores (humanos,
de redondeo u experimentales), la exactitud disminuye al aumentar n.
Sean (x0, y0), (x1, y1), . . . , (xn, yn) los puntos de interpolacin, con abscisas distintas entre s.
Sea Pn(x) el polinomio interpolador de Lagrange que coincide con la funcin f en los
nmeros distintos x0, x1, . . . , xn. Pn(x) puede expresarse en la forma:
Pn(x) = a0 + a1 (x-x0) + a2 (x-x0) (x-x1) + . . . + an (x-x0) (x-x1) . . . (x-xn-1),
f ( x1 ) f ( x0 )
f(x1) = Pn(x1) = f(x0) + a1(x1-x0) a1 = = f [ x0 , x1 ]
x1 x0
... En general:
f [ x1 ,..., xk ] f [ x0 ,..., xk 1 ]
ak = f [ x0 ,..., xk ] = para k = 0, . . . , n.
xk x0
Pn(x) = f [x0] + f [x0, x1](x-x0) + f [x0, x1, x2] (x-x0)(x-x1) + . . . + f [x0, x1, . . . , xn](x-x0)(x-x1) . . .
n
(x-xn-1) = f [ x0 ] + f [ x0 , x1 ,..., xk ]( x x0 )( x x1 )...( x xk 1 )
k =1
x f(x) Dif. Divididas de orden1 Dif. Divididas de orden 2 Dif. Divididas de orden 3
x0 f [x0]
f [ x1 ] f [ x0 ]
f [ x0 , x1 ] =
x1 x0
f [ x1 , x 2 ] f [ x 0 , x1 ]
x1 f [x1] f [ x 0 , x1 , x 2 ] =
x2 x0
f [ x1 , x 2 , x 3 ] f [ x 0 , x1 , x 2 ]
f [ x 2 ] f [ x1 ] f [ x 0 , x1 , x 2 , x 3 ] =
f [ x1 , x 2 ] = x3 x0
x 2 x1
f [ x 2 , x 3 ] f [ x1 , x 2 ]
x2 f [x2] f [ x1 , x 2 , x 3 ] =
x 3 x1
f [x 3 ] f [x 2 ]
f [x 2 , x 3 ] =
x3 x 2
x3 f [x3]
Definicin
Sean x0, x1, . . . , xn , n+1 nmeros distintos de un intervalo [a,b] y m0, . . . , mn, enteros no
negativos. Sea f una funcin de clase Cm([a,b]) con m = mx(m0, . . . , mn). El polinomio
oscilante que aproxima la funcin f es el polinomio de menor grado que coincide con f y con
sus derivadas de orden menor o igual que mi en cada xi.
Unidad Docente de Matemticas de la ETSITGC
Asignatura: INFERENCIA ESTADSTICA y CLCULO NUMRICO APLICADOS A LA INGENIERA 5
TEMA 4: INTERPOLACIN POLINMICA
Casos particulares:
( x x0 ) 2 ...( x xn ) 2 2 n + 2)
f ( x) H 2 n +1 ( x) = f (c )
(2n + 2)!
Comentarios:
1.- Dados n+1 nodos distintos, el polinomio de Hermite es a lo sumo de grado 2n+1 ya que se
imponen 2n+1 condiciones (dos para cada nodo).
2.- El polinomio de Hermite coincide con f en los puntos x0, . . . , xn; adems, como su
primera derivada en esos puntos coincide con la primera derivada de f en ellos, las tangentes
al polinomio en esos puntos son las mismas que las de la funcin, y el polinomio tendr
entonces la misma forma que la funcin f en los puntos (xi, f(xi)).
Como z2i = z2i+1 = xi para cada i, no podemos definir f [z2i, z2i+1] a partir de la frmula de
diferencias divididas (se anulara el denominador); por ello, se toma:
Z0 = x0 f [z0] = f(x0)
Z4 = x2 f [z4] = f(x2)
b) S tiene derivada de orden k-1 continua en [x0, xn], es decir, S es de clase Ck-1([x0, xn]).
Spline de grado k = 0:
Los splines de grado cero son funciones constantes a trozos. Una forma explcita de presentar
un spline de grado cero es la siguiente:
c 0 x [x 0 , x 1 ]
c x [x 1 , x 2 ]
S( x ) = 1
...
c n 1 x [x n 1 , x n ]
x4
x0 x1 x2 x3
Spline de grado k = 1:
Los splines de grado uno son funciones lineales a trozos que se unen de manera continua:
S 0 (x ) = a 0 x + b 0 x [x 0 , x 1 ]
S (x ) = a x + b x [x 1 , x 2 ]
S( x ) = 1 1 1
...
S n 1 (x ) = a n 1 x + b n 1 x [x n 1 , x n ]
Por ser continua, los polinomios que la conforman se coinciden en los nodos, es decir,
x0 x1 x2 x3 x4
Spline de grado k:
En general, los splines de grado k son polinomios de grado menor o igual que k que se unen
de manera continua ellos y sus derivadas hasta el orden k-1.
x x0 x1 ... xn
y y0 y1 ... yn
se trata de construir un spline cbico para interpolar la tabla. Para ello hay que hallar los
coeficientes del polinomio cbico de cada subintervalo determinando simultneamente los
coeficientes en todos los subintervalos.
Si 1 (x i ) = y i y Si (x i ) = y i , i = 1, 2, , n-1
Anlogamente se obtienen otras n-1 condiciones imponiendo que la derivada segunda S sea
tambin continua.
Para construir un spline cbico interpolante a la funcin f en los nodos x0 < x1 < . . .< xn,
conviene expresar los polinomios cbicos de la forma:
ya que de esta forma el sistema de ecuaciones que resulta de imponer las condiciones de la
definicin es ms fcil de resolver.
1) Spline no nodo: resulta al imponer la condicin de que los polinomios en los dos
primeros intervalos sean iguales, S0 (x ) = S1 (x ) , y que los dos ltimos tambin,
S n 2 (x ) = S n 1 (x ) . Esto es equivalente a exigir que el spline tenga tercera derivada en
los nodos segundo y penltimo.
Cuando se conocen las derivadas segundas en los puntos inicial y final, o bien, se toman:
4) Un caso particular del spline natural: cuando se calculan las derivadas segundas en
los extremos interpolando el valor que toman en los dos nodos ms prximos, es decir,
haciendo:
h h
S(x0) = 1 + 0 S' ' (x1 ) 0 S' ' (x 2 )
h1 h1
h h
S(xn) = 1 + n 1 S' ' (x n 1 ) n 1 S' ' (x n 2 )
h n 2 h n 2
1) Spline no nodo:
ps = spline (x, y) (genera un registro llamado polinomio segmentario que, entre otros
campos, consta de uno que contiene los coeficientes de todos los polinomios del spline
en una matriz de dimensiones n x 4, ps.coefs).
La evaluacin del spline en puntos concretos se efecta con ppval, que es el anlogo
de polyval para polinomios: ppval (spline (x, y), xi).
Si slo interesan los valores que tome el spline en ciertos puntos xi, se utiliza la misma
funcin en la forma: yi = spline (x, y, xi).
2) Spline completo:
Se calcula con la misma funcin que se utiliza para el spline no nodo, aadiendo al
vector y dos valores, uno al principio y otro al final, que son los valores de la
derivada primera del spline en los puntos inicial y final, a=S(x0) y b=S(xn),
respectivamente. Sintaxis: spline (x, [a y b]).
3) El clculo de los coeficientes del spline cbico natural, se realiza en dos pasos:
3.1.- Primero se resuelve un sistema tridiagonal de n-1 ecuaciones con n-1 incgnitas,
que son las derivadas segundas del spline en los nodos, S(xi) = ri,, i = 1, , n-1.
h 0 + h1 h1
0 0 ... 0 0
3 6 h
h1 + h 2 e1 e 0 0 r0
h1 h2
0 ... 0 0 6
6 3 6 r1 e 2 e1
h2 h2 + h3 h3
0 ... 0 0 r
2 = e e
3 2
6 3 6 ... ...
... ... ... ... ... ... ...
0 h n 3 h n 3 + h n 2 h n 2 rn 1 e n 2 e n 3
0 0 0
6 3 6 e e h n 1 r
h n 2 h n 2 + h n 1
n 1 n 2
6
n
0 0 0 0 0
6 3
y i +1 y i
siendo h i = x i +1 x i , e i = , i = 0, , n-1.
x i +1 x i
3.2.- A continuacin se hallan los coeficientes del spline a partir de las derivadas
segundas en los nodos.
Llamando S i (x ) = a i (x x i ) + b i (x x i ) + c i (x x i ) + d i , x [x i , x i +1 ] ,
3 2
ri +1 ri r y yi ri +1 ri
ai = , b i = i , c i = i +1 + h i , d i = y i .
6h i 2 hi 6 3
4) Para el caso particular del spline natural con S(x0) y S(xn) calculadas tal como se
indica en el punto 4) de ms arriba, Matlab dispone de la funcin interp1, con la
sintaxis: yi = interp1 (x, y, xi, spline).
Sean x e y los vectores que contienen respectivamente las abscisas y las ordenadas de los
puntos a interpolar.
1) polyfit (x, y, n), polinomio de interpolacin de grado n que se ajusta a n+1 nodos
dados.
2) yi = interp1 (x, y, xi), para interpolacin con un spline lineal (aplica interpolacin
lineal con un polinomio de grado 1 en cada subintervalo).