TEMA 5 INTERPOLACION

  

TEMA 5: INTERPOLACIÓN

5.1.- INTRODUCCIÓN

  Supongamos que conocemos N+1 puntos (x ,y ), (x ,y ), ..., (x ,y ), de la curva

  1

  1 N N

  y = f(x), donde las abscisas x

  k se distribuyen en un intervalo [a,b] de manera que

  a  x  x < ··· < x  b e y = f(x )

1 N k k

  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í

  • – (N+1)

  necesitaremos conocer f (x) o bien una cota de su tamaño como ( N 1 )

  

  M max f ( ) x  a x b   o 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 (x ,y ) y es necesario un método para aproximar f(x) en abscisas que no están

  k k

  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 ,y ) tienen un grado alto de

  k k

  precisión, entonces podemos considerar el polinomio y = P(x) que pasa por todos ellos como una buena aproximación de f (x).

  Cuando x < x < x , la aproximación P(x) se conoce como valor interpolado; si se

  N

  tiene x < x o bien x > x , entonces P(x) se conoce como valor extrapolado. Los

  N

  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 x , x , ..., x pertenecientes al intervalo [a,b], el polinomio de

1 N 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): N N 1 2

  

  P x ( )  a x  a x   a x  a x  a N N  1 2 1 es el método de Horner:   P x ( )  ( ( a x  a ) x   a x )  a N N  1 1

  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 (x ,y ) y (x ,y ) viene dada

  1

  1

  por m = (y

  1 -y ) / (x 1 -x ), y la ecuación de la misma es:

  x  x y  P x ( )  y  ( y  y ) 1 x  x 1 y P

  1

  f (x) P 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 x x x

    1 y  P x ( )  y  y 1 1 x x x x   1 1 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  x x  x 1 L ( ) x  y L ( ) x  1 0 , 1 1 , x  x x  x 1 1 Un sencillo cálculo muestra que L (x ) = 1, L (x ) = 0, L (x ) = 0 y L (x ) = 1;

  1,0 1,0 1 1,1 1,1

  1

  es decir, el polinomio P (x) también pasa por los dos puntos dados:

1 P x ( )  y  y   y y P x ( )  y   y  y

  1 1 1 1 1 1 Los términos L (x) y L (x) definidos anteriormente se llaman polinomios

  1,0 1,1

coeficientes de Lagrange para los nodos x y x . Usando esta notación, podemos

  1

  escribir P (x) como una suma

  1 1 P x ( )  y L ( ) x 1 k 1 , k

k 

  Cuando las ordenadas y vienen dadas por y = f(x ), el proceso de utilizar P (x)

  

k k k

  1

  para aproximar f(x) en el intervalo [x ,x ] se conoce con el nombre de interpolación

  1 lineal .

  Generalizando el polinomio P (x) de grado menor o igual que N que pasa por N+1

  N

  puntos (x ,y ), (x ,y ), ..., (x ,y ) viene dado por:

  1

  1 N N N

  P ( ) x  y L ( ) x N k N k ,

   k 

  donde L es el polinomio coeficiente de Lagrange para los nodos x , x , ..., x definido

  N,k

  1 N

  por   ( x  x ) ( x  x )( x  x ) ( x  x ) k  1 k  1 N

  L ( ) x  N k ,   ( x  x ) ( x  x )( x  x ) ( x  x ) k k k  1 k k  1 k N que multiplica a y k en el sumatorio y se ha de anular en todos los nodos excepto en x k 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 escribir:

  

N N

  L x  x  x x  x N k , j k j ( ) ( ) ( )

  

 

j j

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).

  N+1 Teorema. Supongamos que f  C [a,b] y que x , x 1 , ..., 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 ( ) x  f x L ( ) ( ) x N k N k ,

  

k 

  y E N (x)el término del error que se puede escribir como ( N  1 )

  

  ( x  x )( x  x ) ( x  x ) f ( ) 1 N E ( ) x N

  ( 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 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 x ( )  a  a x (  x ) 1 1 P x ( )  a  a x (  x )  a x (  x )( x  x ) 2 1 2 1 P x ( )  a  a x (  x )  a x (  x )( x  x )  a x (  x )( x  x )( x  x ) 3 1 2 1 3 1 2 P x a a x x a x x x x N ( )   (  )  (  )(  )    1 2 1 a x x x x x x x x   (  )(  )(  ) (  ) N 1 2 N  1 El polinomio P N (x) se obtiene a partir de P N-1 (x) usando la recurrencia:

  P P ( ) x a ( x x )( x x )( x x ) ( x x ) N N        1 N 1 2 N  1 El polinomio P N (x) calculado así es el polinomio de interpolación de Newton.

  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:

         P x ( ) ( a x ( x ) a )( x x ) a ( x x ) a 3 3 2 2 1 1

  b g

  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 a 33 S S x ( x ) a 2    3 2 2 S S x ( x ) a 1    2 1 1 S S x ( x ) a

     1 Esta última cantidad S es P 3 (x).

  5.4.2.- Cálculo del Polinomio de Interpolación de Newton Supongamos que queremos encontrar los coeficientes a k 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 x , x

  1 , ..., x k . Para el polinomio

  P

  1 (x), los coeficientes a y a

1 tienen un significado familiar:

  f x ( )  P x ( )  a  a x (  x )  a 1 1 a f x Por tanto:  ( ) f x ( ) P x ( ) a a x ( x ) f x ( ) a x ( x ) 1        1 1 1 1 1 1 f x ( )  f x ( ) 1 y despejando a : a

  1  1

  x  x 1 Es decir, a

  1 es la pendiente de la recta que pasa por los puntos (x ,f(x )) y (x 1 ,f(x 1 )).

  Los coeficientes a y a son los mismos para P (x) y P (x). Para continuar, ahora

  1

  1

  2

  evaluamos la expresión en el nodo x

  2 y obtenemos:

  f x ( )  P x ( )  a  a x (  x )  a x (  x )( x  x ) 2 2 2 1 2 2 2 2 1 f x a a x x ( )   (  ) 2 1 2 de donde se obtiene a  2 x x x x

  (  )(  ) 2 2 1 que también se puede escribir como  

  F f x ( ) f x ( ) f x ( ) f x ( ) 2 1 1 I

  a   ( x  x ) 2 2   x x x x

  HG 2 1 1 KJ

  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.

  Las diferencias divididas de una función f(x) se definen como: la diferencia dividida de orden cero: f x [ ]  f x ( ) k k f x [ ]  f x [ ] k k  1 la diferencia dividida de primer orden: f x [ , x ]  k k

   1

  x  x k k  1

  la diferencia dividida de segundo orden: f x x x f x x f x x x x k k k k k k k k k

  · · · P

  ) = P

  N

  (x

  j

  ) para j = 0, 1, ..., N La forma de Newton de este polinomio interpolador:

  P x a a x x a x x x x x x N N N ( ) ( ) ( )( ) ( )        

   1 1 1  

  siendo a f x x x k N k k   [ , , , ] , , , 1 0 1   para Así: P (x) = f (x )

  P

  1 (x) = f (x ) + f [x ,x 1 ](x–x )

  P

  2 (x) = f (x ) + f [x ,x 1 ](x–x ) + f [x ,x 1 ,x 2 ](x–x )(x–x 1 )

  N

  (x) de grado menor o igual que N tal que f(x

  (x) = f (x ) + f [x ,x

  1

  ](x–x ) + ··· +f [x ,x

  1

  ,..,x

  N

  ](x–x )···(x-x

  N–1

  ) En este polinomio los nodos se han colocado en el orden x , x 1 , ..., x N . Si se hubieran colocado los nodos en otro orden, por ejemplo x N , x N–1 , ..., x

  1 , x , el

  polinomio obtenido habría sido: P x f x f x x x x f x x x x x x x n n n n n n n n ( ) ( ) ( ) ( ) ( )

        

  j

  N

  [ , , ] [ , ] [ , ]

     

       

     2 1 1 2 1 2 Las diferencias divididas de orden superior se forman de acuerdo con la siguiente fórmula de recursión: f x x x f x x f x x x x k j k j k k j k k j k k k j

  [ , , ..., ] [ , , ] [ , , ]

         

   

   1 1 1   que se utiliza para calcular la Tabla de Diferencias Divididas: x f x f x x f x f x x x x f x f x x x f x x f x x x x f x x f x f x x x x f x f x x x f x x f x x x x f x x f x f x x x x f x 1 1 1 1 1 1 2 1 2 1 2 1 2 2 1 2 1 2 2 1 2 3 2 3 1 2 3 1 2 3 3 2 3 2 3 3 TABLA DE DIFERENCIAS DIVIDIDAS

  ( ) ( ) ( )

  ( ) ( ) ( )

  ( ) ( ) ( )

  ( )  

   

     

     

  son N+1 números distintos en [a,b]. Entonces existe un único polinomio P

     

  Con esta notación el coeficiente a

  2

  del polinomio P

  2

  (x) se puede expresar como: a f x x f x x x x f x x x 2 1 2 1 2 1 2

    

   [ , ] [ , ]

  , , Teorema. (Polinomio de interpolación de Newton). Supongamos que x , x

  1

  , ..., x

  N

  

 

1 1 1   

  pero este polinomio tiene que coincidir con el anterior, luego: f x x [ , , ..., x ] f x x [ , , ..., x ] 1 n n n 1 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 (x). k

  2ª.- La diferencia dividida de cualquier orden es independiente del orden en que se tomen los nodos. 3º.- 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. n

  

  Sean f  C [a,b] y x , x

  1 , ..., x n n+1 puntos distintos en [a,b]. Entonces   (a,b) tal n)

  que f [x , x

  1 , ..., x n ] = f (  ) / n!

  • – n n (x) el polinomio de interpolación de

  Demostración. Sea g(x) = f(x) P (x), siendo P

  Newton de f(x), en los n+1 puntos, es decir, g x ( )  f x ( )  P x ( )  f x ( ) ( (  f x )  f x x [ , ]( x  x )   n   1  f x x [ , , , x ]( x  x )( x  x ) ( x  x )) 1 n 1 n  1 g(x) se anula en x , x

  1 , ..., x n , y aplicando el teorema de Rolle generalizado existirá n)  

  un  (a,b) tal que g ( ) = 0, es decir, n ) n n ) n )   f ( ) 

    

  f ( )  P ( )   f ( )  n f x x ! x  f x x x  N 0 1 n 0 1 n n ! Utilizando esta relación, el término de error: n  1 ) n n f ( ) 

  E ( ) x  ( x  x )  f x x , , , x z , ( x  x ) N i 1 n i

   

  ( n  1 )! i  i  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, x i+1 x n–1). En este caso el polinomio

  • – i = h (i = 0, 1, ..., 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 x , y se representa por f (x ) a la diferencia: f (x ) = f(x

  • – 1 ) f(x )

  Esta diferencia finita es la de primer orden. Del mismo modo se puede definir la de segundo orden:    2 1 2 1

       En general:

         

     2 1 1 2

  2 f x f x f x f x f x f x n n n n n n ( ) ( ) ( ) ( ) ( ) ( ) y la de orden k:

      

     k n k n k n

  f x f x f x ( ) ( ) ( ) 1 1 1 Ambas diferencias finitas están relacionadas entre sí:   f x f x f x f x f x f x f x f x f x

  ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) 1 1 2 2 1 2 2

  2    

   k k k k k k f x f x k h f x x x ( ) ( ) ! 1   

  

    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: P x f x f x x x x f x x x x x x x f x x x x x x x N n n

  ( ) ( ) ( ) ( )( ) ( ) ( )

           

  

0 1 0 1 2

1 0 1   1

  Haciendo el cambio de variable x = x + t·h con t(0,n): x x t h x x t h x x t n h n          

   1 2 1

  1

  f x f x f x n n n ( ) ( ) ( ) 1 Esta es la diferencia finita regresiva de primer orden. La de segundo orden será:

  ), a la diferencia:   

  ( 2 f x f x f x f x f x f x ) ( ) ( ) ( ) ( ) ( )     

   

  En general:    k k k f x f x f x ( ) ( ) ( ) 1 1 1  

   

  La relación entre las diferencias finitas progresivas y las diferencias divididas se obtiene: f x x f x f x x x f x h f x h f x x f x x x f x x f x x x x f x f x h f x h f x x x 0 1 1 1 0 1 0 1 2 1 2 0 1 2 1 2 2 2 0 1 2

  2

  2 

   

      

   

     ( ) ( ) ( )

  n

  ( ) ( ) ( )

  ( ) 

    

   En general:

   n n n f x n h f x x x ( ) ! 0 1 Definición: Diferencia finita regresiva.

  Se define como diferencia finita regresiva de f(x) en x

  n

  , y se representa por f(x

  2 ) ; 1 ( ( ) ; ; ( ) 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 x mientras que en la tabla de diferencias finitas regresivas todo está referenciado a x n .

   1 Las diferencias finitas regresivas en x n se obtienen formando la tabla correspondiente, y tomando los elementos de la diagonal ascendente.

  ! ;  se obtiene:

  ( ) !

  ( ) !

  ! ( ) ( ) ( )

  ( ) ( )

  ( ) ( ) !

  N N n n n k n n n n n n n n n n n k n ( ) ( ) ( ) ( )

  P x P x th q t f x f x h t h f x h t h t h f x n t h t h t n h f x f x t f x t t f x n t t t n f x t k

  ; ( )

  ( ) ( ) ( )     

  2 ( )

    1 1 1 2 2

   

    

  ; ( ) , ( ) 1 2 1 2  y teniendo en cuenta que f x x f x h f x x x f x h n n n n n n n

   

         

  

n

  ( ) ( ) !

    

  

 

1 1 1  

  1

  1

  1

  1

  2

  1

  1

  1

  2

        

  I KJ   2 2 2

  F HG

   

       

     

   

            

   

  Haciendo el cambio de variable: x = x

  , ..., x , entonces el polinomio resultante sería: P x f x f x x x x f x x x x x x x N n n n n n n n ( ) ( ) ( ) ( )( )       

  P x th q t f x f x h th f x h th t h x n h th t h t n h f x f x t f x t t f x n t t t t n f x k t t t k f x t

  2

  1

  1

  1

  2

  1

  1

  1

  ! ( ) ( ) ( ) 2 2 2

  1       

  ( ) ( ) ( )

  ( ) !

  ! ( )

  ( ) ( ) ( )

  ! ( ) ( )

  ( ) ( )

  ( ) ( ) !

  N N k n n n k k n k ( ) ( ) ( )

  1

                

  n-1

  ( ) 1 2 1 3 2 2 1 2 3

  , x

  n

  Si se hubiese tomado el polinomio de Newton con diferencias divididas tomando los nodos en el orden x

   TABLA DE DIFERENCIAS FINITAS PROGRESIVAS

    

   

   

    

  ( ) ( ) ( )

       

  ( ) ( ) ( ) ( )

  ( ) ( )

  Las diferencias finitas progresivas en x se obtienen formando la siguiente tabla y tomando los elementos de la diagonal descendente: f x f x f x f x f x f x f x f x f x f x

  I KJ   k n

       

     

    

  F HG  

  • t·h con t(–n,0): x x th x x t h x x t h n n n
Si el punto en el que se quiere interpolar está próximo a x es conveniente usar diferencias finitas progresivas y si está próximo a x n 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 ( )

    f x ( ) 1 2 f x ( )   f x ( ) 1 2 3

  

   f x ( )   f x ( ) 2 2 3 4 f x ( )   f x ( )   f x ( ) 2 3 3 4   f x ( )   f x ( ) 3 2 4 f x ( )   f x ( ) 3 4 f x

    ( ) 4 f x ( ) 4 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

  2

  función f (x) = 1/(1+x ) 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 (x k ,y k ) y (x k+1 ,y k+1 ). El conjunto de funciones {S k (x)} forma la curva

  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 [x ,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 interpoladora.

  Supongamos que se tienen como datos N+1 puntos (x k ,y k ) (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 (x) que

  k

  se pueden escribir en términos de unos coeficientes a , b , c y d tales que:

  k k k k

  1º.- S(x) = 2 3

           S x ( ) a b x ( x ) c x ( x ) d x ( x ) ( x x x ) 1

    2 3

           

   S x ( ) a b x ( x ) c x ( x ) d x ( x ) ( x x x ) k k k k k k k k k k  12 3

           S ( ) x a b ( x x ) c ( x x ) d ( x x ) ( x x x ) N  1 N  1 N  1 N  1 N  1 N  1 N  1 N  1 N  1 N

   Esto indica que S(x) es un polinomio de tercer grado definido a trozos. 2º.- S k (x k ) = y k (k = 0, 1, ..., N). Esto indica que S(x) interpola los datos. 3º.- S k (x k+1 ) = S k+1 (x k+1 ) (k = 0, 1, ..., N–2). 4º.- S' k (x k+1 ) = S' k+1 (x k+1 ) (k = 0, 1, ..., N–2).

  N–2). 5º.- S'' k (x k+1 ) = S'' k+1 (x k+1 ) (k = 0, 1, ...,

  Estas tres últimas relaciones significan que S(x) es una función continua en el intervalo [x ,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 a , b , c y d , que son en

  k k k k

  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''(x ) = S''(x N ) = 0; y

  • Spline con condiciones de contorno: S'(x ) = f '(x ) y S'(x N ) = f '(x N ).

  5.8.- TEMA 5. EJERCICIOS.

  1.— Estudiar el problema siguiente: Hallar un polinomio de grado  2 tal que: p x ( )  z ; p x ( )  z ; p x  ( )  z 1 1 2 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

  2

  • p(x) = a b x conociendo f(x) en dos puntos dados x

  1 , x 2 . 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: p

  2 (x)=x+1

  5.— Supóngase que se tiene calculada una tabla de diferencias divididas para una función f(x) en los puntos x , x

  1 , ..., x n por la cual se conoce el polinomio de interpolación

  p

  

n (x). Si se desea añadir un punto más x n+1 y hallar el nuevo polinomio de interpolación

  p n+1 (x), ¿qué cálculos hay que realizar?

  3

  6.— a) Constrúyase la tabla de diferencias divididas para la función f(x) = x en los puntos x = 0, x

  1 = 1, x 2 = 3, x 3 = 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.

  3

  p (x) = x

  Sol.:

  3

  7.— En el ejercicio anterior, escríbase el polinomio de interpolación de f(x) en x = 0, x = 1, x = 3, en las formas de Newton y Lagrange. Comprobar las ventajas de la

  1

  2 primera al añadir un punto más, el x = 4, y llegar a los resultados del ejercicio anterior.

  3

  2

  3 Sol.: p (x) = 4x -3x ; p (x) = x

  2

  3

  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

  2 x i

  1

  3

  4 y

  • – i

  5

  1

  25

  55

  3

  2 Sol.: p(x) = x 2x

  • – +

  7x

  • – 9.— Escríbase la expresión del polinomio de interpolación si se conocen únicamente los datos f [x n ], f [x n , x ], ..., f [x n , ..., x ], además de los valores de x , ..., x n .

  5

  n–1 Sol.: p n (x)=f(x n )+f[x n x n-1 ](x- x n )+ f[x n x n-1 x n-2 ](x- x n ) (x- x n-1 )+.....+

  • f[x n x n-1 x n-2 ] (x- x n ) (x- x n-1 )...(x-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 interpolación de segundo

    

  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 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

      5 Sol.: f (0.25)  p(0.25) = 0.968894; E (x)  2.4·10

      2

      12.— Con los siguientes datos: x i

      1

      3

      4

      6

      7 f

    • – i

      5

      1

      25 55 181 289

      construir la tabla de diferencias divididas y el correspondiente polinomio de interpolación de mayor grado posible.

      3

      2

    • – 1/2

      Sol.: x 2x 7x

      5

      13.— En la tabla siguiente se dan valores de la función y(x) = x redondeados hasta cinco cifras decimales: x

      1.00

      1.05

      1.10

      1.15

      1.20

      1.25

      1.30

      i

      f(x i ) 1 1.02470 1.04881 1.07238 1.09545 1.11803 1.14017

    3 Calcular las diferencias hasta  .

      1/2 1/2 1/2 Utilizar la tabla para obtener 1.01 , 1.28 , 1.12 .

       1.01 1.00499

      

      Sol.: 1.28 1.13137

       1.12 1.05831

      14.— Calcular los valores y que faltan a partir de las primeras diferencias:

      k

      y k · · · · ·

      1

      2

      4

      7

      11

      16 y

      k 15.— Calcular las diferencias finitas hasta las de orden 4 para los siguiente valores y . k Suponiendo que x = k, obtener el polinomio de interpolación. k

      k

      1

      2

      3

      4

      5

      6 y k

      1

      16 81 256 625 1296

      4 Sol.: x

      16.— Completar la siguiente tabla x k

      1

      2

      3

      4

      5

      6

      7 y

      1

      2

      4

      8

      15 26 . .

      k suponiendo que los datos provienen de una función polinómica.

      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

      1/2 f(x) = x un polinomio de interpolación en el segmento [1.69, 2.25].

      1/2 Sol.:

      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 2º grado. x

      1

      2

      3

      4

      i

    • – i

      f

      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 p

      3 (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 p

      4 (x). ¿Es

      sencillo realizar los cálculos insertando un punto adicional en la tabla? Justificar la respuesta.

      Sol.:

      b) (x) p 3 = 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) -5

      c) p 3 (0.47) = 0.94422; E 3 (0.47) = 10

      d) p (x) (x)–0.16776(x–0.3)(x–0.37)(x–0.41)(x–0.52) 4 = p 3 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

      6

      6

      e(0.2443)  2.04·10 ; e(0.7505)  1.59·10 21.— Completar la siguiente tabla de diferencias:

      2

      3

      4

      5

      x y y y y y y    

      ··· ··· 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: x i

      10

      20

      30

      40

      50

      60 y 0.17365 0.34202 0.50000 0.64279 0.76604 0.86603

      i 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

      x

      24.— Si se denota por P

      2 (x) el polinomio de interpolación de la función f(x) = e en los x

      nodos –1, –0.75 y –0.5, y por R

      2 (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 n  1

      

      f ( ) R x x x n b ( )   1 g

       i ( n 

      1 )!

      

    • 3

      Sol.: 0.6080 10 25.— Dada la siguiente tabla de puntos pertenecientes al gráfico de la función f(x): x

      3

      4

      5

      6

      k

      f(x k )

      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 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, e (4.5)  0.375; d) f (4.5)  42; e) f (4.5)  39