Está en la página 1de 22

INTERPOLACIÓN

MÉTODOS NUMÉRICOS
FACULTAD DE INGENIERÍA CIVIL
UNIVERSIDAD DE CUENCA

DOCENTE: Fernando Zalamea


INTRODUCCIÓN
TEOREMA DE APROXIMACIÓN
Dados 2 puntos: P1(x0,y0) y P2(x1,y1) se require un polinomio que
pase por dichos puntos.

Polinomios de Considere las siguientes funciones:


Lagrange
(caso lineal) El polinomio de Lagrange para 2 puntos se define como:

Observe que si x=x0, entonces:

Lo cual implica:

En cambio, si x=x1, entonces:

Cabe indicar que P(x) es el único polinomio de grado 1 que pasa por (x0,y0) y (x1,y1)
Obtención del polinomio de lagrange,
generalización
polinomio de lagrange, generalización
Obtención del 𝒄𝒐𝒆𝒇𝒊𝒄𝒊𝒆𝒏𝒕𝒆 𝒑𝒐𝒍𝒊𝒏ó𝒎𝒊𝒄𝒐 Ln,k(x)
𝑃𝑟𝑜𝑝𝑖𝑒𝑑𝑎𝑑𝑒𝑠: 𝑦
polinomio de Lagrange, generalización
Ejemplo

(𝑥 − 𝑥1 )(𝑥 − 𝑥2 )
𝐿0 =
(𝑥0 − 𝑥1 )(𝑥0 − 𝑥2 )
(𝑥 − 𝑥0 )(𝑥 − 𝑥2 )
𝐿1 =
(𝑥1 − 𝑥0 )(𝑥1 − 𝑥2 )
(𝑥 − 𝑥0 )(𝑥 − 𝑥1 )
𝐿2 =
(𝑥2 − 𝑥0 )(𝑥2 − 𝑥1 )
y puesto que,

donde,

Por lo que, el polinomio de segundo grado es:


es:

Ejemplo
TEOREMA
Ejercicio
Dado 4 puntos distintos P1(x0,y0), P2(x1,y1), P3(x2,y2) y P4(x3,y3), realizar un
algoritmo en pseudocódigo que mediante el polinomio de Lagrange de grado 3,
interpole n valores de x

(𝑥 − 𝑥1 )(𝑥 − 𝑥2 )(𝑥 − 𝑥3 )
𝐿0 =
(𝑥0 − 𝑥1 )(𝑥0 − 𝑥2 )(𝑥0 − 𝑥3 )

(𝑥 − 𝑥0 )(𝑥 − 𝑥2 )(𝑥 − 𝑥3 )
𝐿1 =
(𝑥1 − 𝑥0 )(𝑥1 − 𝑥2 )(𝑥1 − 𝑥3 )

(𝑥 − 𝑥0 )(𝑥 − 𝑥1 )(𝑥 − 𝑥3 )
𝐿2 =
(𝑥2 − 𝑥0 )(𝑥2 − 𝑥1 )(𝑥2 − 𝑥3 )

(𝑥 − 𝑥0 )(𝑥 − 𝑥1 )(𝑥 − 𝑥2 )
𝐿3 =
(𝑥3 − 𝑥0 )(𝑥3 − 𝑥1 )(𝑥3 − 𝑥2 )
ALGORITMO EN PSEUDOCÓDIGO

TITULO: Interpolación mediante un polinomio de Lagrange de tercer grado

DATOS DE ENTRADA:
XYi,j -> Valores de los puntos por donde pasa la función,
con 1<=i<=4 y 1<=j<=2
n -> Número de valores a interpolar
xi -> Volores de x, con 1<=i<=n

SALIDA:
¨Para ¨, xi, ¨el valor interpolado es:¨, yi, con 1<=i<=n
ALGORITMO EN PSEUDOCÓDIGO
PASOS:
Paso 1: Para i=1,2,…,n Realizar
(𝑥𝑖 −𝑋𝑌2,1 )(𝑥𝑖 −𝑋𝑌3,1 )(𝑥𝑖 −𝑋𝑌4,1 )
Paso 2: 𝐿0 = (𝑋𝑌 −𝑋𝑌 )(𝑋𝑌 −𝑋𝑌 )(𝑋𝑌 −𝑋𝑌
1,1 2,1 1,1 3,1 1,1 4,1 )

(𝑥𝑖 −𝑋𝑌1,1 )(𝑥𝑖 −𝑋𝑌3,1 )(𝑥𝑖 −𝑋𝑌4,1 )


Paso 3: 𝐿1 = (𝑋𝑌
2,1 −𝑋𝑌1,1 )(𝑋𝑌2,1 −𝑋𝑌3,1 )(𝑋𝑌2,1 −𝑋𝑌4,1 )

(𝑥𝑖 −𝑋𝑌1,1 )(𝑥𝑖 −𝑋𝑌2,1 )(𝑥𝑖 −𝑋𝑌4,1 )


Paso 4: 𝐿2 = (𝑋𝑌
3,1 −𝑋𝑌1,1 )(𝑋𝑌3,1 −𝑋𝑌2,1 )(𝑋𝑌3,1 −𝑋𝑌4,1 )

(𝑥𝑖 −𝑋𝑌1,1 )(𝑥𝑖 −𝑋𝑌2,1 )(𝑥𝑖 −𝑋𝑌3,1 )


Paso 5: 𝐿3 = (𝑋𝑌
4,1 −𝑋𝑌1,1 )(𝑋𝑌4,1 −𝑋𝑌2,1 )(𝑋𝑌4,1 −𝑋𝑌3,1 )

Paso 6: 𝑦𝑖 = 𝐿0 ∗ 𝑋𝑌1,2 + 𝐿1 ∗ 𝑋𝑌2,2 +𝐿2 ∗ 𝑋𝑌3,2+𝐿3 ∗ 𝑋𝑌4,2


Paso 7: SALIDA ¨Para ¨, xi, ¨el valor interpolado es:¨, yi
Paso 8: PARAR
Ejercicio para presentar en grupo
Dado m+1 puntos distintos P1(x0,y0), P2(x1,y1), P3(x2,y2), … y Pm(xm+1,ym+1),
realizar un algoritmo en pseudocódigo, y programado en Python, que
mediante un polinomio de Lagrange de grado m, interpole n valores de x
Escuchar este video
Manejo de archivo de texto con python
Curso Python. Archivos externos I. Vídeo 37 - YouTube
Método de vandermonde, caso lineal
Dados 2 puntos: P1(x0,y0) y P2(x1,y1) se require un
polinomio que pase por dichos puntos, este
polinomio es de la forma:
𝑃1 𝑥 = 𝑎0 + 𝑎1 𝑥
Para 𝑥 = 𝑥0 , se debe cumplir: 𝑎0 + 𝑎1 𝑥0 = 𝑦0
Para 𝑥 = 𝑥1 , se debe cumplir: 𝑎0 + 𝑎1 𝑥1 = 𝑦1
Por tanto:
1 𝑥0 𝑎0 𝑦0
∗ 𝑎 = 𝑦
1 𝑥1 1 1
Obtención del polinomio de grado n,
generalización
Método de vandermonde, generalización
Dados n+1 puntos distintos: P1(x0,y0), P2(x1,y1), … , Pn+1(xn,yn) se require un
polinomio de grado n que pase por dichos puntos, este polinomio es de la forma:

𝑃𝑛 𝑥 = 𝑎0 + 𝑎1 𝑥 + 𝑎2 𝑥 2 + ⋯ + 𝑎𝑛 𝑥 𝑛

Para 𝑥 = 𝑥0 , se debe cumplir: 𝑎0 + 𝑎1 𝑥01 + 𝑎2 𝑥02 + ⋯ + 𝑎𝑛 𝑥0𝑛 = 𝑦0


Para 𝑥 = 𝑥1 , se debe cumplir: 𝑎0 + 𝑎1 𝑥11 + 𝑎2 𝑥12 + ⋯ + 𝑎𝑛 𝑥1𝑛 = 𝑦1
Para 𝑥 = 𝑥2 , se debe cumplir: 𝑎0 + 𝑎1 𝑥21 + 𝑎2 𝑥22 + ⋯ + 𝑎𝑛 𝑥2𝑛 = 𝑦2

Para 𝑥 = 𝑥𝑛 , se debe cumplir: 𝑎0 + 𝑎1 𝑥𝑛1 + 𝑎2 𝑥𝑛2 + ⋯ + 𝑎𝑛 𝑥𝑛𝑛 = 𝑦𝑛
Método de vandermonde, generalización

Por tanto:
1 𝑥01 𝑥02 ⋯ 𝑥0𝑛 𝑎0 𝑦0
1 𝑥11 𝑥12 ⋯ 𝑥1𝑛 𝑎1 𝑦1
1 𝑥21 𝑥22 ⋯ 𝑥2𝑛 ∗ 𝑎2 = 𝑦2
⋮ ⋮ ⋮ ⋱ ⋮ ⋮ ⋮
1 𝑥𝑛1 𝑥𝑛2 ⋯ 𝑥𝑛𝑛 𝑎𝑛 𝑦𝑛

Sin embargo, la matriz del sistema de ecuaciones es una matriz mal condicionada.
Ejercicio
Dado m+1 puntos distintos P1(x0,y0), P2(x1,y1), P3(x2,y2), … y Pm(xm+1,ym+1),
realizar un algoritmo en pseudocódigo, y programado en Python, interpole n
valores de x, mediante el método de Vandermonde. Para solucionar el sistema
de ecuaciones utilice el método de Gauss con pivoteo escalado de columna
GRACIAS

También podría gustarte