Tema 5: Interpolaci Ûn .
TEMA 5: I NTER POLACI 5.1.-
N
”
NT INTR ODUCCI N ”
Supongamos que conocemos N +1 +1 puntos ( x0, y y0), ( x1, y y1), ..., ( x N y , y N ), de la curva y = f ( x), x), donde las abscisas x abscisas xk se distribuyen en un intervalo [a [ a,b] de manera manera que a x0 x1 < %%% < x N b
e yk = f ( x xk )
Construiremos un polinomio P ( x) x) de grado N que pase por estos N +1 +1 puntos. El polinomi polinomio o P ( x) x) puede luego usarse como una aproximaci Ûn a f ( x) x) en todo el intervalo [a,b]; no obstante, si queremos conocer la funciÛ n error E ( x) x) = f = f ( x) x) ñ P ( x), x), entonces sÌ N +1) +1) necesitaremos necesitaremos conocer f conocer f ( N ( x) x) o bien una cota de su tama Òo como
M maxo f
( N 1)
a x b
( x) x )
t
Existen funciones especiales y = f ( x), 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 +1 puntos ( xk , y aproximar f ( x) N +1 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 ( x ( xk , y yk ) tienen un grado alto de precisiÛ n, entonces podemos considerar el polinomio y = P ( x) x) que pasa por todos ellos como una buena aproximaciÛ n de f de f ( x). x). Cuando x0 < x < x N , la aproximaciÛn P ( x) x) se conoce como valor interpolado; si se tiene x < x0 o bien x > x N , entonces P ( x) x) se conoce como valor extrapolado. Los polinomi polinomios os se utilizan 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 especificados de antemano. antemano. Dados N +1 +1 puntos x0, x1, ..., x ..., x N pertenecientes al intervalo intervalo [a,b], el polinomio de interpolaciÛn de grado menor o igual que N que N que pasa por esos puntos es ˙nico. Recordemos brevemente que la forma eficiente de evaluar un polinomio P ( x): x): P ( x) x ) a N x a N 1 x N 1 a2 x a1 x a0 es el mÈtodo de Horner: P ( x) x ) ( ( a N x a N 1 ) x a1 ) x a0 5.2.-
POLI N I NTER POLACI N DE LAGR AN NOMIO DE NT ANGE ”
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 ( x ( x0, y y0) y ( x1 y , y1) viene dada por m = ( y y1- y y0) / ( x x1- x x0), y la ecuaciÛn de la misma es: y P ( x) x ) y ( y y 0
1
) 0
x x0 x x 1
53
0
Tema 5: Interpolaci Ûn .
y
P 1
f ( x) x) P 0
x
Figura 1. El matem·tico francÈs Joseph Louis Lagrange lleg Û a este mismo polinomio usando un mÈtodo ligeramente ligeramente distinto. Si escribimos 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
L
1,0 (
x
x x1 )
x x 0
y
L
1,1 (
x
x x0 )
1
x x 1
0
Un sencillo c·lculo muestra que L que L1,0( x x0) = 1, L 1, L1,0( x x1) = 0, L 0, L1,1( x x0) = 0 y L y L1,1( x x1) = 1; es decir, el polinomio P polinomio P 1( x) x) tambiÈn pasa por los dos puntos dados: P 1 ( x0 ) y0 y1 0 y0
y P 1 ( x1 ) y0 0 y1 y1
Los t Èrminos L1,0( x) x) y L1,1( x) x) definidos anteriormente se llaman polinomios coeficientes de Lagrange para los nodos x0 y x1. Usando esta notaciÛn, podemos escribir P escribir P 1( x) x) como una suma 1
P 1 ( x) x ) y k L1,k 1, k ( x ) k 0
Cuando las ordenadas yk vienen dadas por yk = f ( x xk ), el proceso de utilizar P 1( x) x) para aproximar aproximar f ( x) x) en el intervalo [ x0 x , x1] se conoce con el nombre de i nter polaciÛn lineal. Generalizando el polinomio P polinomio P N ( x) x) de grado menor o igual que N que pasa por N por N +1 +1 puntos ( x0, y y0), ( x1, y y1), ..., ( x N y , y N ) viene viene dado por: po r: N
P x ) yk L N ,k ( x ) N ( x) k 0
donde L donde L N ,k es el polinomio coeficiente de Lagrange para los nodos x0, x1, ..., x ..., x N definido por
L N ,k ( x )
( x x 0 ) ( x x k 1 )( x x k 1 ) ( x x N ) ( x k x0 ) ( x k xk 1 )( x k 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
Tema 5: Interpolaci Ûn .
donde toma el valor 1:
L N ,k ( x j) = 1 si j = k
y L N ,k ( x j) = 0 si j k
Resulta cÛmodo introducir la notaciÛ n compacta para el producto y escr i bir :
55
Tema 5: Interpolaci Ûn . N
N
L N ,k ( x)
0 ( x x
j
)
j j k
5.3.-
( x
k
x j )
j 0 j k
T R MI NOS 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 C N +1[a,b] y que x0, x1, ..., x N [a,b] son N +1 nodos de interpolaciÛn. Si x [a,b], entonces f ( x) = P N ( x) + E N ( x) donde P N ( 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) P N ( x) f ( xk ) L N ,k ( x ) k 0
y E N ( 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.-
POLI NOMIO DE I NTER POLACI N DE NEWTO N ”
Hay ocasiones en las que resulta ˙til construir varios polinomios aproximantes P 1( x), P 2( x), ..., P N ( 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 P N -1( x) para la de P N ( 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: P 1 ( x) a0 a1 ( x x0 ) P 2 ( x) a0 a1 ( x x0 ) a2 ( x x0 )( x x1 ) P 3 ( x) a0 a1 ( x x0 ) a2 ( x x0 )( x x1 ) a3 ( x x0 )( x x1 )( x x2 ) P N ( x) a 0 a1 ( x x0 ) a2 ( x x0 )( x x1 )
a N ( x x0 )( x x1 )( x x2 ) ( x x N 1 )
El polinomio P N ( x) se obtiene a partir de P N -1( x) usando la recurrencia: P N P N 1 ( x) a N ( x x 0 )( x x1 )( x x2 ) ( x x N 1 ) El polinomio P N ( x) calculado asÌ es el polinomio de interpolaciÛ n de Newton.
56
Tema 5: Interpolaci Ûn .
5.4.1.-
MultiplicaciÛn encajada
Para evaluar el polinomio P N ( x), lo m·s eficiente (menos operaciones) es usar el esquema de multiplicaciones encajadas. Para P 3( x), por ejemplo:
b
g
P 3 ( x) (a 3 ( x x2 ) a2 )( x x1 ) a1 ( x x0 ) a0
de manera que, si deseamos evaluar P 3( x) para un valor dado de x, entonces operamos desde dentro hacia afuera formando sucesivamente las cantidades: S 3 a3 S 2 S 3 ( x x2 ) a2 S 1 S 2 ( x x1 ) a1 S 0 S 1 ( x x0 ) a0 Esta ˙ltima cantidad S 0 es P 3( x).
5.4.2.-
C·lculo del Polinomio de InterpolaciÛn de Newton
Supongamos que queremos encontrar los coeficientes ak de todos los polinomios P 1( x), P 2( x), ..., P N ( x) que nos sirven para interpolar una
funciÛn dada f ( x). Entonces cada
P k ( x) es el polinomio de Newton que tiene como nodos x0, x1, ..., xk . Para el polinomio P 1( x), los coeficientes a0 y a1 tienen un significado familiar: f ( x0 ) P 1 ( x0 ) a0 a1 ( x0 x0 ) a0 a0 f ( x0 )
Por tanto:
f ( x1 ) P 1 ( x1 ) a0 a1 ( x1 x0 ) f ( x0 ) a1 ( x1 x0 ) a
y despejando a1:
f ( x1 ) f ( x 0 )
1
x1 x0
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 P 1( x) y P 2( x). Para continuar, ahora evaluamos la expresiÛn en el nodo x2 y obtenemos: f ( x2 ) P 2 ( x2 ) a0 a1 ( x2 x0 ) a2 ( x2 x0 )( x2 x1 ) de donde se obtiene
a
f ( x2 ) a0 a1 ( x2 x0 )
2
( x x )( x x ) 2
0
2
1
que tambiÈn se puede escribir como
F
x f ( x1 ) f ( x0 ) I
f ( x ) f ( x
) a 2
x x 2
(
2
0
)
x1 x0
1
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: Difer encias dividida s. 57
Tema 5: Interpolaci Ûn .
Las difer encias divididas de una funciÛn f ( x) se definen como: f [ x k ] f ( xk )
la diferencia dividida de orden cero: la diferencia dividida de primer orden:
f [ x
, x ] k 1
58
k
f [ xk ] f [ xk 1 ] xk x k 1
Tema 5: Interpolaci Ûn .
la diferencia dividida de segundo orden: f [ x
, x , x ] k 2
k 1
f [ x k 1 , x k ] f [ x k 2 , xk 1 ]
k
xk xk 2
Las diferencias divididas de orden superior se forman de acuerdo con la siguiente f Ûrmula de recursiÛ n: f [ x f [ x
, ..., x ]
, x k j
k j 1
,
, x ] f [ x
k j 1
k
k
,
, x
] k 1
k j
x k x k j
que se utiliza para calcular la Tabla de Diferencias Divididas: x 0 f ( x 0 )
0
x1
f ( x1 ) f ( x 0 )
1
x1 x 0
f ( x 1 )
f x x 1
x 2
f x x
2
f x 0 x 1 x 2
f x 1 x 2 f x 0 x 1 x 2 x 0
f ( x 2 ) f ( x 1 ) x 2 x 1
f ( x 2 )
f x 1 x 2 x 3
f x 2 x 3 f x 1 x 2
f ( x ) f ( x )
2
x 3
f ( x 3 )
f x x 3
3
x 3 x 1
2
x 3 x 2
TABLA DE DIFERENCIAS DIVIDIDAS Con esta notaciÛn el coeficiente a2 del polinomio P 2( x) se puede expresar como: f [ x1 , x2 ] f [ x0 , x1 ] a f x , x , x 0
x2 x0
1
2
Teorema. (Polinomio de i nter polaciÛn de Newton). Supongamos que x0, x1, ..., x N son N +1 n˙meros distintos en [a,b]. Entonces existe un
˙nico polinomio P N ( x) de grado menor o igual que N tal que f ( x j) = P N ( x j)
para j = 0, 1, ..., N
La forma de Newton de este polinomio interpolador: P N ( x) a0 a1 ( x x0 ) siendo
AsÌ:
a N ( x x0 )( x x1 ) ( x x N 1 )
ak f [ x0 , x1 , , x k ] para
k 0,1,
, N
P 0( x) = f ( x0) P 1( x) = f ( x0) + f [ x0, x1]( xñ x0) P 2( x) = f ( x0) + f [ x0, x1]( xñ x0) + f [ x0, x1, x2]( xñ x0)( xñ x1) 59
Tema 5: Interpolaci Ûn . %%%
P N ( x) = f ( x0) + f [ x0, x1]( xñ x0) + %%% + f [ x0, x1,.., x N ]( xñ x0)%%% ( x- x N ñ1) En este polinomio los nodos se han colocado en el orden x0, x1, ..., x N . Si se hubieran colocado los nodos en otro orden, por ejemplo x N , x N ñ1, ..., x1, x0, el polinomio obtenido habrÌa sido: P n ( x) f ( xn ) f xn xn 1 ( x xn ) f xn xn 1 x0 ( x xn )
60
( x x1 )
Tema 5: Interpolaci Ûn .
pero este polinomio tiene que coincidir con el anterior, luego: f [ x0 , x1 , ... , xn ] f [ xn , xn1 , ... , 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: k
1™.- La diferencia dividida de orden K es el coeficiente de x en P k( 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.
Teor ema. Sean f C n[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) ñ P n( x), siendo P n( x) el polinomio de interpolaciÛ n de Newton de f ( x), en los n+1 puntos, es decir, g ( x ) f ( x ) P n ( x) f ( x) ( f ( x 0 ) f [ x0 , x1 ]( x x0 )
f [ x0 , x1 ,
, xn ]( x x0 )( x x1 ) ( x xn 1 ))
g ( x) se anula en x0, x1, ..., xn, y aplicando el teorema de Rolle generalizado existir · n)
un (a,b) tal que g () = 0, es decir, f
n
( ) P ( ) 0 f ( ) n! f x 0 x1 x n n)
n)
f x 0 x1
x n
f
n)
( )
n!
Utilizando esta relaciÛ n, el t Èrmino de error: E ( x) N
f
n 1)
( )
n
( x x ) f
(n 1)!
i
x , x , 0
1
, x , z
n
( x x )
n
i i0
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.-
INTER POLACI 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: Difer encia finita pr ogr esiva. Se define como difer encia 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
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 f ( x0 ) k 1 f ( x1 ) k 1 f ( x0 )
En general:
La relaciÛn entre las diferencias finitas progresivas y las diferencias divididas se obtiene: f x x
f ( x1 ) f ( x0 )
0 1
f ( x0 )
x0 x1
f x0 x1 x2
f ( x ) h f x x 0
h
f x1 x2 f x0 x1 x2 x0
0 1
f ( x1 ) f ( x0 ) 2h
2
2 f ( x0 ) 2h f x0 x1 x2
n f ( x0 ) n!h n f x0 x1 x n
En general:
DefiniciÛn: Difer encia finita r egr esiva. Se define como difer encia 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 :
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 ) k f ( x 0 k ) k !h k f x k x k 1 5.6.-
x0
F R MULAS DE NEWTON PR OGRESIVA 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: P N ( x) f ( x 0 ) f x 0 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 ; 62
; x xn 1 (t n 1)h
Tema 5: Interpolaci Ûn .
P ( x th) q (t) f ( x ) N
0
N
f ( x0 )
0
th
2 f ( x0 )
th(t 1)h
2!h2
h
n
( x0 )
th(t 1) h ( t n 1)h n n!h 2 f ( x0 ) n f ( x0 ) 0 t(t 1) t(t 1) t(t n 1) f ( x0 ) f ( x0 )t 2! n! n n f ( x ) F t I t(t 1) (t k 1) f ( x )
k 0
k
0
k!
0
GH JK k
k 0
Las diferencias finitas progresivas en x0 se obtienen formando la siguiente tabla y tomando los elementos de la diagonal descendente: f ( x 0 )
f ( x 0 ) f ( x1 )
f ( x 0 )
f ( x1 )
3 f ( x 0 )
f ( x 2 )
f ( x1 )
f ( x 2 )
f ( x 3 ) TABLA DE DIFERENCIAS FINITAS PR OGRESIVAS 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: P ( x) f ( xn ) f xn xn1 ( x xn ) f xn xn 1 x0 ( x xn )( x x1 ) N
Haciendo el cambio de variable: x = xn + t ?h con t (ñn,0): x xn th; x xn1 (t 1)h, x xn 2 (t 2)h y teniendo en cuenta que 2
f xn xn 1
f ( x n ) f ( xn ) ; ; f xn x n 1 x n1 2! h 2 h
se obtiene: P ( x) P ( x th) q (t ) f ( x ) N
N
n
n
f ( xn )
n
t h
f ( x n )
h
2 !h
2 2
n
t h (t 1) h
f ( x n )
t h (t 1) h
(t n 1) h f ( x ) n
n!
f ( x )
t t
t
n
f ( xn ) 1! f x
n
60
t
F
f ( x n )
t (t 1)
2! t k 1I
n
(
n!
Tema 5: Interpolaci Ûn .
1)
( 1)
n
k
n
(
n
)
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
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. la
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 ( x 0 )
f ( x 1 ) f ( x1 )
2 f ( x 2 ) 3
f ( x 2 )
f ( x 2 )
f ( x 3 ) 2 f ( x 3 )
4 f ( x 4 ) 3
f ( x 3 ) f ( x 3 )
f ( x 4 ) 2 f ( x 4 )
f ( x 4 ) f ( x 4 ) TABLA DE DIFERENCIAS FINITAS RE GRESIVAS 5.7.-
INTER POLACI N POLI NOMIAL A T R OZOS ”
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Ì, S k ( x) es el polinomio que interpola a f en dos nodos consecutivos ( xk , yk ) y ( xk +1, yk +1). El conjunto de funciones {S k( x)} forma la curva 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, x N ]. La continuidad de S'' ( x) significa que el radio de curvatura est· definido en todos los puntos del intervalo. DefiniciÛn: Spline c˙ bica i nter polador a. 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 S k( x) que se pueden escribir en t Èrminos de unos coeficientes ak , bk , ck y d k tales que: 1P.- S ( x) = S ( x) a b ( x x ) c ( x x ) 2 d ( x x ) 3
0
0
0
0
0
0
0
0
S ( x) a b ( x x ) c ( x x )2 d ( x x ) 3 k
k
k
k
k
k
k
( x x x ) 0
( x x x
k
2 S N 1 ( x) a N 1 b N 1 ( x x N 1 ) c N 1 ( x x N 1 ) d N 1 ( x x N 1 )
1
k
) k 1
( x N 1 x x N )
Esto indica que S ( x) es un polinomio de tercer grado definido a trozos. 2P.-
S k( xk ) = yk
3P.-
S k( xk +1) = S k+ 1( xk +1)
4P.-
S' k( xk +1) = S' k+ 1( xk +1)
5P.-
S'' k( xk +1) = S'' k+ 1( xk +1) Estas tres
(k = 0, 1, ..., N ). Esto indica que S ( x) interpola los datos.
˙ltimas
(k = 0, 1, ..., N ñ2). (k = 0, 1, ..., N ñ2). (k = 0, 1, ..., N ñ2).
relaciones significan que S ( x) es una funciÛ n continua en el
intervalo [ x0, x N ], 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 d k, que son en total 4 N . 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) = 4 N ñ 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'' ( x N ) = 0; y 63
Tema 5: Interpolaci Ûn .
- Spline con condiciones de contorno: S' ( x0) = f ' ( x0) y S' ( x N ) = f ' ( x N ).
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 ) z 0 ; p( x1 ) z 1 ; p ( x2 ) z 2 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) = x 7.ó En el ejercicio anterior,
3
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) = x 8.ó
3
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 1 xi ñ5 1 yi
0 3 25
2 4 55 Sol.: p( x) = x3 ñ 2 x2 + 7 x ñ 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-x 1) 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 interpo laciÛ n de segundo 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
2
0.3
0.955336
0.037106 ñ0,477270
ñ0.342754 3
0.4
0.921060
0.060908
0.6
0.0022966
ñ0.452906 ñ0.478626
4
0.039670
0.825335
0.037593 0.0779705
ñ0.421024 ñ0.604934
5
0.7
0.764842 ñ5
Sol.: f (0.25) p(0.25) = 0.968894; E 2( x) 2.4%10 12.ó Con los siguientes datos: xi f i
0 ñ5
1
1
3 25
4 55
6 181
7 289
construir la tabla de diferencias divididas y el correspondiente polinomio de interpolaciÛ n de mayor grado posible. 3
2
Sol.: x ñ 2 x + 7 x ñ 5 13.ó En la tabla siguiente se dan valores de la funci Û n y( x) = x1/2 redondeados hasta cinco cifras decimales: 1.00 1.05 xi 1 1.02470 f ( xi)
1.10 1.04881
1.15 1.07238
1.20 1.09545
1.25 1.11803
1.30 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: 0 % % % % % yk 1 2 4 7 11 16 yk 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 yk 0 1 16 81 256 625
6 1296 4
Sol.: x 16.ó Completar la siguiente tabla xk yk
0 1
1 2
2 4
3 8 66
4 15
5 26
6 .
7 .
Tema 5: Interpolaci Ûn .
suponiendo que los datos provienen de una
funciÛn polinÛmica.
67
Tema 5: Interpolaci Ûn .
Sol.: f (6) = 42; f (7) = 64 1/2
17.ó H·llese 2 1/2
f ( x) = x
con la exactitud de hasta 0.0001 construyendo para la funci Û n
un polinomio de interpolaciÛ n en el segmento [1.69, 2.25]. 21/2 p(2) = 1.414249
Sol.:
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 f i
0 ñ5
1 1
2 9
3 25
4 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; E 3(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 est e 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 ñ6
ñ6
e(0.2443) 2.04%10 ; e(0.7505) 1.59%10 21.ó Completar la siguiente tabla de diferencias:
68
Tema 5: Interpolaci Ûn .
x 0
y
2 y
y
3 y
4 y
5 y
%%% %%%
5
0.0013
%%%
0.0888 10
%%%
%%%
0.0002
%%% %%%
15
%%%
%%%
%%%
0.0017
%%%
20
ñ0.0002
%%%
%%%
%%% %%%
25
0.4663
22.ó a) Completar la tabla de diferencias para los siguientes datos: 0.1 0.3 0.5 0.7 0.9 1.1 x y 0.003 0.067 0.148 0.248 0.370 0.518
1.3 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: 10 20 xi 0.17365 0.34202 yi
30 0.50000
40 0.64279
50 0.76604
60 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 P 2( x) el polinomio de interpolaciÛ n de la funciÛn f ( x) = e x en los x
nodos ñ1, ñ0.75 y ñ0.5, y por R2( x) el error debido a la aproximaciÛ n de y = e mediante su polinomio de interpolaciÛ n, obtener una cota m·xima del error cometido sabiendo que n
b) g
R ( x) x x
1
n i0
fn 1 ( (n 1)! Sol.: 0.6080 10 -3
25.ó Dada la siguiente tabla de puntos pertenecientes al gr ·fico de la funciÛ n f ( x): 3 4 5 6 xk 6 24 60 120 f ( xk ) 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 Û r mula de Newton progresiva
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; f) f (4.5) 39.375;
d) f (4.5) 42;
e) f (4.5) 39
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
2
1
la funciÛn a considerar.
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 x
x
27.ó Consideremos la funciÛ n f ( x) = 3 xe ñ 2e . 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 y 0.2588 0.3420 0.4226
30 0.5000
35 0.5736
40 0.6428
45 0.7071
50 55 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(43 P) 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
Tema 5: Interpolaci Ûn .
xk 0.0 1.0 2.0 3.0 4.0
f [ xk ] 1.0000000 0.5403023 ñ0.4161468 ñ0.9899925 ñ0.6536436
f [ , ]
f [ , , ]
f [ , , , ]
f [ , , , , ]
ñ0.4596977 ñ0.9564491 ñ0.5738457 0.3363489
ñ0.2483757 0.1913017 0.4550973
0.1465591 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 f ( x) 1.0000 0.8825 0.7788
0.375 0.6873
0.5 0.6065
0.625 0.5353
0.75 0.4724
0.875 1.0 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