Interpolación Polinomial - ayudasingenieria · f (x) x (xi, f (xi))6 puntos polinomio de grado 5...
Transcript of Interpolación Polinomial - ayudasingenieria · f (x) x (xi, f (xi))6 puntos polinomio de grado 5...
f ( x )
x
(x i , f (x i))
6 puntos
polinomio de grado 5
Interpolación Polinomial
Dados n+1 puntos distintos (xi,f(xi)), obtener el único polinomio de
grado n que pase por todos ellos para estimar f(x).
Interpolación Polinomial
Datos con error importante Regresión
Datos muy precisos Interpolación
Los datos se obtienen a través de mediciones o mediante cálculos.
Ejemplos de Interpolación Polinomial
De primer grado De segundo grado De tercer grado
(lineal) (cuadrática) (cúbica)
Polinomio de Interpolación de Lagrange de 1º Grado
f 1(x )
x0 x1
x
f (x1)
f (x 0)
f 1 (x )
f 1( x ) :Polinomio interpolante de grado 1Sustituimos en (1):
f 1( x)=a1( x− x1)+ a0( x− x0)
f ( x0)=a1( x0− x1)
a1=f ( x0)
( x0− x1)
f ( x1)=a0 ( x1− x0)
a0=f ( x1)
( x1− x0)
(1)
x= x0
Sustituimos en (1):x= x1
(2)
(3)
Polinomio interpolante de 1º grado
Polinomio de Interpolación de Lagrange de 1º Grado
Reemplazamos y dados por (2) y (3) en (1):
f 1( x)=f ( x0)
( x0− x1)( x− x1)+
f ( x1)
( x1− x0)( x− x0)
f 1( x)=( x− x1)
( x0− x1)⏟L0( x)
f ( x0)+( x− x0)
( x1− x0)⏟L1( x)
f ( x1)
Reordenamos:
f 1( x)=L0( x) f ( x0)+ L1( x) f ( x1)Polinomio de Lagrange de 1º grado
y se denominan lagrangianos.
a0 a1
L0( x) L1( x)
Propiedades de los Lagrangianos
Li( x)= { 1 si x= xi
0 si x= x j
Para un polinomio de Lagrange de grado 1:
L0( x)= { 1 si x= x0
0 si x= x1
L1( x)= { 1 si x= x1
0 si x= x0
L i(x )
x0 x1
x
L0( x) L1(x )
1
Gráfico del Polinomio de Interpolación de Lagrange de 1º Grado
Evaluación en :
L0( x0)=1 L1( x0)=0
x= x0
f 1(x )
x0 x1
x
L0 ( x) f ( x 0)L1( x) f (x 1)
f (x1)
f (x 0)
f 1 (x )
f 1(x )=L0( x) f (x0)+L1(x ) f (x1)
f 1( x ):Polinomio interpolante de Lagrange de grado 1
f 1( x0)=1⋅ f ( x0)+0⋅ f ( x1)
= f ( x0)
Evaluación en :
L0( x1)=0 L1( x1)=1
x= x1
f 1( x1)=0⋅ f ( x0)+1⋅ f ( x1)
= f ( x1)
Polinomios de Interpolación de Lagrange – Expresión General
Expresión de un polinomio de interpolación de Lagrange de grado n :
f n( x)=∑i=0
n
L i( x)⋅ f ( x i)
donde los lagrangianos se definen como:
Li ( x)=∏i=0i≠ j
n ( x− x j)
( x i− x j)
L i( x)=( x− x0)
( x i− x0)
( x− x1)
( xi− x1)⋯
( x− x i−1)
( xi− x i−1)
( x− xi+1)
( xi− xi+1)⋯
( x− xn)
( xi− xn)
Polinomio de Lagrange de 2º Grado
f 2 ( x)=L0( x) f ( x0)+ L1( x) f ( x1)+ L2( x) f ( x2)
L0 ( x)=( x− x1)
( x0− x1)
( x− x2)
( x0−x2)
L1( x)=( x− x0)
( x1−x0)
( x− x2)
( x1− x2)
L2 ( x)=( x− x0)
( x2− x0)
( x− x1)
( x2−x1)
L i(x )
x0 x 2 x
L0( x) L1(x )
1
x1
L2(x )
Gráfica de los lagrangianos
Polinomio de Lagrange de 2º Grado
x0 x 2 xx1
f 2( x)
f (x 2)
f (x 0)
f (x1)
L0 ( x) f ( x 0)
L1( x) f (x 1)
L 2(x ) f ( x 2)
f 2(x )
f 2( x)=L0 (x ) f (x0)+L1( x) f (x1)+L2( x) f (x2)
f 2( x) : Polinomio interpolante de Lagrange de grado 2
Ejemplo de Aplicación: EnunciadoEstimar la densidad del aire para una temperatura de 70 ºC mediante un polinomio de Lagrange de tercer grado:
Ejemplo de Aplicación: SoluciónSe deben elegir los valores de xi más cercanos a x = 70, y sus respectivos valores de f(xi)
puntos elegidos
Ejemplo de Aplicación: Solución
f 3( x=70)=0,3⋅1,29+(−0,785)⋅1,20+1,4⋅1,09+0,175⋅0,946
x0=0 x1=20 x2=50 x3=100
f ( x0)=1,29 f ( x1)=1,20 f ( x2)=1,09 f ( x3)=0,946
x=70 f 3 ( x=70)=?
=−0,875
L1( x)=(70− x0)
( x1− x0)
(70− x2)
( x1− x2)
(70− x3)
( x1− x3)
L2 ( x=70)=(70− x0)
( x2− x0)
(70− x1)
( x2− x1)
(70− x3)
( x2− x3)L3 ( x)=
(70− x0)
( x3− x0)
(70− x1)
( x3− x1)
(70− x2)
( x3− x2)
L0( x=70)=(70− x1)
( x0− x1)
(70− x2)
( x0− x2)
(70− x3)
( x0− x3)
=0,3
=1,4 =0,175
f 3( x=70)=1,029
Interpolación de Lagrange: Pseudocódigo
# algoritmo para estimar y(x) mediante un polinomio # interpolante de Lagrange (de grado n) a partir de # los datos X, Y.
leer X, Y, x, n # X,Y: vectores; n+1: tamaño de Ysuma = 0 # n: grado del polinomiorepetir para i desde 0 hasta n: producto = Y(i) repetir para j desde 0 hasta n: si j es distinto de i: producto = producto * (xX(j)) / (X(i)X(j)) suma = suma + productomostrar suma # muestra la estimación y(x)
Interpolación de Lagrange: Observaciones importantes
Implementación en Python:
Lagrange.py
interpLagrange.py
graficoPoli.py
(módulo)
Interpolación de Lagrange: Observaciones Importantes
● Se deben elegir los valores xi más cercanos al valor de x donde se quiere estimar f(x).
● No se debe trabajar con polinomios de alto grado.
● No es necesario que los valores de xi estén uniformemente distribuidos.