29
Interpolación Javier Segura Cálculo Numérico I. Tema 3. Javier Segura (Universidad de Cantabria) Interpolación CNI 1 / 29

Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

  • Upload
    others

  • View
    67

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación

Javier Segura

Cálculo Numérico I. Tema 3.

Javier Segura (Universidad de Cantabria) Interpolación CNI 1 / 29

Page 2: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Contenidos:

1 Interpolación de LagrangeForma de LagrangeTeorema del restoDiferencias divididas de Newton

2 Interpolación de Hermite

3 Interpolación de ChebyshevComportamiento del error en la interpolación de LagrangeInterpolación de Chebyshev

4 Interpolación mediante funciones tipo “spline"

Javier Segura (Universidad de Cantabria) Interpolación CNI 2 / 29

Page 3: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Lagrange

Estructura de la presentación:

1 Interpolación de LagrangeForma de LagrangeTeorema del restoDiferencias divididas de Newton

2 Interpolación de Hermite

3 Interpolación de ChebyshevComportamiento del error en la interpolación de LagrangeInterpolación de Chebyshev

4 Interpolación mediante funciones tipo “spline"

Javier Segura (Universidad de Cantabria) Interpolación CNI 3 / 29

Page 4: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Lagrange

Interpolación de Lagrange

Para cualquier conjunto de n + 1 (n ≥ 0) números distintos x0, x1, ..., xny cualquier conjunto de números arbitrarios y0, y1, ..., yn, existe unúnico polinomio Pn(x) de grado menor o igual que n tal quePn(xk ) = yk para i = 0,1,2, ...,n.

Al este polinomio Pn(x) se le llama polinomio de interpolación deLagrange, y se dice que interpola los n + 1 puntos (xi , yi),i = 0,1,2, ...,n.Nuestro problema será encontrar tal polinomio, para lo cualestudiaremos dos métodos: Fórmula de Lagrange y diferenciasdivididas de Newton.

Javier Segura (Universidad de Cantabria) Interpolación CNI 4 / 29

Page 5: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Lagrange Forma de Lagrange

Forma de Lagrange

Dados n + 1 puntos (xi , yi ), i = 0,1, ...,n (xi 6= xj ⇐⇒ i 6= j), el únicopolinomio Pn(x) de grado menor o igual n que pasa por estos n + 1 puntos,es decir, tal que Pn(xi ) = yi , i = 0,1,2, ...,n. es

Pn(x) = y0L0(x) + y1L1(x) + ...+ ynLn(x),

donde

Li (x) =

n∏j=0,j 6=i

(x − xj )

n∏j=0,j 6=i

(xi − xj )

≡ (x − x0)...(x − xi−1)(x − xi+1)...(x − xn)

(xi − x0)...(xi − xi−1)(xi − xi+1)...(xi − xn)

Javier Segura (Universidad de Cantabria) Interpolación CNI 5 / 29

Page 6: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Lagrange Teorema del resto

Cuando interpolamos valores de una función, el siguiente resultadopuede servir para estimar o acotar el error cometido al aproximar lafunción por el polinomio.

Sea f (x) una función continua en [a,b] y derivable n + 1 veces en(a,b). Si Pn(x) es el polinomio de grado menor o igual que n queinterpola f (x) entre los n + 1 nodos distintos x0...xn ∈ [a,b] entonces∀x ∈ [a,b] ∃ζx ∈ (a,b), dependiente de x , tal que

f (x) = Pn(x) +f (n+1)(ζx )

(n + 1)!

n∏j=0

(x − xj) ≡ Pn(x) + Rn(x)

donde se dice que Rn(x) es el resto y denotamosn∏

j=0

(x − xj) = (x − x0)...(x − xn).

Javier Segura (Universidad de Cantabria) Interpolación CNI 6 / 29

Page 7: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Lagrange Diferencias divididas de Newton

Forma de NewtonSi x0, x1, ..., xn son puntos distintos y f (x) está definida en [a,b], xi ∈ [a,b]i = 0,1, ...,n, entonces el polinomio interpolador de f (x) entre estos puntosse puede escribir como

Pn(x) = f (x0) + (x − x0)f [x0, x1] + (x − x0)(x − x1)f [x0, x1, x2] + ...+(x − x0)(x − x1)...(x − xn−1)f [x0, x1, ..., xn] =

=n∑

i=0

f [x0...xi ]i−1∏j=0

(x − xj )

Javier Segura (Universidad de Cantabria) Interpolación CNI 7 / 29

Page 8: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Lagrange Diferencias divididas de Newton

La interpolación con las diferencias divididas de Newton es, engeneral, más fácil de computar que la utilización de la fórmula deLagrange, y puede ser evaluada de forma recursiva.En efecto, no es difícil demostrar que

f [xi . . . xi+k ] =f [xi+1...xi+k ]− f [xi ...xi+k−1]

xi+k − xi(1)

Lo que permite generar las diferencias divididas con k + 1 argumentosa partir de las diferencias con k argumentos.

Javier Segura (Universidad de Cantabria) Interpolación CNI 8 / 29

Page 9: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Lagrange Diferencias divididas de Newton

Por ejemplo, en el caso de interpolar una función f (x) en tres puntos distintosx0, ..., x2, , se puede plantear la siguiente tabla de diferencias divididas:

xi f [] f [, ] f [, , ]

x0 f [x0] = f (x0)

f [x0, x1] =f [x1]− f [x0]

x1 − x0

x1 f [x1] = f (x1) f [x0, x1, x2] =f [x1, x2]− f [x0, x1]

x2 − x0

f [x1, x2] =f [x2]− f [x1]

x2 − x1x2 f [x2] = f (x2)

Observemos que cada diferencia dividida se forma tomando la diferencia de lasdiferencias divididas vecinas (a la derecha) y dividiendo por la diferencia de abscisas;los valores de las abscisas se encuentran trazando las diagonales desde la posiciónque se está evaluando hasta la columna de las diferencias divididas de orden 0.

Javier Segura (Universidad de Cantabria) Interpolación CNI 9 / 29

Page 10: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Lagrange Diferencias divididas de Newton

Datos igualmente espaciados: forma de Newton

Si los nodos xi están todos separados por le misma distancia, podemosencontrar una fórmula muy simple para el polinomio interpolador:

P(x0 + sh) = f (x0) + s∆f (x0) + s(s − 1)∆2f (x0)

2!+ ...

+s(s − 1)...(s − n + 1)∆nf (x0)

n! .

donde

∆0fi = fi , ∆fi = fi+1 − fi , ∆nfi = ∆∆n−1fi = ∆n−1∆fi = ∆n−1fi+1 −∆n−1fi

y utilizamos la notación fi = f (xi ) = f (x0 + ih).

Javier Segura (Universidad de Cantabria) Interpolación CNI 10 / 29

Page 11: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Hermite

Estructura de la presentación:

1 Interpolación de LagrangeForma de LagrangeTeorema del restoDiferencias divididas de Newton

2 Interpolación de Hermite

3 Interpolación de ChebyshevComportamiento del error en la interpolación de LagrangeInterpolación de Chebyshev

4 Interpolación mediante funciones tipo “spline"

Javier Segura (Universidad de Cantabria) Interpolación CNI 11 / 29

Page 12: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Hermite

Podemos generalizar las diferencias divididas permitiendo que serepitan nodos. Teniendo en cuenta que podemos demostrar que:

LemaSi f es una función n veces derivable en un intervalo (a,b) y dadosn + 1 valores distintos xi ∈ (a,b), i = 0, . . . ,n entonces

∃c ∈ (a,b) tal que f [x0 . . . xn] =f (n)(c)

n!

es lógico tomar, por definición:

DefiniciónSi f es n veces derivable en x0 entonces

f [x0 . . . x0] =f (n)(x0)

n!

donde x0 se repite n + 1 veces en la diferencia dividida.

Javier Segura (Universidad de Cantabria) Interpolación CNI 12 / 29

Page 13: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Hermite

Combinando la relación

f [xi . . . xi+k ] =f [xi+1...xi+k ]− f [xi ...xi+k−1]

xi+k − xi

si xi+k 6= xi con la definición

f [[xi ]n+1] =

f (n)(xi)

n!

podemos calcular diferencias divididas f [xi . . . xj ] en las que puedehaber repeticiones.La mejor forma de organizar el cálculo es colocar de formaconsecutiva los valores repetidos.

Javier Segura (Universidad de Cantabria) Interpolación CNI 13 / 29

Page 14: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Hermite

Ejemplo: para calcular f [x0x0x0x1] hacemos:

x0 f [x0]f [x0x0] = f ′(x0)

x0 f [x0] f [x0x0x0] = f ′′(x0)/2

f [x0x0] = f ′(x0) f [x0x0x0x1] =f [x0x0x1] − f [x0x0x0]

x1 − x0

x0 f [x0] f [x0x0x1] =f [x0x1] − f [x0x0]

x1 − x0

f [x0x1] =f (x1) − f (x0)

x1 − x0x1 f [x1]

Repetir nodos nos permite la interpolación de Hermite, en la queimponemos condiciones no sólo sobre el valor del polinomio en losnodos, sino también sobre las derivadas.

Javier Segura (Universidad de Cantabria) Interpolación CNI 14 / 29

Page 15: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Hermite

Teorema (Interpolación de Hermite)

El problema de interpolación

Pn(x0) = f (x0), . . . P(n0)n (x0) = f (n0)(x0)

. . .

Pn(xk ) = f (xk ), . . . P(nk )n (xk ) = f (nk )(xk )

mediante un polinomio de grado ≤ n = n0 + ..+ nk + k, siendo f (x) n + 1veces derivable en [a,b], tiene solución única, que se puede construirmediante el esquema de diferencias divididas. Denotando(x̃0x̃1...x̃n) = ([x0]n0+1, ..., [xk ]nk+1), tenemos:

Pn(x) =n∑

i=0

f [x̃0...x̃i ]i−1∏j=0

(x − x̃j ) .

Además f (x)− Pn(x) =f (n+1)(ζx )(n + 1)!

n∏j=0

(x − x̃j ) para algún ζx ∈ (a,b).

Javier Segura (Universidad de Cantabria) Interpolación CNI 15 / 29

Page 16: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev

Estructura de la presentación:

1 Interpolación de LagrangeForma de LagrangeTeorema del restoDiferencias divididas de Newton

2 Interpolación de Hermite

3 Interpolación de ChebyshevComportamiento del error en la interpolación de LagrangeInterpolación de Chebyshev

4 Interpolación mediante funciones tipo “spline"

Javier Segura (Universidad de Cantabria) Interpolación CNI 16 / 29

Page 17: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Comportamiento del error en la interpolación de Lagrange

Comportamiento del error

Volvamos a la interpolación de Lagrange (todos los nodos distintos).Definamos

S(x) ≡n∏

j=0

(x − xj )

y, por comodidad, consideraremos x0 < x1 < ... < xn−1 < xn.Para xi igualmente espaciados, los mayores valores de |S(x)| seencuentran para los mayores o menores valores de x en el intervalo[x0, xn] (sin coincidir con los xi ) mientras que |S(x)| alcanza menores valorespara valores intermedios de x .

Javier Segura (Universidad de Cantabria) Interpolación CNI 17 / 29

Page 18: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Comportamiento del error en la interpolación de Lagrange

Comportamiento del error

Ejemplo: interpolación de una función para los valores de xi = i − 4,i = 0.,8.S(x) = x(x2 − 1)(x2 − 4)(x2 − 9)(x2 − 16):

−5 −3 −1 1 3 5X

−6000

−4000

−2000

0

2000

4000

6000

S(X)

Javier Segura (Universidad de Cantabria) Interpolación CNI 18 / 29

Page 19: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Comportamiento del error en la interpolación de Lagrange

Comportamiento del error

Ejemplo: comparación la interpolación en 9 puntos xi = 4− i ,i = 0, ..,8 de la función f (x) = x2/

√x2 + 1 (línea continua) con la

propia función (línea discontinua).

−4 −3 −2 −1 0 1 2 3 4X

0

1

2

3

4

Javier Segura (Universidad de Cantabria) Interpolación CNI 19 / 29

Page 20: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Interpolación de Chebyshev

Interpolación de Chebyshev

Dada una función f (x) definida en un intervalo [a,b], la mejor aproximaciónpolinómica de grado n será aquella que minimice

E [q(x)] ≡ m«axx∈[a,b]

|f (x)− q(x)|,

Si un determinado polinomio Qn(X ) hace que E [Qn(x)] sea el de valormínimo entre todos los polinomios de grado n entonces se dice Qn(x) es laaproximación minimax de grado n de la función f (x) en [a,b] .

Nosotros no consideraremos esta aproximación, sino que buscaremos nodosx0 . . . xn tales que el polinomio nodal

Q(x) = (x − x0)(x − x1) . . . (x − xn)

sea el de mínimo máximo valor absoluto en el intervalo [a,b].

Javier Segura (Universidad de Cantabria) Interpolación CNI 20 / 29

Page 21: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Interpolación de Chebyshev

Interpolación Chebyshev

Polinomios de Chebyshev: definiciónEl polinomio de Chebyshev de orden n-ésimo se define como

Tn(x) = cos[n cos−1(x)

], x ∈ [−1,1] , n = 0,1,2,3, ...

Javier Segura (Universidad de Cantabria) Interpolación CNI 21 / 29

Page 22: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Interpolación de Chebyshev

Polinomios de Chebyshev: propiedades

1 Relación de recurrencia de tres términos para los polinomios deChebyshev:

Tn+1(x) = 2xTn(x)− Tn−1(x) , n = 1,2,3, ...

siendo los valores iniciales de la recurrencia T0(x) = 1, T1(x) = x .

2 El coeficiente del término xn en Tn(x) es 2n−1 y se cumple queTn(−x) = (−1)nTn(x).

3 Los n ceros de Tn(x) están en el intervalo [−1,1] y están dados por

xk = cos[

2k + 12n

π

], k = 0,1, ...,n − 1.

Tn(x) tiene n + 1 extremos en el intervalo [−1,1] que vienen dados porx ′k = cos kπ

n , k = 0, ...,n, donde los polinomios valen:

T (x ′k ) = (−1)k

Javier Segura (Universidad de Cantabria) Interpolación CNI 22 / 29

Page 23: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Interpolación de Chebyshev

Interpolación de Chebyshev

TeoremaPara cualquier n ≥ 1, entre todos los polinomios mónicos (es decir,con coeficiente 1 en el término de mayor grado) el polinomio deChebyshev modificado T̃n(x) ≡ 1

2n−1 Tn(x) es el de mínimo máximo

valor absoluto en [-1,1], siendo este valor 1/2n−1. Es decir, que

12n−1 = m«ax

x∈[−1,1]|T̃n(x)| ≤ m«ax

x∈[−1,1]|Pn(x)|

para cualquier polinomio Pn(x) de tipo mónico:

Pn(x) = xn + an−1xn−1 + an−2xn−2 + ...+ a1x + a0 ,

Javier Segura (Universidad de Cantabria) Interpolación CNI 23 / 29

Page 24: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Interpolación de Chebyshev

Interpolación de Chebyshev

TeoremaSea f (x) n + 1 veces diferenciable con continuidad en [a,b] Sea Pn(x) elpolinomio de interpolación de Lagrange grado n basado en los n + 1 nodos(de Chebyshev)

xk =b + a

2+

b − a2

cos(

2k + 12n + 2

π

), k = 0, ...,n

entonces el error viene acotado por:

m«axa≤x≤b

|f (x)− Pn(x)| ≤(

b − a2

)n+1 1(n + 1)!2n m«ax

a≤x≤b|f (n+1)(x)|

donde hemos considerado el cambio de variable

x(t) =b + a

2+

b − a2

t

que transforma el intervalo [−1,1] en [a,b].Javier Segura (Universidad de Cantabria) Interpolación CNI 24 / 29

Page 25: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Interpolación de Chebyshev

Interpolación de Chebyshev

Ejemplo: f (x) = x2/√

x2 + 1. Se representa f (x)− P(x) con P(x) elpolinomio de interpolación que interpola en 9 nodos distintos. La líneacontinua corresponde a los nodos equiespaciados y la línea discontinuacorresponde a la aproximación cuasi-minimax para 9 nodos en el intervalo[−4,4]

−4 −2 0 2 4X

−0.15

−0.05

0.05

0.15

0.25

0.35

0.45

Javier Segura (Universidad de Cantabria) Interpolación CNI 25 / 29

Page 26: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Interpolación de Chebyshev

Interpolación de Chebyshev

Propiedad de ortogonalidad discretan∑

k=0

Ti (xk )Tj (xk ) =

(n + 1

2(1 + δi0)

)δij , siendo δij =

{1 , i = j0 , i 6= j la delta de

Kronecker. Las xk son los n + 1 ceros del polinomio Tn+1(x).

Javier Segura (Universidad de Cantabria) Interpolación CNI 26 / 29

Page 27: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación de Chebyshev Interpolación de Chebyshev

Interpolación de Chebyshev

Evaluación de la interpolación Chebyshev

El polinomio interpolador de grado n basado en los nodos de Chebyshev(ceros de Tn+1(x)), que interpola f (x) en estos n + 1 puntos de [−1,1], sepuede escribir como:

Pn(x) =n∑

j=0

cjTj (x)

donde

cj =2− δj0

n + 1

n∑k=0

f (xk )Tj (xk )

y xk = cos(

2k + 12n + 2π

), k = 0, ...,n.

Javier Segura (Universidad de Cantabria) Interpolación CNI 27 / 29

Page 28: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación mediante funciones tipo “spline"

Estructura de la presentación:

1 Interpolación de LagrangeForma de LagrangeTeorema del restoDiferencias divididas de Newton

2 Interpolación de Hermite

3 Interpolación de ChebyshevComportamiento del error en la interpolación de LagrangeInterpolación de Chebyshev

4 Interpolación mediante funciones tipo “spline"

Javier Segura (Universidad de Cantabria) Interpolación CNI 28 / 29

Page 29: Interpolación - unican.es€¦ · Interpolación de Chebyshev Interpolación de Chebyshev Interpolación de Chebyshev Dada una función f(x) definida en un intervalo [a;b], la mejor

Interpolación mediante funciones tipo “spline"

Construcción de splines

Sean n + 1 puntos (xi , yi ), i = 0,1, ...,n verificando

a = x0 < x1 < x2 < ... < xn = b ,

una spline cúbica de estos puntos es una función s(x) en [a,b] que satisface:

1 Polinomio de tercer grado. s(x) es un polinomio , Pi (x), de grado tressobre cada intervalo [xi−1, xi ] para i = 1,2, ...,n.

2 Condiciones de interpolación. s(xi ) = yi para i = 0,1, ...,n.

3 Suavidad. s′′(x) es continua en [a,b] (≡ [x0, xn]), luego también lo sons(x) y s′(x).

Javier Segura (Universidad de Cantabria) Interpolación CNI 29 / 29