Interpolación de Lagrange

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

Análisis Numérico – Ingeniería Química

APROXIMACIÓN DE FUNCIONES

POLINOMIO DE INTERPOLACIÓN DE LAGRANGE

Supóngase el caso en que se dispone de una serie de datos dados por el conjunto
{( x 0 , y 0 ),( x 1 , y 1),(x 2 , y 2) ,... ,(x n , y n)}, correspondientes a una función desconocida, y que se
requiere representarlos por medio de un polinomio, o bien obtener el valor de interpolación para un
valor de x que no esté presente en el conjunto de datos. Otra situación posible es cuando se
pretende aproximar una función f ( x) conocida mediante un polinomio. En todos estos casos se
puede aplicar el método de interpolación polinómica.

El conjunto de datos de pares ordenados, usualmente se presentan arreglados en forma de tabla:

i xi y i=f (x i)
0 x0 f (x 0)
1 x1 f ( x1 )
2 x2 f ( x2 )
⋮ ⋮ ⋮
n xn f (x n)

Como ya se mencionó, los valores f (xi ) , i=0,1,... , n , pueden ser o no de una función conocida,
de cualquier forma el objetivo es determinar por interpolación, para el valor f (x p ) en un x p no
presente en la tabla, o bien, representar los datos de la tabla por medio de un polinomio pn ( x) de
grado n , con el requisito de que el mismo pase por todos los puntos de la tabla, es decir:

pn (x i)=f (x i ) , i=0,1,. .. , n . (1)

Se propone para el polinomio de interpolación, la siguiente combinación lineal:


n
pn (x)=∑ Li ( x)⋅f ( x i) ,
i=0

en donde los Li ( x) son polinomios de grado n . Las condiciones establecidas en (1) son
importantes para la determinación de estos polinomios:
n
pn ( x 0)=∑ Li ( x 0)⋅f (x i )=f (x 0),
i=0
n
pn ( x 1 )=∑ Li ( x 1)⋅f (x i)=f ( x 1 ), (2)
i=0

n
pn ( x n )=∑ Li ( x n)⋅f (x i )=f (x n).
i=0

1 Carlos Albarracín
Análisis Numérico – Ingeniería Química

Desplegando la primera se tiene:

pn (x 0)=L0 ( x 0)f ( x0 )+ L1 ( x 0) f ( x1 )+...+ Ln (x 0)f (x n )=f (x 0) .

Se observa que si L0 (x 0)=1, L1 (x 0)=0,... , Ln (x 0)=0, entonces pn (x 0)=f ( x0 ) . Para la segunda


de (2) es:

pn (x 1)=L 0 ( x1 )f ( x 0 )+ L1(x 1 )f ( x 1)+...+ Ln ( x 1) f (x n)=f (x 1 ),

si L0 ( x 1)=0, L1 ( x 1)=1,... , Ln ( x1 )=0, entonces pn (x 1)=f ( x 1 ). Para la última expresión de (2),


si L0 ( x n)=0, L1 ( x n )=0,. .. , Ln ( x n )=1, se verifica pn (x n)=f ( xn ) . De esa forma se verificarán
todas las condiciones establecidas en (1). Estos resultados se expresan en forma compacta:

Li (x j )= {10 ,, si j=i
si j≠i
, i , j=0,1,2 ,... , n . (3)

A partir de los valores x i dados en la tabla y del resultado recién obtenido, que nos dice que los
x j≠x i son ceros de los polinomios, se puede plantear:

L0 (x)=C0 (x −x1 )(x−x 2)⋯( x−x n−1)( x −xn ),


L1 (x)=C 1 (x−x 0 )(x−x 2)⋯( x−x n−1)( x−x n ),

Ln (x)=Cn (x−x 0 )(x−x 1)(x −x2 )⋯(x−x n−1),

en donde las constantes C0 , C1 , ... ,C n , tiene por finalidad permitir ajustar la productoria para que
L0 (x 0)=L1(x 1 )=...=Ln (x n )=1.

La siguiente expresión es válida para todos los Li :

Li (x)=C i (x−x 0 )(x−x 1)⋯( x−x i−1 )(x−x i+1 )⋯( x− xn ),

es decir:
n
Li (x)=C i ∏ x−x j . (4)
j =0
j≠i

Las constantes Ci se obtienen a partir de (3), es decir:

n
1
Li (x i)=C i ∏ x i−x j =1 → C i= n
,
∏ x i−x j
j=0
j ≠i
j=0
j≠i

n
x−x j
y luego de reemplazar en (4) se tiene Li (x)=∏ , i=0,1,2,. .. ,n .
j=0 xi −x j
j ≠i

2 Carlos Albarracín
Análisis Numérico – Ingeniería Química

En resumen, el polinomio de interpolación de Lagrange se determina a partir de las siguientes


fórmulas:
n
pn ( x)=∑ Li (x)⋅f (x i), (5)
i=0
en donde
n
x−x j
Li (x)=∏ , i=0,1,2,. .. ,n . (6)
j=0 xi −x j
j ≠i

Se puede demostrar que un polinomio de interpolación pn ( x) es único para un conjunto dado de


datos, el que por supuesto, no podrá tener valores x i repetidos.

Al aproximar una función f ( x) o un conjunto de puntos por medio de un polinomio de


interpolación, se cometerá un error, al menos que se esté interpolando precisamente un polinomio.
En el siguiente teorema se presenta un resultado al respecto:

TEOREMA
Sea {(x 0 , y 0 )(x 1 , y 1 ),( x2 , y 2), ...,( xn , y n )}, un conjunto de n+1 pares de valores reales
pertenecientes a D(f ) , el dominio de la función f , y sea I =[a , b ], un intervalo que contenga
los puntos x o , x 1,. .. , x n y x , donde x es un punto cualquiera de D(f ) . Si f posee derivadas
continuas, hasta la de orden n+1 en el intervalo I , entonces para cada x∈ I , existe por lo
menos un punto c=c(x ) en el intervalo abierto (a , b), tal que es:

f (n+1 ) (c ( x)) n
f ( x)− p n( x)=
( n+1)! j=0
∏ ( x−x j ).

Ejemplo 1
Para la siguiente tabla de datos:

i xi y i=f (x i)
0 1.05 0.54
1 1.40 1.23
2 1.88 1.36
3 2.32 1.05

Construir el polinomio de interpolación de Lagrange y obtener el valor de interpolación para


x=1.6 .

Para determinar el polinomio de interpolación, se aplica la (6) y la (5):

3 Carlos Albarracín
Análisis Numérico – Ingeniería Química

L0 ( x)=
( x− x1
x 0−x 1 )( x−x 2
x 0−x 2 )( x−x 3
x 0 −x3 ) (
=
x−1.40
1.05−1.40 )( 1.05−1.88
x−1.88
)( 1.05−2.32
x−2.32
)=
= ( x−1.40
−0.35 )( −0.83 )( −1.27 )
x −1.88 x−2.32 3
= −2.7105 x +15.1788 x −27.7599 x +16.5510, 2

L1 (x )=
( x−x 0
x 1−x 0 )( x−x 2
x 1−x 2 )( x−x 3
x 1−x 3
=
) (
x−1.05
1.40−1.05 )( 1.40−1.88
x−1.88
)( 1.40−2.32
x −2.32
)=
= ( x−1.05
0.35 )( −0.48 )( −0.92 )
x −1.88 x−2.32 3
= 6.4700 x −33.9674 x +56.7521 x −29.6304, 2

( )( )( ) 1.88−1.05 1.88−1.40 1.88−2.32 ) =


L2 (x )=
x−x 0
x 2−x 0 (
x −x1
x−1.05
x 2−x 1 )(
x−x 3
x−1.40
x 2−x3 )(=
x−2.32

= (
0.83 )( 0.48 )( −0.44 )
x−1.05 x −1.40 x−2.32 3 2
= −5.7046 x + 27.2111 x −40.8110 x+19.4551,

L3 (x)=
( x−x 0
x 3−x 0 )( x−x 1
x3 −x1 )( x−x 2
x 3−x 2
=
) ( x−1.05
2.32−1.05 )( 2.32−1.40
x−1.40
)( 2.32−1.88
x−1.88
)=
= ( x−1.05
1.27 )( 0.92 )( 0.44 )
x −1.40 x−1.88 3
= 1.9452 x −8.4226 x + 11.8188 x − 5.3756 . 2

En la siguiente figura se muestran los polinomios Li (x) , i=0,1,2,3.

p3 (x)=(−2.7105 x 3 +15.1788 x 2−27.7599 x +16.5510 )⋅0.54+


( 6.4700 x 3−33.9674 x 2 +56.7521 x−29.6304 )⋅1.23+
(−5.7046 x 3 +27.2111 x 2−40.8110 x+ 19.4551 )⋅1.36+
( 1.9452 x 3−8.4226 x 2+11.8188 x −5.3756 )⋅1.05,

4 Carlos Albarracín
Análisis Numérico – Ingeniería Química

es decir:
p3 (x)=0.7786 x 3 −5.4200 x 2 +11.7215 x − 6.6933 .

El valor de interpolación en x=1.6 se obtiene haciendo:

p3 (1.6)=1.3750 .

Este valor de interpolación también se puede determinar sin la construcción del polinomio de
interpolación, al plantear:
n
p3 (1.6)=∑ Li (1.6)⋅f (x i),
i=0

L0 (1.6)=
( 1.6−x 1
x 0−x 1 )( 1.6−x 2
x 0−x 2 )( ) (
1.6−x 3
x 0 −x3
=
1.6−1.40
)(
1.6−1.88
1.05−1.40 1.05−1.88 )( 1.05−2.32
1.6−2.32
) = −0.1093,
L1 (1.6)= ( 1.6−x 0
x 1−x 0 )( 1.6−x 2
x 1−x 2 )( ) (
1.6−x 3
x 1−x 3
=
1.6−1.05
1.40−1.05 )( 1.40−1.88
1.6−1.88
)( 1.40−2.32
1.6−2.32
) = 0.7174,
L2 (1.6)=
( 1.6−x 0
x2 − x0 )( 1.6−x 1
x 2−x 1 )( ) (
1.6−x 3
x 2−x 3
=
1.6−1.05
)(
1.6−1.40
1.88−1.05 1.88−1.40 )( 1.88−2.32
1.6−2.32
) = 0.4518,
L3 (1.6)=
( 1.6−x 0
x3 −x 0 )( 1.6−x1
x 3−x 1 )( ) (
1.6−x 2
x 3 −x2
=
1.6−1.05
2.32−1.05 )( 2.32−1.40
1.6−1.40
)( 2.32−1.88
1.6−1.88
) = −0.0599 .
p3 (1.6)=−0.1093⋅0.54 +0.7174⋅1.23+0.4518⋅1.36−0.0599⋅1.05 = 1.3749 .

5 Carlos Albarracín
Análisis Numérico – Ingeniería Química

CONSIDERACIONES PRÁCTICAS

La cantidad de datos es un aspecto importante en la interpolación polinómica. Con el incremento de


los mismos, los polinomios comienzan a mostrar un comportamiento oscilatorio en los extremos del
intervalo de interpolación. Oscilaciones que se incrementan en magnitud con el aumento de la
cantidad de puntos considerados. Esto puede conducir, desde el punto de vista de la interpretación
física, a la obtención de resultados de interpolación incorrectos. Es por ello que se aconseja analizar
con cuidado los valores obtenidos, y de surgir discrepancias conceptuales, es conveniente
considerar una menor cantidad de puntos en la tabla de datos. En la siguiente figura, se muestra el
polinomio de interpolación de una tabla con 10 puntos, y que a priori se sabe que los valores de
ordenadas deben ser positivo y crecientes con los valores de abscisas.

Sin embargo, como puede apreciarse en la figura 4, el polinomio presenta valores negativos en el
intervalo [ 780,840 ] .

6 Carlos Albarracín
Análisis Numérico – Ingeniería Química

NODOS EQUIDISTANTES

Cuando los nodos de interpolación se encuentran separados por la misma distancia h , a partir de
x 0 se puede plantear para cada nodo

x i+1=x i +h , i=0,1,2 ,... , n−1.

Si se propone el siguiente cambio de variable

x = x (t) = x 0 +t⋅h , (7)

para cada uno de los nodos de la malla se tendrá

x 0=x 0 +0⋅h, x 1=x 0 +h , ⋯ x i=x 0 +i⋅h , i=0,1 ,... , n .

A partir de (7), para los polinomios de Lagrange se tendrá


n
(x +t⋅h)−( x + j⋅h)
Li (x) = L*i (t ) = ∏ ( x0 + i⋅h)−(x 0+ j⋅h) ,
j=0 0 0
j≠i
es decir
n
*
L (t) =
i ∏ t− j
i− j
.
j=0
j≠i

Por lo tanto el polinomio de interpolación de Lagrange resulta

n
Pn (x) = P (t) =
*
n ∑ L*i (t )⋅f ( x i ). (8)
i=0

Para aplicar (8) en el cálculo de interpolación en un valor x=x p , es preciso determinar el valor de
x −x
la variable t , esto es, a partir de (7) resulta t p = p 0 .
h

7 Carlos Albarracín

También podría gustarte