You are on page 1of 22

Tema 5: InterpolaciÛn .

TEMA 5: INTERPOLACI”N

5.1.- INTRODUCCI”N
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 aproximaciÛn a f(x) en todo el intervalo
[a,b]; no obstante, si queremos conocer la funciÛn error E(x) = f(x) ñ P(x), entonces sÌ
necesitaremos conocer f (N+1)(x) o bien una cota de su tamaÒo como
M  max f
a  x b
o ( N 1)
( x) t
Existen funciones especiales y = f(x), que aparecen en an·lisis estadÌsticos o
cientÌficos, para las que sÛlo se dispone de una tabla de valores; es decir, sÛlo conocemos
N+1 puntos (xk,yk) y es necesario un mÈtodo para aproximar f(x) en abscisas que no est·n
tabuladas. Si el error de los valores tabulados es significativo, entonces es mejor usar los
mÈtodos de aproximaciÛn. Si, por el contrario, los puntos (xk,yk) tienen un grado alto de
precisiÛn, entonces podemos considerar el polinomio y = P(x) que pasa por todos ellos
como una buena aproximaciÛn de f (x).
Cuando x0 < x < xN, la aproximaciÛn 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 diseÒar algoritmos de aproximaciÛn de funciones, para
derivar e integrar numÈricamente 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
interpolaciÛn 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 mÈtodo de Horner:

P( x)  ( (a N x  a N 1 ) x  a1 ) x  a0

5.2.- POLINOMIO DE INTERPOLACI”N DE LAGRANGE


InterpolaciÛn significa estimar el valor desconocido de una funciÛn en un punto,
tomando una medida ponderada de sus valores conocidos en puntos cercanos al dado.
En la interpolaciÛn lineal se utiliza un segmento rectilÌneo que pasa por dos puntos que
se conocen. La pendiente de la recta que pasa por dos puntos (x0,y0) y (x1,y1) viene dada
por m = (y1-y0) / (x1-x0), y la ecuaciÛn de la misma es:
x x0
y  P( x)  y  ( y  y )

x x
0 1 0

1 0

53
53
Tema 5: InterpolaciÛn .

y
P1
f (x)

P0
x

Figura 1.
El matem·tico francÈs Joseph Louis Lagrange llegÛ a este mismo polinomio
usando un mÈtodo ligeramente distinto. Si escribimos
x x1 x x0
y  P1 ( x)  y0  y1
x x x x
0 1 1 0

entonces cada uno de los sumandos del miembro derecho de esta relaciÛn es un tÈrmino
lineal, por lo que su suma ser· un polinomio de grado menor o igual que uno.
Denotemos los cocientes
x x1 x x0
L x L x
1,0 ( )  y 1,1 ( ) 
x x x x
0 1 1 0

Un sencillo c·lculo 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) tambiÈn pasa por los dos puntos dados:
P1 ( x0 )  y0  y1  0  y0 y P1 ( x1 )  y0  0  y1  y1

Los tÈrminos L1,0(x) y L1,1(x) definidos anteriormente se llaman polinomios


coeficientes de Lagrange para los nodos x0 y x1. Usando esta notaciÛn, podemos
escribir P1(x) como una suma
1
P1 ( x)   y k L1,k ( x)
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 interpolaciÛn
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:
N
PN ( x)   yk LN ,k ( x)
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 ) ( x k  x k 1 )( xk  xk 1 ) ( x k  x N )

que multiplica a yk en el sumatorio y se ha de anular en todos los nodos excepto en xk


54
54
Tema 5: InterpolaciÛn .
donde toma el valor 1:
LN,k(xj) = 1 si j = k y LN,k(xj) = 0 si j  k
Resulta cÛmodo introducir la notaciÛn compacta para el producto y escribir:

55
55
Tema 5: InterpolaciÛn .

N N
LN ,k ( x)   ( x  x j )  (x k
 xj)
j0 j 0
jk j k

5.3.- T…RMINOS Y COTAS DEL ERROR


Es importante entender la naturaleza del tÈrmino del error que se comete cuando se
utiliza un polinomio de interpolaciÛn para aproximar una funciÛn f(x).
Teorema. Supongamos que f  CN+1[a,b] y que x0, x1, ..., xN  [a,b] son N+1 nodos de
interpolaciÛn. Si x  [a,b], entonces
f(x) = PN(x) + EN(x)
donde PN(x) es el polinomio que interpola a f(x) en los N+1 nodos y que podemos usar
para aproximar f(x):
N
f ( x)  PN ( x)   f ( xk ) LN ,k ( x)
k 0

y EN(x)el tÈrmino del error que se puede escribir como


( x x 0 )( x x1 ) ( x x N ) f ( N 1)
( )
E N ( x) 
( N  1)!
para alg˙n valor  = (x) del intervalo [a,b].

5.4.- POLINOMIO DE INTERPOLACI”N DE NEWTON


Hay ocasiones en las que resulta ˙til construir varios polinomios aproximantes P1(x),
P2(x), ..., PN(x) y, despuÈs, elegir el m·s adecuado a nuestras necesidades. Si usamos
los polinomios de interpolaciÛn de Lagrange, uno de los inconvenientes es que no se
pueden utilizar los c·lculos realizados en la construcciÛn de PN-1(x) para la de PN(x);
cada polinomio debe construirse individualmente y para calcular polinomios de grado
elevado es necesario hacer muchas operaciones. Vamos a seguir ahora un camino de
construcciÛn distinto, en el cual los polinomios de interpolaciÛn, que se llamar·n de
Newton, se calculan mediante un esquema recursivo:
P1 ( x)  a0  a1 ( x  x0 )
P2 ( x)  a0  a1 ( x  x0 )  a2 ( x  x0 )( x  x1 )
P3 ( x)  a0  a1 ( x  x0 )  a2 ( x  x0 )( x  x1 )  a3 ( x  x0 )( x  x1 )( x  x2 )

PN ( x)  a0  a1 ( x  x0 )  a2 ( x  x0 )( x  x1 ) 
  a N ( x  x0 )( x  x1 )( x  x2 ) ( x  x N 1 )
El polinomio PN(x) se obtiene a partir de PN-1(x) usando la recurrencia:
PN  PN 1 ( x)  a N ( x  x0 )( x  x1 )( x  x2 ) ( x  x N 1 )
El polinomio PN(x) calculado asÌ es el polinomio de interpolaciÛn de Newton.

56
56
Tema 5: InterpolaciÛn .

5.4.1.- MultiplicaciÛn encajada


Para evaluar el polinomio PN(x), lo m·s eficiente (menos operaciones) es usar el
esquema de multiplicaciones encajadas. Para P3(x), por ejemplo:
b
P3 ( x)  (a 3 ( x  x2 )  a2 )( x  x1 )  a1 ( x  x0 )  a0 g
de manera que, si deseamos evaluar P3(x) para un valor dado de x, entonces operamos
desde dentro hacia afuera formando sucesivamente las cantidades:
S3  a3
S2  S3 ( x  x2 )  a 2
S1  S2 ( x  x1 )  a1
S0  S1 ( x  x0 )  a0
Esta ˙ltima cantidad S0 es P3(x).

5.4.2.- C·lculo del Polinomio de InterpolaciÛn de Newton


Supongamos que queremos encontrar los coeficientes ak de todos los polinomios
P1(x), P2(x), ..., PN(x) que nos sirven para interpolar una funciÛn dada f(x). Entonces cada
Pk(x) es el polinomio de Newton que tiene como nodos x0, x1, ..., xk. Para el polinomio
P1(x), los coeficientes a0 y a1 tienen un significado familiar:
f ( x0 )  P1 ( x0 )  a0  a1 ( x0  x0 )  a0
Por tanto: a0  f ( x0 )

f ( x1 )  P1 ( x1 )  a0  a1 ( x1  x0 )  f ( x0 )  a1 ( x1  x0 )
f ( x1 )  f ( x 0 )
y despejando a1: a 
x1  x0
1

Es decir, a1 es la pendiente de la recta que pasa por los puntos (x0,f(x0)) y (x1,f(x1)).
Los coeficientes a0 y a1 son los mismos para P1(x) y P2(x). Para continuar, ahora
evaluamos la expresiÛn en el nodo x2 y obtenemos:
f ( x2 )  P2 ( x2 )  a0  a1 ( x2  x0 )  a2 ( x2  x0 )( x2  x1 )
f ( x2 ) a0 a1 ( x2 x0 )
de donde se obtiene a 

( x  x )( x  x )
2

2 0 2 1

que tambiÈn se puede escribir como x x


F f (2x )  f (1x f ( x1 )  f ( x0 ) I
)
a
 (  )
x x
2 2 0

2 1
x1  x0

El c·lculo de los coeficientes se puede realizar de forma m·s r·pida y sencilla


utilizando la notaciÛn de las diferencias divididas.
DefiniciÛn: Diferencias divididas.
57
57
Tema 5: InterpolaciÛn .
Las diferencias divididas de una funciÛn f(x) se definen como:
la diferencia dividida de orden cero: f [ x k ]  f ( xk )
f [ xk ]  f [ xk 1 ]
la diferencia dividida de primer orden: f [ x , x ] 
k 1 k
xk  x k 1

58
58
Tema 5: InterpolaciÛn .

f [ x k 1 , xk ]  f [ xk 2 , xk 1 ]
la diferencia dividida de segundo orden: f [ x ,x ,x ]
k 2 k 1
xk  xk 2
k

Las diferencias divididas de orden superior se forman de acuerdo con la siguiente


fÛrmula de recursiÛn:
f [x , , x ] f [x , , x ]
k j 1 k j k 1
f [x , x , ..., x ]  k

k j k  j 1 k
xk  x k  j

que se utiliza para calcular la Tabla de Diferencias Divididas:


x0 f ( x0 )
f ( x1 )  f ( x 0 )
 f x x 
x1  x 0
0 1

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 xx 
x 2  x1
1 2

f x 2 x 3 f x 1 x 2
x2 f ( x2 )  f x1 x 2 x 3 
x 3  x1
f (x )  f (x )
 f x x  3 2

x3  x2
2 3

x3 f ( x3 )

TABLA DE DIFERENCIAS DIVIDIDAS


Con esta notaciÛn el coeficiente a2 del polinomio P2(x) se puede expresar como:
f [ x1 , x2 ] f [ x0 , x1 ] 
a  2  f x ,x ,x
x2  x0
0 1 2

Teorema. (Polinomio de interpolaciÛn de Newton).


Supongamos que x0, x1, ..., xN son N+1 n˙meros 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](xñx0)
P2(x) = f (x0) + f [x0,x1](xñx0) + f [x0,x1,x2](xñx0)(xñx1)
59
59
Tema 5: InterpolaciÛn .
%%%
PN(x) = f (x0) + f [x0,x1](xñx0) + %%% +f [x0,x1,..,xN](xñx0)%%%(x-xNñ1)
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, xNñ1, ..., x1, x0, el
polinomio obtenido habrÌa sido:
Pn ( x)  f ( xn )  f xn xn 1 ( x  xn )  f xn xn 1 x0 ( x  xn ) ( x  x1 )

60
60
Tema 5: InterpolaciÛn .

pero este polinomio tiene que coincidir con el anterior, luego:


f [ x0 , x1 , ... , xn ]  f [ xn , xn1 , ... , x0 ]
es decir, la diferencia dividida es independiente del orden en que se tomen los nodos.
En resumen las diferencias divididas tienen las siguientes propiedades:
1™.- La diferencia dividida de orden K es el coeficiente de xk en Pk(x).
2™.- La diferencia dividida de cualquier orden es independiente del orden en que se
tomen los nodos.
3P.- La diferencia dividida de orden K se calcula recursivamente a partir de dos
diferencias divididas de orden Kñ1.

5.4.3.- RelaciÛn entre la diferencia dividida de orden n y la derivada


enÈsima de f. TÈrmino de error.
Teorema.
Sean f  Cn[a,b] y x0, x1, ..., xn n+1 puntos distintos en [a,b]. Entonces   (a,b) tal
que f [x0, x1, ..., xn] = f n)() / n!
DemostraciÛn. Sea g(x) = f(x) ñ Pn(x), siendo Pn(x) el polinomio de interpolaciÛn de
Newton de f(x), en los n+1 puntos, es decir,
g( x)  f ( x)  Pn ( x)  f ( x)  ( f ( x0 )  f [ x0 , x1 ]( x  x0 )  

 f [ x0 , x1 , , xn ]( x  x0 )( x  x1 ) ( x  x n1 ))
g(x) se anula en x0, x1, ..., xn, y aplicando el teorema de Rolle generalizado existir·
un   (a,b) tal que gn)() = 0, es decir,
f n) ( )
f n ( )  PNn ) ( )  0  f n ) ( )  n! f x 0 x1 x n  f x 0 x1 x n 
n!

Utilizando esta relaciÛn, el tÈrmino de error:


f n1) ( ) n
 ( x  x )  f x , x , , x , z
n
E ( x)   (x  x )
(n 1)!
N i 0 1 n i
i0 i0

siendo z  (a,b).

Esta expresiÛn permite estimar el error del polinomio de interpolaciÛn de grado N


cuando no se conoce la funciÛn, siempre que sea posible aÒadir un nodo m·s y obtener la
diferencia dividida de orden N+1.

5.5.- INTERPOLACI”N CON NODOS EQUIDISTANTES


El c·lculo del polinomio de interpolaciÛn se simplifica cuando los nodos est·n
igualmente espaciados, esto es, xi+1 ñ xi = h (i = 0, 1, ..., nñ1). En este caso el polinomio
se calcula utilizando el concepto de diferencia finita.
DefiniciÛn: Diferencia finita progresiva.
Se define como diferencia finita progresiva de una funciÛn f(x) en un punto x0, y se
representa por f (x0) a la diferencia:
f (x0) = f(x1) ñ f(x0)
61
61
Tema 5: InterpolaciÛn .

Esta diferencia finita es la de primer orden. Del mismo modo se puede definir la de
segundo orden:
2 f ( x )  f ( x )  f ( x )  f ( x )  2 f ( x )  f ( x )
0 1 0 2 1 0
k 1 k 1
En general:  f ( x0 )  
k
f ( x1 )   f ( x0 )
La relaciÛn entre las diferencias finitas progresivas y las diferencias divididas se
obtiene:
f ( x1 )  f ( x0 ) f ( x0 )
f xx    f ( x )  h  f x x

x0  x1
0 1 0 0 1
h

f x1 x2 f x0 x1  f ( x1 ) f ( x0 )
f x0 x1 x2    2 f ( x0 )  2h  f x0 x1 x2
2

x2  x0 2h 2

En general: n f ( x0 )  n!h n f x0 x1 x n
DefiniciÛn: 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 ( xn1 )

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 est·n relacionadas entre sÌ:


f ( x0 )  f ( x1 )  f ( x0 )  f ( x1 )
2 f ( x )  f ( x )  2 f ( x )  f ( x )   2 f ( x )
0 2 1 0 2

En general:

k f ( x 0 )   k f ( x 0 k )  k !h k f x k x k 1 x0

5.6.- F”RMULAS DE NEWTON PROGRESIVA Y REGRESIVA


A partir de la fÛrmula de Newton con diferencias divididas y de la relaciÛn entre
estas ˙ltimas y las diferencias finitas progresivas se tiene:
PN ( x)  f ( x0 )  f x0 x1 ( x  x0 )  f x0 x1 x2 ( x  x0 )( x  x1 )

 f x0 x1 xn ( x  x0 ) ( x  xn 1 )
Haciendo el cambio de variable x = x0 + t?h con t(0,n):
x  x1  (t  1)h ; x  x2  (t  2)h ; ; x  xn 1  (t  n  1)h
62
62
Tema 5: InterpolaciÛn .

 f ( x0 )  2 f ( x0 )

P ( x  th)  q (t )  f ( x )  th  th(t  1)h 
N 0 N 0
h 2!h 2
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

n
f ( x )
k
t (t  1) (t  k  1)  f (x )
t FI
 0
 k
0 GH JK
k 0 k! k 0 k

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 ( x 0 )
2
f ( x1 )
 f ( x1 )  3 f ( x 0 )
  f ( x1 )
2
f ( x2 )
 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 serÌa:
PN ( x)  f ( xn )  f xn xn1 ( x  xn )  f xn xn 1 x0 ( x  xn )( x  x1 )
Haciendo el cambio de variable: x = xn + t?h con t(ñn,0):
x  xn  th; x  xn1  (t  1)h, x  xn 2  (t  2)h
y teniendo en cuenta que
2
f ( xn ) f ( xn )
f xn xn 1  ; f xn x n1 x n1  ;
h 2!h 2
se obtiene:

f ( xn ) 2 f ( x n )
P ( x)  P ( x  th)  q (t )  f ( x )  t h  t  h  (t  1)  h  
N N n n n
h 2 !h 2
n 2

 f ( x n ) f ( xn )  f ( x n )


 t  h  (t  1)  h (t  n  1)  h  f ( x )  t t (t  1)  
n
n! 1! 2!
 f ( x )
t t t n f x
F t  k 1 I
n
 n
(
60
60
Tema 5: InterpolaciÛn .
n! n
 1) (   1)    n ( n )
k 
k
0

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 notaciÛn. 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.

61
61
Tema 5: InterpolaciÛn .

Si el punto en el que se quiere interpolar est· prÛximo a x0 es conveniente usar


diferencias finitas progresivas y si est· prÛximo a xn diferencias finitas regresivas.
Si se consideran todos los nodos el polinomio de interpolaciÛn calculado con
diferencias finitas progresivas es el mismo que el calculado con diferencias finitas
regresivas.
f ( x0 )
 f ( x 1 )
f ( x1 )   2 f ( x2 )
3
 f ( x 2 )   f ( x3 )
f ( x2 )   2 f ( x3 )   4 f (x4 )
3

 f ( x 3 )   f ( x4 )
f ( x3 )   f ( x4 )
2

 f ( x 4 )
f ( x4 )

TABLA DE DIFERENCIAS FINITAS REGRESIVAS

5.7.- INTERPOLACI”N POLINOMIAL A TROZOS


Se podrÌa suponer que el error cometido al aproximar una funciÛn mediante el
polinomio de interpolaciÛn disminuye a medida que aumenta el grado de dicho
polinomio; sin embargo esto no es asÌ. Un polinomio de grado N puede tener Nñ1
extremos relativos y por lo tanto su gr·fica puede presentar oscilaciones importantes.
Este fenÛmeno se conoce como efecto Runge. En la gr·fica de la figura se representa la
funciÛn f (x) = 1/(1+x2) y el polinomio de grado 10 que interpola a f en los puntos ñ5, ñ
4, ..., 0, ..., 4, 5.

Figura 2
Para resolver este problema se emplea la interpolaciÛn polinomial a trozos, que
consiste en ir definiendo polinomios de grado bajo que interpolan a la funciÛn 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
62
62
Tema 5: InterpolaciÛn .

polinomial a trozos o spline. El ajuste de una curva polinomial a trozos a un conjunto de


puntos dados tiene aplicaciones en los campos del diseÒo asistido por ordenador,
fabricaciÛn asistida por ordenador y sistemas de generaciÛn de gr·ficas mediante
ordenador.
Lo m·s sencillo serÌa unir los nodos mediante segmentos rectilÌneos, pero la gr·fica
de esta funciÛn no es suave, es decir, la derivada primera no es continua en los nodos.
TambiÈn se podrÌan utilizar polinomios de segundo grado, pero con Èstos no se puede
asegurar la continuidad de la derivada segunda. Los polinomios m·s utilizados son los
c˙bicos. Con estos polinomios se consigue que la funciÛn S(x) (conjunto de polinomios
de grado 3, uno diferente entre cada dos nodos consecutivos) interpole al conjunto de
datos y tenga derivadas primera y segunda continuas en el intervalo completo [x0,xN]. La
continuidad de S''(x) significa que el radio de curvatura est· definido en todos los puntos
del intervalo.
DefiniciÛn: Spline c˙bica interpoladora.
Supongamos que se tienen como datos N+1 puntos (xk,yk) (con k = 0, ..., n) cuyas
abscisas est·n ordenadas de forma creciente. Se dice que una funciÛn S(x) es una spline
c˙bica interpoladora para dichos datos si existen N polinomios de tercer grado Sk(x) que
se pueden escribir en tÈrminos de unos coeficientes ak, bk, ck y dk tales que:
1P.- S(x) =
 S ( x)  a  b ( x  x )  c ( x  x ) 2  d ( x  x ) 3 (x  x  x )
0 0 0 0 0 0 0 0 0 1


 S ( x )  a  b ( x  x )  c ( x  x ) 2  d ( x  x ) 3 (x  x  x )
k k k k k k k k k k 1


 S N 1 ( x )  a N 1  bN 1 ( x  x N 1 )  c N 1 ( x  x N 1 )  d N 1 ( x  x N 1 )
 ( x N 1  x  x N )
2 3

Esto indica que S(x) es un polinomio de tercer grado definido a trozos.


2P.- Sk(xk) = yk (k = 0, 1, ..., N). Esto indica que S(x) interpola los datos.
3P.- Sk(xk+1) = Sk+1(xk+1) (k = 0, 1, ..., Nñ2).
4P.- S'k(xk+1) = S'k+1(xk+1) (k = 0, 1, ..., Nñ2).
5P.- S''k(xk+1) = S''k+1(xk+1) (k = 0, 1, ..., Nñ2).
Estas tres ˙ltimas relaciones significan que S(x) es una funciÛn continua en el
intervalo [x0,xN], con derivadas primera y segunda continuas en el mismo intervalo. (Con
esto se evitan las esquinas que se producen con la interpolaciÛn lineal).
Para determinar S(x) hay que calcular los coeficientes ak, bk, ck y dk, que son en
total 4N. Para ello se plantea un sistema de ecuaciones lineales a partir de las relaciones
2™, 3™, 4™ y 5™, obteniÈndose (N+1) + (Nñ1) + (Nñ1) + (Nñ1) = 4N ñ 2 ecuaciones. Esto nos
deja dos grados de libertad para calcular los coeficientes. Estos dos grados de libertad se
llaman restricciones en los extremos, porque normalmente son los valores de S'(x) o de
S''(x) en los extremos. Entre las splines m·s utilizadas se tienen:
- Spline natural: S''(x0) = S''(xN) = 0; y
63
63
Tema 5: InterpolaciÛn .

- Spline con condiciones de contorno: S'(x0) = f '(x0) y S'(xN) = f '(xN).

64
64
Tema 5: InterpolaciÛn .

5.8.- TEMA 5. EJERCICIOS.


1.ó Estudiar el problema siguiente: Hallar un polinomio de grado  2 tal que:
p( x0 )  z0 ; p( x1 )  z1 ; p ( x2 )  z2

2.ó øQueda determinado un polinomio p(x) de grado  3 por los siguiente datos?:
a) p(0), p(1), p'(ñ1), p''(0) b) p(0), p'(ñ1), p'''(0), p''(ñ1/2)
3.ó Se desea interpolar una funciÛn f(x) utilizando un polinomio de la forma
p(x) = a + b x2 conociendo f(x) en dos puntos dados x1, x2. Estudiar el problema de
interpolaciÛn correspondiente.
4.ó Determinar el polinomio de interpolaciÛn de Lagrange de grado no mayor que dos,
que tome los valores 1, 2, ñ1 en los puntos 0, 1, ñ2, respectivamente.
Sol: p2(x)=x+1
5.ó SupÛngase que se tiene calculada una tabla de diferencias divididas para
una funciÛn f(x) en los puntos x0, x1, ..., xn por la cual se conoce el polinomio de
interpolaciÛn pn(x). Si se desea aÒadir un punto m·s xn+1 y hallar el nuevo polinomio de
interpolaciÛn pn+1(x), øquÈ c·lculos hay que realizar?
6.ó a) Constr˙yase la tabla de diferencias divididas para la funciÛn f(x) = x3 en los
puntos x0 = 0, x1 = 1, x2 = 3, x3 = 4. A partir de ella escrÌbase la expresiÛn del polinomio
de interpolaciÛn de f(x) en la forma de Newton.
b) EscrÌbase tambiÈn en la forma de Lagrange y comÈntese el resultado.
Sol.: p3(x) = x3
7.ó En el ejercicio anterior, escrÌbase el polinomio de interpolaciÛn de f(x) en x0 = 0,
x1 = 1, x2 = 3, en las formas de Newton y Lagrange. Comprobar las ventajas de la
primera al aÒadir un punto m·s, el x3 = 4, y llegar a los resultados del ejercicio anterior.
Sol.: p2(x) = 4x2-3x ; p3(x) = x3
8.ó Determinar el polinomio de interpolaciÛn de grado n = 3 que pasa por los puntos
dato de la tabla, siguiendo el orden indicado:
i 3 1 0 2
xi 0 1 3 4
yi ñ5 1 25 55
Sol.: p(x) = x3 ñ 2x2 + 7x ñ 5
9.ó EscrÌbase la expresiÛn del polinomio de interpolaciÛn si se conocen ˙nicamente los
datos f [xn], f [xn, xnñ1], ..., f [xn, ..., x0], adem·s de los valores de x0, ..., xn.
Sol.: pn(x)=f(xn)+f[xn xn-1](x- xn)+ f[xn xn-1 xn-2](x- xn) (x- xn-1)+.....+
+ f[xn xn-1 xn-2Ö x0] (x- xn) (x- xn-1)...(x-x1)
10.ó Si en la fÛrmula de Newton se prescinde de los dos ˙ltimos sumandos, øquÈ
representa el polinomio obtenido?
11.ó En la siguiente tabla se presentan valores de la funciÛn cos() y las
correspondientes diferencias divididas. Evaluar el polinomio de interpolaciÛn de segundo

65
65
Tema 5: InterpolaciÛn .

grado que pasa a travÈs de los valores de la funciÛn en 1, 2, 3 para el argumento
 = 0.25. Estudiar el error cometido.
i i
0 0.0 1.
ñ0.099667
1 0.2 0.980066 ñ0.492112
ñ0.247300 0.037106
2 0.3 0.955336 ñ0,477270 0.039670
ñ0.342754 0.060908 0.0022966
3 0.4 0.921060 ñ0.452906 0.037593
ñ0.478626 0.0779705
4 0.6 0.825335 ñ0.421024
ñ0.604934
5 0.7 0.764842
Sol.: f (0.25)  p(0.25) = 0.968894; E2(x)  2.4%10ñ5
12.ó Con los siguientes datos:
xi 0 1 3 4 6 7
fi ñ5 1 25 55 181 289
construir la tabla de diferencias divididas y el correspondiente polinomio de interpolaciÛn
de mayor grado posible.
Sol.: x3 ñ 2x2 + 7x ñ 5
13.ó En la tabla siguiente se dan valores de la funciÛn y(x) = x1/2 redondeados hasta
cinco cifras decimales:
xi 1.00 1.05 1.10 1.15 1.20 1.25 1.30
f(xi) 1 1.02470 1.04881 1.07238 1.09545 1.11803 1.14017

Calcular las diferencias hasta 3.


Utilizar la tabla para obtener 1.011/2, 1.281/2, 1.121/2.
1.01 1.00499
Sol.: 1.28  1.13137
1.12 1.05831
14.ó Calcular los valores yk que faltan a partir de las primeras diferencias:
yk 0 % % % % %
yk 1 2 4 7 11 16
15.ó Calcular las diferencias finitas hasta las de orden 4 para los siguiente valores yk.
Suponiendo que xk = k, obtener el polinomio de interpolaciÛn.
k 0 1 2 3 4 5 6
yk 0 1 16 81 256 625 1296

Sol.: x4
16.ó Completar la siguiente tabla

xk 0 1 2 3 4 5 6 7
yk 1 2 4 8 15 26 . .
66
66
Tema 5: InterpolaciÛn .
suponiendo que los datos provienen de una funciÛn polinÛmica.

67
67
Tema 5: InterpolaciÛn .

Sol.: f (6) = 42; f (7) = 64


1/2
17.ó H·llese 2 con la exactitud de hasta 0.0001 construyendo para la funciÛn
f(x) = x1/2 un polinomio de interpolaciÛn en el segmento [1.69, 2.25].
Sol.: 21/2  p(2) = 1.414249
18.ó a) Aplicar la fÛrmula de Newton progresiva a los puntos de la siguiente tabla para
obtener un valor aproximado de f (1.5) mediante un polinomio de interpolaciÛn de 2P
grado.
xi 0 1 2 3 4
fi ñ5 1 9 25 55
b) Aplicar la fÛrmula Newton regresiva para obtener el valor aproximado de f (3.5)
mediante polinomio de tercer grado.
Sol.: a) f (1.5)  p(1.5) = 4; b) f (3.5)  p(3.5) = 37.875
19.ó a) Formar la tabla de diferencias divididas para los siguientes datos:
x 0.30 0.37 0.41 0.52
f(x) 0.97741 0.96557 0.95766 0.93157
b) Obtener el polinomio de interpolaciÛn que verifica los datos de la tabla.
c) Una vez definido el polinomio de interpolaciÛn, calcular p3(0.47) y comparar el
resultado obtenido con f (0.47) = 0.94423.
d) AÒadir a la tabla un punto dato f (0.47) = 0.94423 y determinar p4(x). øEs
sencillo realizar los c·lculos insertando un punto adicional en la tabla? Justificar la
respuesta.
Sol.: b) p3(x) = 0.97741ñ0.16914(xñ0.3)ñ0.26009(xñ0.3)(xñ0.37)ñ
-0.01268(xñ0.3)(xñ0.37)(xñ0.41)
c) p3(0.47) = 0.94422; E3(0.47) = 10-5
d) p4(x) = p3(x)ñ0.16776(xñ0.3)(xñ0.37)(xñ0.41)(xñ0.52)
20.ó Dada la tabla siguiente correspondiente a y = sin(x), se pide:
a) Formar la tabla de diferencias finitas hasta las de tercer orden, justificando por
quÈ es suficiente con llegar a las de este orden.
b) A partir de esta tabla, obtener la mejor aproximaciÛn de sin(0.2443), sin(0.9774)
y sin(0.7505), justificando las elecciones de puntos y fÛrmulas utilizadas. Obtener la
aproximaciÛn de los errores cometidos al calcular sin(0.2443) y sin(0.9774).
x 0.26178 0.34905 0.43632 0.52359 0.61086 0.69813 0.78540 0.87267 0.95994
y 0.2588 0.3420 0.4226 0.5000 0.5736 0.6428 0.7071 0.7660 0.8192
Sol.: sin(0.2443)  0.2419; sin(0.9774)  0.8291; sin(0.7505)  0.6820
e(0.2443)  2.04%10ñ6; e(0.7505)  1.59%10ñ6
21.ó Completar la siguiente tabla de diferencias:

68
68
Tema 5: InterpolaciÛn .

x y y 2 y 3y 4 y 5 y
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 c˙bico de interpolaciÛn 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 interpolaciÛn de la funciÛn f(x) = ex en los
nodos ñ1, ñ0.75 y ñ0.5, y por R2(x) el error debido a la aproximaciÛn de y = ex mediante
su polinomio de interpolaciÛn, obtener una cota m·xima del error cometido sabiendo que
n
fn 1 (
R ( x)   x  x
)
b g
(n  1)!
n 1
i0

Sol.: 0.6080 10-3


25.ó Dada la siguiente tabla de puntos pertenecientes al gr·fico de la funciÛn 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 interpolaciÛn de segundo grado mediante la fÛrmula
de Newton que sirva para obtener un valor aproximado de la funciÛn para x = 4.5. Hacer
una estimaciÛn del error cometido con dicha aproximaciÛn.
c) Construir la tabla de diferencias finitas progresivas.
d) Calcular el valor aproximado de f (4.5) utilizando la fÛrmula de Newton
progresiva

69
69
Tema 5: InterpolaciÛn .

mediante un polinomio de primer grado.


e) Mediante un polinomio de segundo grado.
f) Mediante un polinomio de tercer grado.
g) Hacer en los dos primeros casos una estimaciÛn del error cometido.
Sol.: b) f (4.5)  39, e2(4.5)  0.375; d) f (4.5)  42; e) f (4.5)  39
f) f (4.5)  39.375; g) e1(4.5)  ñ3, e2(4.5)  0.375
26.ó Utilizar los siguientes valores para construir un polinomio de Lagrange de cuarto
orden, mediante el cual aproximar f (1.25), siendo f ( x)  e x 1 la funciÛn a considerar.
2

Hallar tambiÈn un lÌmite para error cometido en la aproximaciÛn f (x).


x 1.0 1.1 1.2 1.3 1.4
f (x) 1.00000 1.23368 1.55271 1.99372 2.64470
Sol.: f (1.25)  1.754961, e4 (1.25)  0.000238
27.ó Consideremos la funciÛn f (x) = 3xex ñ 2ex. Aproximar f (1.03) utilizando el
polinomio de interpolaciÛn de grado  2, usando x0 = 1, x1 = 1.05 y x2 = 1.07. Comparar el
error cometido con el lÌmite de error de la interpolaciÛn.
Sol.: f (1.03)  3.053048, e4 (1.03)  0.000119
28.ó Dada la tabla de valores de la funciÛn y = sin(x) desde x = 15P hasta x = 55P con
amplitud de paso h = 5P:
x 15 20 25 30 35 40 45 50 55
y 0.2588 0.3420 0.4226 0.5000 0.5736 0.6428 0.7071 0.7660 0.8192
a) Formar la tabla de diferencias, hasta las de tercer orden, justificando por quÈ es
suficiente con llegar a las de este orden.
b) A partir de esta tabla obtÈnganse las mejores aproximaciones posibles para los
valores sin(14P) y sin(43P), justificando las elecciones de puntos y las fÛrmulas utilizadas.
c) Obtener aproximaciones de los errores cometidos al calcular los valores
anteriores.
Sol.: b) sin(14P)  0.2419, sin(43P)  0.6820; c) e3(43P)  0
29.ó a) Deducir los polinomios de interpolaciÛn de Newton de cocientes incrementales
de grados sucesivos (1P, 2P, 3P, 4P) y los tÈrminos de error correspondientes para la funciÛn
f (x) definida por los puntos (xi, f (xi)) con i = 0, 1, 2, 3, 4.
b) Utilizando los datos de la tabla, correspondientes a la funciÛn f (x) = cos(x),
obtener los polinomios deducidos en al apartado a), asÌ como los tÈrminos de error
correspondientes.

70
70
Tema 5: InterpolaciÛn .

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
ñx
30.ó Dada la siguiente tabla correspondiente a la funciÛn f (x) = e , se desea obtener
una estimaciÛn de f (0.55):
x 0.0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1.0
f (x) 1.0000 0.8825 0.7788 0.6873 0.6065 0.5353 0.4724 0.4169 0.3679
Obtener el grado N del polinomio para que, con una elecciÛn adecuada de los puntos
base, la cota del error de truncamiento de pn(x) sea menor que 10ñ4. Construir el
correspondiente polinomio de interpolaciÛn y obtener la estimaciÛn pedida.
Sol.: f (0.55)  p2(0.55) = 0.576868

71
71

You might also like