Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema5 PDF
Tema5 PDF
TEMA 5: INTERPOLACIN
5.1.- INTRODUCCIN
Supongamos que conocemos N+1 puntos (x0,y0), (x1,y1), ..., (xN,yN), de la curva
y = f(x), donde las abscisas xk se distribuyen en un intervalo [a,b] de manera que
a x0 x1 < < xN b e yk = f(xk)
Construiremos un polinomio P(x) de grado N que pase por estos N+1 puntos. El
polinomio P(x) puede luego usarse como una aproximacin a f(x) en todo el intervalo
[a,b]; no obstante, si queremos conocer la funcin error E(x) = f(x) P(x), entonces s
necesitaremos conocer f (N+1)(x) o bien una cota de su tamao como
M max f
a x b
o ( N 1)
( x) t
Existen funciones especiales y = f(x), que aparecen en anlisis estadsticos o
cientficos, para las que slo se dispone de una tabla de valores; es decir, slo conocemos
N+1 puntos (xk,yk) y es necesario un mtodo para aproximar f(x) en abscisas que no estn
tabuladas. Si el error de los valores tabulados es significativo, entonces es mejor usar los
mtodos de aproximacin. Si, por el contrario, los puntos (xk,yk) tienen un grado alto de
precisin, entonces podemos considerar el polinomio y = P(x) que pasa por todos ellos
como una buena aproximacin de f (x).
Cuando x0 < x < xN, la aproximacin P(x) se conoce como valor interpolado; si se
tiene x < x0 o bien x > xN, entonces P(x) se conoce como valor extrapolado. Los
polinomios se utilizan para disear algoritmos de aproximacin de funciones, para
derivar e integrar numricamente y para dibujar, utilizando un ordenador, curvas que
deben pasar por puntos especificados de antemano.
Dados N+1 puntos x0, x1, ..., xN pertenecientes al intervalo [a,b], el polinomio de
interpolacin de grado menor o igual que N que pasa por esos puntos es nico.
Recordemos brevemente que la forma eficiente de evaluar un polinomio P(x):
P ( x ) a N x N a N 1 x N 1 a2 x 2 a1 x a0
es el mtodo de Horner:
P ( x ) ( (a N x a N 1 ) x a1 ) x a0
53
Tema 5: Interpolacin .
y
P1
f (x)
P0
x
Figura 1.
El matemtico francs Joseph Louis Lagrange lleg a este mismo polinomio
usando un mtodo ligeramente distinto. Si escribimos
x x1 x x0
y P1 ( x ) y0 y1
x0 x1 x1 x0
entonces cada uno de los sumandos del miembro derecho de esta relacin es un trmino
lineal, por lo que su suma ser un polinomio de grado menor o igual que uno.
Denotemos los cocientes
x x1 x x0
L1, 0 ( x ) y L1,1 ( x )
x0 x1 x1 x0
Un sencillo clculo muestra que L1,0(x0) = 1, L1,0(x1) = 0, L1,1(x0) = 0 y L1,1(x1) = 1;
es decir, el polinomio P1(x) tambin pasa por los dos puntos dados:
P1 ( x0 ) y0 y1 0 y0 y P1 ( x1 ) y0 0 y1 y1
Los trminos L1,0(x) y L1,1(x) definidos anteriormente se llaman polinomios
coeficientes de Lagrange para los nodos x0 y x1. Usando esta notacin, podemos
escribir P1(x) como una suma
P1 ( x ) y k L1, k ( x )
1
k 0
Cuando las ordenadas yk vienen dadas por yk = f(xk), el proceso de utilizar P1(x)
para aproximar f(x) en el intervalo [x0,x1] se conoce con el nombre de interpolacin
lineal.
Generalizando el polinomio PN(x) de grado menor o igual que N que pasa por N+1
puntos (x0,y0), (x1,y1), ..., (xN,yN) viene dado por:
PN ( x ) yk LN ,k ( x )
N
k 0
donde LN,k es el polinomio coeficiente de Lagrange para los nodos x0, x1, ..., xN definido
por
( x x0 ) ( x x k 1 )( x x k 1 ) ( x x N )
L N ,k ( x )
( x k x0 ) ( xk x k 1 )( xk x k 1 ) ( x k x N )
que multiplica a yk en el sumatorio y se ha de anular en todos los nodos excepto en xk
donde toma el valor 1:
LN,k(xj) = 1 si j = k y LN,k(xj) = 0 si j k
Resulta cmodo introducir la notacin compacta para el producto y escribir:
54
Tema 5: Interpolacin .
N N
L N ,k ( x ) ( x x j ) (x k xj)
j 0 j 0
jk j k
f ( x ) PN ( x ) f ( xk ) LN ,k ( x )
N
k 0
55
Tema 5: Interpolacin .
a2
FG f ( x ) f ( x ) f ( x ) f ( x ) IJ ( x2 x0 )
H x x K
2 1 1 0
2 1 x x 1 0
56
Tema 5: Interpolacin .
f [ x k 1 , x k ] f [ x k 2 , xk 1 ]
la diferencia dividida de segundo orden: f [ x k 2 , x k 1 , x k ]
x k xk 2
Las diferencias divididas de orden superior se forman de acuerdo con la siguiente
frmula de recursin:
f [ x k j 1 , , x k ] f [ x k j , , x k 1 ]
f [ x k j , x k j 1 , ..., xk ]
xk x k j
que se utiliza para calcular la Tabla de Diferencias Divididas:
x0 f ( x0 )
f ( x1 ) f ( x 0 )
f x 0 x1
x1 x 0
f x1 x 2 f x 0 x1
x1 f ( x1 ) f x 0 x1 x 2
x2 x0
f ( x 2 ) f ( x1 )
f x1 x 2
x 2 x1
f x 2 x 3 f x1x 2
x2 f ( x2 ) f x1 x 2 x 3
x 3 x1
f ( x3 ) f ( x2 )
f x2 x3
x3 x2
x3 f ( x3 )
TABLA DE DIFERENCIAS DIVIDIDAS
Con esta notacin el coeficiente a2 del polinomio P2(x) se puede expresar como:
f [ x1 , x2 ] f [ x0 , x1 ]
a2 f x0 , x1 , x2
x2 x0
Teorema. (Polinomio de interpolacin de Newton).
Supongamos que x0, x1, ..., xN son N+1 nmeros distintos en [a,b]. Entonces existe un
nico polinomio PN(x) de grado menor o igual que N tal que
f(xj) = PN(xj) para j = 0, 1, ..., N
La forma de Newton de este polinomio interpolador:
PN ( x ) a0 a1 ( x x0 ) a N ( x x0 )( x x1 ) ( x x N 1 )
siendo ak f [ x0 , x1 , , x k ] para k 0, 1, , N
As: P0(x) = f (x0)
P1(x) = f (x0) + f [x0,x1](xx0)
P2(x) = f (x0) + f [x0,x1](xx0) + f [x0,x1,x2](xx0)(xx1)
PN(x) = f (x0) + f [x0,x1](xx0) + +f [x0,x1,..,xN](xx0)(x-xN1)
En este polinomio los nodos se han colocado en el orden x0, x1, ..., xN.
Si se hubieran colocado los nodos en otro orden, por ejemplo xN, xN1, ..., x1, x0, el
polinomio obtenido habra sido:
Pn ( x ) f ( xn ) f xn xn 1 ( x xn ) f xn xn 1 x0 ( x xn ) ( x x1 )
57
Tema 5: Interpolacin .
siendo z (a,b).
Esta expresin permite estimar el error del polinomio de interpolacin de grado N
cuando no se conoce la funcin, siempre que sea posible aadir un nodo ms y obtener la
diferencia dividida de orden N+1.
58
Tema 5: Interpolacin .
Esta diferencia finita es la de primer orden. Del mismo modo se puede definir la de
segundo orden:
2 f ( x0 ) f ( x1 ) f ( x0 ) f ( x2 ) 2 f ( x1 ) f ( x0 )
En general: k f ( x0 ) k 1 f ( x1 ) k 1 f ( x0 )
La relacin entre las diferencias finitas progresivas y las diferencias divididas se
obtiene:
f ( x1 ) f ( x0 ) f ( x0 )
f x0 x1 f ( x0 ) h f x0 x1
x0 x1 h
f x1 x2 f x0 x1 f ( x1 ) f ( x0 )
f x0 x1 x2 2 f ( x0 ) 2h 2 f x0 x1 x2
x2 x0 2h2
En general: n f ( x0 ) n ! h n f x0 x1 xn
Definicin: Diferencia finita regresiva.
Se define como diferencia finita regresiva de f(x) en xn, y se representa por f(xn), a la
diferencia:
f ( xn ) f ( xn ) f ( xn1 )
Esta es la diferencia finita regresiva de primer orden. La de segundo orden ser:
2 f ( xn ) f ( xn ) f ( xn 1 ) f ( xn ) 2 f ( xn 1 ) f ( xn 2 )
y la de orden k:
k f ( xn ) k 1 f ( xn ) k 1 f ( xn 1 )
Ambas diferencias finitas estn relacionadas entre s:
f ( x0 ) f ( x1 ) f ( x0 ) f ( x1 )
2 f ( x0 ) f ( x2 ) 2 f ( x1 ) f ( x0 ) 2 f ( x2 )
En general:
k f ( x0 ) k f ( x0 k ) k ! h k f x k x k 1 x0
59
Tema 5: Interpolacin .
f ( x0 ) 2 f ( x0 )
PN ( x0 th) q N (t ) f ( x0 ) th th(t 1)h
h 2 ! h2
n ( x0 )
th(t 1)h (t n 1)h
n !h n
2 f ( x0 ) n f ( x0 )
0 f ( x0 ) f ( x0 )t t (t 1) t (t 1) t (t n 1)
2! n!
n
k f ( x0 )
t (t 1) (t k 1) k f ( x0 )
n
t FG IJ
k 0 k! k 0 k HK
Las diferencias finitas progresivas en x0 se obtienen formando la siguiente tabla y
tomando los elementos de la diagonal descendente:
f ( x0 )
f ( x 0 )
f ( x1 ) 2 f ( x 0 )
f ( x1 ) 3 f ( x 0 )
f ( x2 ) 2 f ( x1 )
f ( x 2 )
f ( x3 )
TABLA DE DIFERENCIAS FINITAS PROGRESIVAS
Si se hubiese tomado el polinomio de Newton con diferencias divididas tomando
los nodos en el orden xn, xn-1, ..., x0, entonces el polinomio resultante sera:
PN ( x ) f ( xn ) f xn xn1 ( x xn ) f xn xn 1 x0 ( x xn )( x x1 )
Haciendo el cambio de variable: x = xn + th con t(n,0):
x xn th; x xn1 (t 1)h, x xn 2 (t 2)h
y teniendo en cuenta que
f ( x n ) 2 f ( xn )
f xn xn 1 ; f xn x n 1 x n 1 ;
h 2 !h 2
se obtiene:
f ( xn ) 2 f ( xn )
PN ( x ) PN ( xn th ) qn ( t ) f ( xn ) t h t h ( t 1) h
h 2 ! h2
n f ( xn ) f ( xn ) 2 f ( xn )
t h ( t 1) h ( t n 1) h f ( xn ) t t ( t 1)
n! 1! 2!
n f ( xn )
t ( t 1) ( t n 1) n f ( xn )
n
FG
t k 1 IJ
n! k 0 H k K
Las diferencias finitas regresivas en xn se obtienen formando la tabla
correspondiente, y tomando los elementos de la diagonal ascendente.
Las tablas de diferencias finitas progresivas y regresivas son la misma. Solo cambia
la notacin. En la tabla de diferencias finitas progresivas todo est referenciado a x0
mientras que en la tabla de diferencias finitas regresivas todo est referenciado a xn.
60
Tema 5: Interpolacin .
Figura 2
Para resolver este problema se emplea la interpolacin polinomial a trozos, que
consiste en ir definiendo polinomios de grado bajo que interpolan a la funcin en dos
nodos consecutivos. As, Sk(x) es el polinomio que interpola a f en dos nodos
consecutivos (xk,yk) y (xk+1,yk+1). El conjunto de funciones {Sk(x)} forma la curva
61
Tema 5: Interpolacin .
62
Tema 5: Interpolacin .
63
Tema 5: Interpolacin .
64
Tema 5: Interpolacin .
65
Tema 5: Interpolacin .
66
Tema 5: Interpolacin .
x y y 2y 3y 4y 5y
0
5 0.0013
0.0888
10 0.0002
0.0002
15
0.0017
20
25 0.4663
22. a) Completar la tabla de diferencias para los siguientes datos:
x 0.1 0.3 0.5 0.7 0.9 1.1 1.3
y 0.003 0.067 0.148 0.248 0.370 0.518 0.697
b) Mediante un polinomio cbico de interpolacin obtener y(0.58).
Sol.: y(0.58) 0.185616
23. Utilizando diferencias progresivas, encontrar un valor aproximado de y(23) usando
los datos de la siguiente tabla:
xi 10 20 30 40 50 60
yi 0.17365 0.34202 0.50000 0.64279 0.76604 0.86603
a) A partir de un polinomio de primer grado.
b) A partir de un polinomio de segundo grado.
c) A partir de un polinomio de tercer grado.
Sol.: a) y(23) 0.389414; b) y(23) 0.391009; c) y(23) 0.390750
24. Si se denota por P2(x) el polinomio de interpolacin de la funcin f(x) = ex en los
nodos 1, 0.75 y 0.5, y por R2(x) el error debido a la aproximacin de y = ex mediante
su polinomio de interpolacin, obtener una cota mxima del error cometido sabiendo que
g (fn (1)!)
n 1
Rn ( x ) x x1
n
i 0
b
Sol.: 0.6080 10-3
25. Dada la siguiente tabla de puntos pertenecientes al grfico de la funcin f(x):
xk 3 4 5 6
f(xk) 6 24 60 120
a) Construir la tabla de diferencias divididas.
b) Calcular un polinomio de interpolacin de segundo grado mediante la frmula
de Newton que sirva para obtener un valor aproximado de la funcin para x = 4.5. Hacer
una estimacin del error cometido con dicha aproximacin.
c) Construir la tabla de diferencias finitas progresivas.
d) Calcular el valor aproximado de f (4.5) utilizando la frmula de Newton
progresiva
67
Tema 5: Interpolacin .
68
Tema 5: Interpolacin .
xk f [xk] f[ , ] f[ , , ] f[ , , , ] f[ , , , , ]
0.0 1.0000000
1.0 0.5403023 0.4596977
2.0 0.4161468 0.9564491 0.2483757
3.0 0.9899925 0.5738457 0.1913017 0.1465591
4.0 0.6536436 0.3363489 0.4550973 0.0879319 0.0146568
30. Dada la siguiente tabla correspondiente a la funcin f (x) = e , se desea obtener
x
69