Você está na página 1de 10

Captulo 5

INTERPOLACIN POLINMICA Y
APROXIMACIN DE DATOS

A menudo se conocen los valores de la funcin f(x) en x0, x1, x2,...., xn, pero se
desconoce la expresin de f(x).

El objetivo del captulo es estimar f(x) para cualquier punto x. Si x se


encuentra entre el valor menor y mayor de los xi se dice que el problema es de
interpolacin; en cambio cuando x se encuentra fuera del rango, el problema es de
extrapolacin.

Las clases de funciones aproximantes son: polinomios, exponenciales,


racionales y trigonomtricas.

MATLAB, tiene implementada las funciones que aparecen en la tabla 2.1


para realizar la interpolacin.

Nombre Descripcin
griddata Rejilla de datos
interp1 Lookup tabla 1D
interp2 Lookup tabla 2D
interpft Con mtodo FFT

Tabla 5.1

El programa interpDemo.m de la figura 5.1, presenta el problema de


interpolacin de una manera grfica (figura 5.2); haciendo uso de las funciones
mencionadas en la tabla 5.1.

function InterpDemo()
x=[0 1 4 6];
y=[1 -1 1 -1];
x0 = 0:0.10:6;
ylin = interp1(x,y,x0,'linear');
yspline = interp1(x,y,x0,'spline');

Pgina 1
ycubic = interp1(x,y,x0,'cubic');
plot(x,y,'o');
hold on;%para colocar varios plot;por default es off
plot(x0,ylin,x0,yspline,x0,ycubic);
legend('dato','lineal','spline','cbica',0);
%pos = 0,1,2,3,4,-1; % 0 = el mejor lugar o automtico
title('Interpolacin');
Figura 5.1: interDemo.m

Interpolacin Polinmica
Los polinomios interpolantes, son los que ms se usan en los clculos por
computadora; y se basan en plantear un polinomio de grado n que pasa por los
puntos x0, x1, x2,...., xn.

Existen dos mtodos muy difundidos: el de Lagrange y de Newton.

Figura 5.2: Ejecucin de interDemo.m

Pgina 2
Considere una familia de funciones de una variable x,

( x ; a0 , a1 ,..., an ) ,

Donde existen (n + 1) coeficientes: a0, a1, a2,..., an. El problema radica en


determinar los parmetros ai para los (n + 1) pares de nmeros (xi , fi), i = 0,1,...,n ,
con la condicin:
( xi ; a0 , a1 ,..., an ) f i , i 0,..., n

Sea la forma lineal,

( x ; a0 , a1 ,..., an ) a0 0 ( x) a11 ( x) ... an n ( x)

Es aqu donde se encuentra la interpolacin polinomial

( x ; a0 , a1 ,..., an ) a0 a1 x a2 x 2 ... an x n

Forma de Lagrange
Considere el par de puntos (x0, f(x0)) y (x1, f(x1)), aproximado mediante una
lnea recta (ver figura 5.3); y constituye el caso mas simple de interpolacin.

f(x1)

P(x)

f(x0)

x0 x x1
Figura 5.3: Interpolacin lineal

Pgina 3
f ( x1 ) f ( x0 ) P( x) f ( x0 )

x1 x0 x x0
( x x0 )( f ( x1 ) f ( x0 ))
P( x) f ( x0 )
( x1 x0 )
x x1 x x0
P( x) f ( x0 ) f ( x1 )
x0 x1 x1 x0

En la figura 5.4, se observa que para una interpolacin de 5 puntos (n vale


4); se obtiene un polinomio de grado 4.
f(x1)
f(x2)
P4(x)

f(x0)
f(x4)

f(x3)

Figura 5.4: Polinomio de grado 4

Los (n + 1) puntos de x, donde existe el valor de f (x), sern utilizados para


construir un polinomio Pn(x) de grado n que interpola a f (x) en los puntos x0, x1,
x2,..., xn, y satisface:

Pn(xi) = f (xi) , i = 0, 1, ... , n

Un polinomio de grado n que se anule en todos los puntos xi, excepto en xk ,


resulta:
g k ( x) ( x xi )
i 0
ik

( x x0 )( x x1 )...( x xk 1 )( x xk 1 )...( x xn )

Adems de:

Pgina 4
g k ( xk ) ( xk xi )
i 0
ik

Luego se define la funcin de forma de Lagrange como:

g k ( x)
Lk ( x)
g k ( xk )
x xi

i 0 xk xi
ik

Donde se observa que:


1 ik
Lk ( xi )
0 ik

El polinomio de grado n que interpola a f (x) en x0, x1, x2,..., xn es:

n
Pn ( x) f ( xk ) Lk ( x)
k 0

Pn(x) se conoce como polinomio de Lagrange y Lk(x) son las funciones de forma de
Lagrange en los puntos x0, x1, x2,..., xn.

Ejemplo 1:
A modo de ejemplo usar la forma de Lagrange para producir un polinomio cbico
y evaluar para x = 2 y 3.

xi 0 1 4 6
yi 1 1 1 1

( x x1 )( x x2 )( x x3 )
L0 ( x)
( x0 x1 )( x0 x2 )( x0 x3 )

( x x0 )( x x2 )( x x3 )
L1 ( x)
( x1 x0 )( x1 x2 )( x1 x3 )

Pgina 5
( x x0 )( x x1 )( x x3 )
L2 ( x)
( x2 x0 )( x2 x1 )( x2 x3 )

( x x0 )( x x1 )( x x2 )
L3 ( x)
( x3 x0 )( x3 x1 )( x3 x2 )

Evaluando las funciones de forma de Lagrange para x = 2.

i yi=f (xi) Li (2)


0 1 -0.33333
1 -1 1.06667
2 1 0.33333
3 -1 -0.06667

P3(x) = 1L0(x) 1L1(x) +1L2(x) 1L3(x)


P3(2) = 1

Para x = 3, se consigue P3(3) = 0.

i f (xi) Li (3)
0 1 -0.25000
1 -1 0.60000
2 1 0.75000
3 -1 -0.10000

Ejemplo 2:
Para x = 1.12, se calcula P3(x), en la tabla:
i Xi Yi
0 1.05 1.02470
1 1.10 1.04881
2 1.15 1.07238
3 1.20 1.09544

Evaluando las funciones de forma de Lagrange, se encuentra P3 (1.12)= 1.0583.


i f (xi) Li (1.12)
0 1.02470 -0.064
1 1.04881 0.672
2 1.07238 0.448
3 1.09544 -0.056

Pgina 6
Lagrange
Suma = 0
for k = 0 to n
prod1 = 1
prod2 = 1
for i = 0 to n
if i k then
prod1 = prod1 * (x x[i])
prod2 = prod2 * (x[k] x[i])
L = prod1 / prod2
Suma = Suma + L * f [k]
Polinomio
Figura es 2.5:
igualAlgoritmo
a Suma de Lagrange
End Lagrange
Figura 5.5: Algoritmo de Lagrange

En la figura 5.5, se presenta el Algoritmo de Lagrange, y en la figura 5.6 el


programa lagrange.m.

function p=Lagrange(x,y,x0)
% Interpolacion por Lagrange
% Datos
% x =es el vector x
% y =es el vector f(x)
% n =el orden de la matriz
% Resultados
% L =es el polinomio de lagrange
% p =valor interpolado
n = length(x);
L = zeros(n,1);
fprintf(' k x y L\n');
for k=1:n
prod1=1;prod2=1;
for i=1:n
if i~=k
prod1=prod1*(x0-x(i));
prod2=prod2*(x(k)-x(i));
end
end
L(k)=prod1/prod2;
end
p = 0;
for k=1:n
p = p+L(k)*y(k);
fprintf('%5d%10.6f%10.6f%10.6f\n',k,x(k),y(k),L(k));
end
Figura 5.6: Lagrange.m

Pgina 7
El polinomio (x ) de grado (n + 1), se define como el producto

( x) ( x x0 )( x x1 )( x x2 )...( x xn )

Ahora la derivada de (x ) , es tal que uno de sus factores es eliminado:

' ( xi ) ( xi x0 )( xi x1 )( xi x2 )...( xi xn )

Donde el factor en cuestin ( xi xi ) es omitido del producto.

La interpolacin polinomial Lagrangeana tambin se puede escribir de la


forma

n n
( x)
Pn ( x) Lk ( x) f ( xk ) f ( xk )
k 0 k 0 ( x xk ) ' ( xk )

Donde:
( x) ( x x0 )( x x1 )...( x xi 1 )( x xi 1 )...( x xn )
Li ( x)
( x xi ) ' ( xi ) ( xi x0 )( xi x1 )...( xi xi 1 )( xi xi 1 )...( xi xn )

POLINOMIO DE LAGRANGE EN PARTICIN REGULAR

Cuando las abscisas son equidistantes, los coeficientes Lagrangeanos, han sido
tabulados para varios valores del grado del polinomio (n).
Son muy usadas, aquellas donde n es un valor par (donde existen n + 1 puntos).
Para el caso de n 1 2m 1 , las abscisas son renumeradas como
x m ,..., x1 , x0 , x1 ,..., xm .

Siendo el espacio uniforme, con ancho h ; y ste es medido desde el punto central;
y siendo Li (x) invariante a cualquier cambio lineal, entonces:

h xi 1 xi espaciamiento uniforme
Pgina 8
xi x0 ih

Para representar un nmero real x alrededor de x0, sera: x x0 hs


( x x m )....( x x0 )( x x1 )...( x xi 1 )( x xi 1 )...( x xm )
Li ( x)
( xi x m )....( xi x0 )( xi x1 )...( xi xi 1 )( xi xi 1 )...( xi xm )
( s m)( s m 1)...( s i 1)( s i 1)...( s m 1)( s m)
Li ( x) Li ( s)
(i m)(i m 1)...( 2)(1)( 1)( 2)...(i m 1)(i m)

Para valores de i 1, 2,..., m . Siendo la numeracin


Lm ( x), Lm1 ( x),..., L0 ( x),..., Lm1 ( x), Lm ( x) .

Se cumple que:
Li ( s) Li ( s)

Ejemplo 3:
Los coeficientes de Lagrange para un polinomio de grado 2, es conocido como
Lagrange de 3 puntos; y para valores de m = 1, se presenta en la tabla 5.2.

L1 ( s)
s s 1 ss 1 , L (s) s 1s 1 s 1s 1 , L (s) s 1s s 1s
1 1 1 2
0
1 1 1
21 2
En realidad se facilita la construccin de la siguiente tabla gracias al hecho que:
Li ( s) Li ( s)
s L1 ( s) L0 ( s ) L1 (s)
0.0 0 1 0 0.0
0.1 -0.045 0.99 0.055 -0.1
0.2 -0.080 0.96 0.120 -0.2
0.3 -0.105 0.91 0.195 -0.3
0.4 -0.120 0.84 0.280 -0.4
0.5 -0.125 0.75 0.375 -0.5
0.6 -0.120 0.64 0.480 -0.6
0.7 -0.105 0.51 0.595 -0.7
0.8 -0.080 0.36 0.720 -0.8
0.9 -0.045 0.19 0.855 -0.9
1.0 0 0 1 -1.0
L1 (s) L0 ( s ) L1 ( s) s

Tabla 5.2: Coeficientes de Lagrange para 3 puntos

Pgina 9
Ejemplo 4:
Desde la tabla, interpolar con el polinomio de Lagrange de grado 2 a tres
decimales, cuando x = 1.164 y 1.142.

x 1.14 1.15 1.16 1.17


y 0.1185 0.1189 0.1213 0.1230

a) x = 1.164, es cercano a 1.16; y


x 1.15 x0 1.16 1.17
y 0.1189 0.1213 0.1230
h 1.17 1.16 0.01
De x x0 sh, con x0 1.16
1.164 1.16
s 0.4
0.01
P2(1.164) = -0.12 (0.1189) + 0.84 (0.1213) + 0.28 (0.1230) = 0.1221

b) x = 1.142, es cercano a 1.14; y


x 1.14 x0 1.15 1.16
y 0.1185 0.1189 0.1213

h 1.16 1.15
De x x0 sh, con x0 1.15
1.142 1.15
s 0.8
0.01
P2(1.142) = 0.72 (0.1185) + 0.36 (0.1189) -0.08 (0.1213) = 0.1184

REFERENCIAS
1. Richard Burden - Douglas Faires - Annete Burden, Numerical Analysis,
Cengage Learning, 2016, Tenth Edition.
2. F.B. Hildebrandt, Introduction to Numerical Analysis, Dover Publications
Inc., 2003, Second Edition.
3. J. Stoer - R. Burlisch., Introduction to Numerical Analysis, Springer -
Verlag, 2002, Third Edition.

Pgina 10

Você também pode gostar