INTERPOLACIÓN - Universidad de Granada

Anuncio
UNIVERSIDAD DE GRANADA
DEPARTAMENTO DE MATEMÁTICA APLICADA
www.ugr.es/local/mateapli
INTERPOLACIÓN
2006-2007
José Martínez Aroza
Introducción
Interpolar (D.R.A.E.): Averiguar el valor aproximado de una magnitud
en un intervalo cuando se conocen algunos de los valores que toma
a uno y otro lado de dicho intervalo, y no se conoce la ley de variación
de la magnitud.
Interpolación
2/90
Introducción
ventas
800
600
400
200
2
4
6
8
Interpolación
meses
3/90
Introducción
ventas
800
600
400
200
2
Interpolación
4
6
8
meses
4/90
Interpolación Lagrangiana
Problema de Interpolación Lagrangiana (versión previa):
“Dados los nodos { x0 , x1 ,…, x n } y sus valores respectivos { y 0 , y1 ,…, y n },
obténgase una función
p(x ) “sencilla” que verifique p( xi ) = yi , i = 0,1,…, n .”
10
5
1
2
3
4
-5
Interpolación
5/90
Interpolación Lagrangiana
p : función interpoladora o interpolante
“Sencilla” = hay que fijar un espacio de funciones F .
Problema bien planteado ⇔ dim F = n + 1 = nº de datos.
Problema de Interpolación Lagrangiana (P.I.L.):
“Dados los nodos { x0 , x1 ,…, x n } y sus valores respectivos { y 0 , y1 ,…, y n },
y dado (o fijado) un espacio de funciones F con dim F = n + 1,
obténgase una función p ∈ F que verifique p ( xi ) = yi , i = 0,1,…, n .”
Problema de Interpolación Polinomial Lagrangiana (P.I.P.L.):
“Dados los nodos { x0 , x1 ,…, x n } y sus valores respectivos { y 0 , y1 ,…, y n },
obténgase un polinomio
Interpolación
p ∈ Pn tal que p( x i ) = y i , i = 0,1, … , n .”
6/90
Interpolación Lagrangiana
Resolución del P.I.L.:
Se escoge una base {ϕ 0 , ϕ 1 ,…, ϕ n } de F y se busca
n
p = ∑ a jϕ j que cumpla las
j =0
condiciones de interpolación
p( x0 ) = y0 ⇔ a0ϕ 0 ( x0 ) + a1ϕ1 ( x0 ) +
+ anϕ n ( x0 ) = y0 ⎫
⎪
p( x1 ) = y1 ⇔ a0ϕ 0 ( x1 ) + a1ϕ1 ( x1 ) + + anϕ n ( x1 ) = y1 ⎬
p( xn ) = y0 ⇔ a0ϕ 0 ( xn ) + a1ϕ1 ( xn ) + + anϕ n ( xn ) = yn ⎪⎭
(Sistema lineal
( n + 1) × ( n + 1) con incógnitas a j .)
El P.I.L. es unisolvente (solución única)
⇔ el sistema es C.D.
Solución = coeficientes de la función interpoladora.
Interpolación
7/90
Interpolación Lagrangiana
Ejemplo:
x −1
0
1
3
y
1 −2
4
0
Polinomio buscado:
, F = P3 = 1, x, x , x
2
3
.
p ( x ) = a 0 + a1 x + a 2 x 2 + a 3 x 3 .
Sistema:
a0
−
a1
+
a2
−
a3
a0
a0
+
a1
+
a2
+
a3
a0
+ 3a1
+ 9a 2
+ 27a 3
=
0⎫
=
1⎪⎪
⎬
= − 2⎪
=
4 ⎪⎭
⇒ p ( x ) = x 3 − 2 x 2 − 2 x + 1.
Interpolación
8/90
Interpolación Lagrangiana
5
-2
-1
1
2
4
3
-5
- 10
Interpolación
9/90
Interpolación Lagrangiana
Unisolvencia del P.I.P.L.: Usando la base {1, x,…, x }, el
determinante de la matriz de coeficientes es el det. de Vandermonde
n
⎛1 x 0
⎜
⎜ 1 x1
det ⎜
⎜⎜
⎝1 x n
x 02
x12
x n2
x 0n ⎞
⎟
n
x1 ⎟
⎟ = ∏ ( xi − x j );
i> j
⎟
x nn ⎠⎟
det ≠ 0 ⇔ las abscisas x i no se repiten (no hay dos iguales).
Demostración: restando a cada columna la anterior
0
⎛1
⎜1 x − x
1
0
= det ⎜
⎜
⎝1 xn − x0
Interpolación
× x0 ,
0
⎞
⎛1 x1
⎟
x ( x1 − x0 )
⎜
⎟ = det ⎜
⎜ 1 xn
⎟
⎝
xnn −1 ( xn − x0 ) ⎠
n −1
1
x1n −1 ⎞ n
⎟
( xi − x0 ) .
∏
n −1 ⎟
xn ⎟⎠ i =1
10/90
Interpolación Lagrangiana
Para no tener que resolver s.e.l. se emplean fórmulas de interpolación, que dan
directamente el polinomio de interpolación.
Fórmulas clásicas: la Fórmula de Lagrange y la Fórmula de Newton.
Diferentes expresiones, pero el mismo objetivo: el polinomio de interpolación.
Interpolación
11/90
Fórmula de Lagrange
FÓRMULA DE LAGRANGE
Interpolación
12/90
Fórmula de Lagrange
Dados los nodos {x0 , x1 ,…, x n }, los polinomios fundamentales de Lagrange
0
,
1
,…,
∈ Pn son aquellos que verifican
n
( x0 ) = 1,
1 ( x0 ) = 0,
( x1 ) = 0, …
1 ( x1 ) = 1, …
( xn ) = 0 ⎫
⎪
1 ( xn ) = 0 , es decir,
⎬
⎪
n ( x0 ) = 0,
n ( x1 ) = 0, …
n ( xn ) = 1 ⎭
0
0
0
j
1 si i = j
( xi ) = δ ij = ⎧⎨
⎩0 si i ≠ j
(delta de Kronecker). Una vez obtenidos, la solución del P.I.P.L. es la
Fórmula de Lagrange
p( x ) = y 0
En efecto, p ( x i ) =
( x ) + y1 1 ( x ) +
0
n
∑y
j =0
+ yn
n
n
( x) = ∑ y j
j =0
j
( x).
n
j
j
( x i ) = ∑ y j δ ij = y i .
j =0
Interpolación
13/90
Fórmula de Lagrange
Construcción de los polinomios fundamentales de Lagrange:
0
se anula en x1 , … , x n
⇒ es divisible por ( x − x1 ), ( x − x 2 ), … , ( x − x n )
⇒ 0 = K ( x − x1 )( x − x 2 ) ( x − x n ) , con K = cte.
Se escoge K para que
por tanto
( x0 ) = 1 ⇒ K =
x − x1 x − x2
⋅
0 ( x) =
x0 − x1 x0 − x2
n
En general
0
j ( x) = ∏
i =0
( x0 − xn )
,
n
x − xn
x − xi
=∏
.
x0 − xn i =1 x0 − xi
x − xi
(hay un error).
x j − xi
Ejercicio: demostrar que
Interpolación
1
( x 0 − x1 )( x 0 − x 2 )
{ 0 , 1 ,… , n } es una base de Pn .
14/90
Fórmula de Lagrange
Ejemplo:
x −1
0
1
3
y
1 −2
4
0
, unisolvente en P3 .
x − 0 x −1 x − 3
⋅
⋅
0
−1− 0 −1−1 −1− 3
x +1 x −1 x − 3
=
⋅
⋅
1
0 +1 0 −1 0 − 3
x +1 x − 0 x − 3
=
⋅
⋅
2
1+1 1− 0 1− 3
x +1 x − 0 x −1
⋅
⋅
3 =
3 +1 3 + 0 3 −1
=
p=0
0
+1 1 − 2
2
+4
1 3
( x − 4 x 2 + 3x )
8
1
= ( x 3 − 2 x 2 − x + 4)
3
1
= − ( x 3 − 2 x 2 − 3x )
4
1
= ( x3 − x)
24
=−
= x3 − 2 x2 − 2 x + 1
3
Interpolación
15/90
Fórmula de Lagrange
3
2
1
-2
-1
1
2
3
4
-1
-2
Interpolación
16/90
Fórmula de Lagrange
Ventaja de la fórmula de Lagrange: Los polinomios fundamentales sólo dependen
de los nodos {x0 , x1 ,…, x n }; varios P.I.P.L. con el mismo conjunto de abscisas
comparten los mismos polinomios fundamentales.
600
Crédito
500
400
300
Contado
200
100
Gastos
1
2
3
4
Inconveniente de la fórmula de Lagrange: Si se añade nueva información (un
nuevo punto), hay que reconstruir casi todo.
Interpolación
17/90
Fórmula de Newton
FÓRMULA DE NEWTON
Interpolación
18/90
Fórmula de Newton
Objetivo: construir el pol. de interp. p (x ) gradualmente, partiendo de un solo dato
( x 0 , y 0 ) e ir añadiendo datos progresivamente.
p 0 ∈ P0 : polin. que interpola en {x 0 },
p1 ∈ P1 : polin. que interpola en {x 0 , x1 },
p 2 ∈ P2 : polin. que interpola en {x 0 , x1 , x 2 },
p n = p ∈ Pn : polin. que interpola en {x 0 , x1 , … , x n }.
Se trata de obtener pk conocido pk −1 , k = 1,…, n .
Interpolación
19/90
Fórmula de Newton
4
3
2
1
1
2
3
4
5
-1
Interpolación
20/90
Fórmula de Newton
4
3
2
1
1
2
3
4
5
-1
Interpolación
21/90
Fórmula de Newton
4
3
2
1
1
2
3
4
5
-1
Interpolación
22/90
Fórmula de Newton
4
3
2
1
1
2
3
4
5
-1
Interpolación
23/90
Fórmula de Newton
4
3
2
1
1
2
3
4
5
-1
Interpolación
24/90
Fórmula de Newton
Construcción progresiva
p 0 ( x ) = y 0 ∈ P0 interpola en x 0 (cumple p 0 ( x 0 ) = y 0 ).
• p1 ( x ) ∈ P1 interpola en {x0 , x1}; q1 = p1 − p0 ∈ P
1 se anula en x 0
⇒ q1 ( x ) = A1 ( x − x 0 ) , con A1 adecuado para que
y − p 0 ( x1 )
.
p1 ( x1 ) = p 0 ( x1 ) + q1 ( x1 ) = y1 ⇒ A1 = 1
x1 − x 0
• p 2 = p1 + q 2 ∈ P2 interpola en x0 , x1 , x2 ; q 2 ∈ P2 se anula en x 0 y x1
⇒ q 2 ( x ) = A2 ( x − x 0 )( x − x1 ) con A2 adecuado para que
•
p 2 ( x 2 ) = p1 ( x 2 ) + q 2 ( x 2 ) = y 2 ⇒ A2 =
y 2 − p1 ( x 2 )
.
( x 2 − x 0 )( x 2 − x1 )
p k = p k −1 + q k ∈ Pk , q k se anula en x 0 , … , x k −1
y k − p k −1 ( x k )
⇒ q k ( x ) = Ak ( x − x 0 ) ( x − x k −1 ) con Ak =
.
( x k − x 0 ) ( x k − x k −1 )
• en general
Interpolación
25/90
Fórmula de Newton
Conviniendo A0 = y 0 se tiene
p( x ) = p n ( x ) = A0 + A1 ( x − x 0 ) + A2 ( x − x 0 )( x − x1 )
+
+ An ( x − x 0 )
( x − x n −1 )
es decir
n
k −1
k =0
i =0
p( x ) = ∑ Ak ∏ ( x − x i ) ,
que es la fórmula de Newton (preliminar).
Interpolación
26/90
Fórmula de Newton
Ejemplo:
x −1
0
1
3
y
1 −2
4
0
;
A0 = y0 = 0 ⇒ p0 ( x ) = 0;
A1 =
y1 − p0 ( x1 ) 1 − 0
=
= 1 ⇒ p1 ( x ) = 0 + 1( x + 1) = x + 1;
x1 − x0
0 +1
A2 =
y2 − p1 ( x2 )
−2−2
=
= −2 ⇒
( x2 − x0 )( x2 − x1 ) (1 + 1)(1 − 0)
p2 ( x ) = p1 ( x ) − 2( x + 1)( x − 0) = ( x + 1) − 2( x + 1) x;
A3 =
4 + 20
y3 − p2 ( x3 )
=
=1⇒
( x3 − x0 )( x3 − x1 )( x3 − x2 ) 4 ⋅ 3 ⋅ 2
p3 ( x ) = p2 ( x ) + 1( x + 1) x ( x − 1)
= x 3 − 2 x 2 − 2 x + 1.
Interpolación
27/90
Diferencias divididas
Notación:
Ak = f [ x 0 , … , x k ] diferencia dividida de f en x 0 , … , x k .
Fórmula de Newton: (definitiva)
n
k −1
k =0
i =0
p( x ) = ∑ f [ x 0 , … , x k ]∏ ( x − x i ) .
Interpolación
28/90
Diferencias divididas
Propiedad de las diferencias divididas:
n
f [ x0 , … , x n ] = ∑
k =0
f ( xk )
n
∏(x
i =0
i ≠k
Consecuencia:
k
.
− xi )
f [ x0 ,…, xn ] es simétrica respecto de x0 ,…, xn .
Demostración: identificando coef. de gr.
n en las fórmulas de Lagrange y Newton:
n
k −1
n
n
k =0
i =0
j =0
i =0
i≠ j
p( x ) = ∑ f [ x0 ,…, xk ]∏ ( x − xi ) = ∑ y j ∏
x − xi
.
x j − xi
Interpolación
29/90
Diferencias divididas
Propiedad de las diferencias divididas:
f [ x0 , … , x n ] =
f [ x1 ,…, xn ] − f [ x0 ,…, xn −1 ]
.
x n − x0
Demostración: identificando coef. de gr.
inversa de gr. n :
n − 1 en las fórmulas de Newton directa e
n
k −1
n
n
k =0
i =0
k =0
i = k +1
p( x ) = ∑ f [ x0 ,…, xk ]∏ ( x − xi ) = ∑ f [ xn ,…, xn − k ] ∏ ( x − xi )
n −1
n
i =0
i =1
f [ x0 ,…, xn −1 ] − f [ x0 ,…, xn ]∑ xi = f [ xn ,…, x1 ] − f [ x0 ,…, xn ]∑ xi . Interpolación
30/90
Diferencias divididas
Tabla de diferencias divididas
f [ x0 ] = y0
x0
f [ x0 , x1 ]
f [ x1 ] = y1
x1
f [ x0 , x1 , x2 ]
f [ x1 , x2 ]
f [ x2 ] = y 2
x2
f [ x n −1 , x n ]
f [ xn ] = y n
xn
f [ x0 , … , x n ]
Interpolación
31/90
Diferencias divididas
Ejemplo:
x −1
0
1
3
y
1 −2
4
0
−1
;
0
1
0
1
1
−2
−3
−2
1
2
3
3
4
p( x ) = 0 + 1( x + 1) − 2( x + 1) x + 1( x + 1) x ( x − 1) .
Interpolación
32/90
El error de interpolación
EL ERROR DE INTERPOLACIÓN EN EL P.I.P.L.
Interpolación
33/90
El error de interpolación
Sean
zi = f ( xi ) los datos de un P.I.P.L., provenientes de una función f ( x ) .
Definición: Error de interpolación
E ( x ) = f ( x ) − p( x ) .
n
Teorema:
E ( x ) = f [ x0 , x1 ,…, xn , x ]Π ( x ) , donde Π ( x ) = ∏ ( x − xi ) .
i =0
Demostración: Ampliando la fórmula de Newton con
f [ x0 ,… , xn +1 ] =
yn +1 − p( xn +1 )
n
∏ (x
i =0
n +1
− xi )
xn +1 se tiene
⇒ f [ x0 ,… , xn +1 ]Π ( xn +1 ) = E ( xn +1 ) ,
válido ∀xn +1 . Interpolación
34/90
El error de interpolación
Teorema: Sea f ∈ C [a , b] y
n
x0 ,… , xn ∈ [a, b]. Entonces ∃ξ ∈ [a, b] tal que
f ( n ) (ξ )
.
f [ x0 ,… , xn ] =
n!
Demostración: E ( x ) ∈ C [a , b] y se anula en
n
aplicando el T. de Rolle E ′( x ) ∈ C
n −1
x0 ,… , xn → n + 1 veces;
[a , b] se anula n veces;
⇒ E ( n ) ( x ) ∈ C 0 [a , b] se anula 1 vez. Consecuencia: Si f ∈ C
n +1
[a , b] entonces
f ( n +1) (ξ )
E ( x) =
Π( x) .
( n + 1)!
Interpolación
35/90
Interpolación por recurrencia
INTERPOLACIÓN POR RECURRENCIA
Interpolación
36/90
Interpolación por recurrencia
Interpolación por recurrencia:
∀C ⊂ {x0 , x1 ,…, xn }, sea pC (x ) el interpolante en los puntos de C .
Teorema (Lema de Aitken): Sean xi , x j ∉ C . Entonces
pC ∪{ x i , x j } ( x ) =
( x − x j ) pC ∪{ x i } ( x ) − ( x − xi ) pC ∪{ x j } ( x )
xi − x j
.
Demostración: basta comprobar.
Principal aplicación: evaluación del interpolante sin construirlo.
Interpolación
37/90
Interpolación por recurrencia
Método de Neville:
x − x0
x − x1
x − x2
x − xn
Interpolación
p{ x 0 } ( x ) = y0
p{ x1 } ( x ) = y1
p{ x 2 } ( x ) = y2
p{ x n } ( x ) = yn
p{ x 0 , x1 } ( x )
p{ x 0 , x1 , x 2 } ( x )
p{ x1 , x 2 } ( x )
p{ x 0 ,…, x n } ( x )
p{ x n −1 , x n } ( x )
38/90
Interpolación por recurrencia
Ejemplo del método de Neville:
3
x −1
0
1
3
y
1 −2
4
en
x=2
0
3
2
1
1
−2
−1
0
−5
−9
−1
− 3 ⇒ p ( 2 ) = −3
1
4
Interpolación
39/90
Interpolación por recurrencia
Método de Aitken:
x − x0
x − x1
x − x2
p{ x 0 } ( x ) = y0
p{ x1 } ( x ) = y1
p{ x 2 } ( x ) = y2
p{ x 0 , x1 } ( x )
p{ x 0 , x 2 } ( x )
p{ x 0 , x1 , x 2 } ( x )
x − xn
p{ x n } ( x ) = yn
p{ x 0 , x n } ( x )
p{ x 0 , x1 , x n } ( x )
p{ x 0 ,…, x n } ( x )
Ejemplo del método de Aitken:
3
2
1
−1
Interpolación
0
1
3
⇒ p ( 2 ) = −3
−2 −3 −9
4
3
3 −3
40/90
Resumen de soluciones para el P.I.P.L.
RESUMEN DE SOLUCIONES PARA EL P.I.P.L.
Interpolación
41/90
Resumen de soluciones para el P.I.P.L.
Con la base canónica {1, x, x ,…, x }
2
n
Solución: (sistema de ecuaciones lineales) p ( x ) =
n
∑a x
j =0
Con la base de Lagrange {
0
j
j
, 1 , …, n }
Solución: fórmula de Lagrange p ( x ) =
n
∑y
j =0
j
j
( x)
Con base de Newton {1, ( x − x0 ), ( x − x0 )( x − x1 ),…, ( x − x0 )
Solución: fórmula de Newton
n
k −1
k =0
i =0
( x − xn −1 )}
p( x ) = ∑ f [ x 0 , … , x k ]∏ ( x − x i ) .
Interpolación
42/90
Evaluación de polinomios
EVALUACIÓN DE POLINOMIOS
Interpolación
43/90
Evaluación de polinomios
Para evaluar p ( x ) = an x + an −1 x
n
n −1
+
+ a1 x + a0 se requieren:
n( n − 1)
multiplicaciones para potencias
2
n
multiplicaciones por coeficientes
n
sumas de monomios
n 2 + 3n
operaciones
2
...y los errores de redondeo se amplifican.
Interpolación
44/90
Evaluación de polinomios
Expresión equivalente:
p( x ) = a0 + x ( a1 + x ( a2 + x ( ( an −1 + x ( an ) ))) .
Algoritmo de Horner para evaluar p ( x ) en el punto x = r :
s = a[[n]];
For[i=n-1, i>=0, i--, s = s*r+a[[i]] ];
Algoritmo de Horner para la fórmula de Newton
p( x ) = A0 + ( x − x0 )( A1 + ( x − x1 )(
( An −1 + ( x − xn −1 )( An ) )))
s = A[[n]];
For[i=n-1, i>=0, i--, s = s*(r-x[[i]]) + A[[i]] ];
Interpolación
45/90
Otros Problemas de Interpolación
OTROS PROBLEMAS DE INTERPOLACIÓN
Interpolación
46/90
Otros Problemas de Interpolación
Problema de Interpolación de Taylor
Obténgase p ∈ Pn conocidos los valores de p ( a ), p′( a ), p′′( a ),…, p
Solución 1: Con la base canónica
{1, x, x 2 ,…, x n } resulta el sistema
triangular superior:
⎛ 1 a a2
⎜
⎜ 0 1 2a
⎜⎜
⎝0 0 0
an
na n −1
n!
(n)
(a ) .
Solución 2: Con la base de Newton
{1, ( x − a ), ( x − a ) 2 ,…, ( x − a ) n }
resulta el sistema diagonal:
p(a ) ⎞
⎟
p′( a ) ⎟
⎟
p ( n ) ( a ) ⎟⎠
⎛ 0! 0
⎜ 0 1!
⎜
⎜
⎝0 0
p(a ) ⎞
p′( a ) ⎟
⎟
⎟
n! p ( n ) ( a ) ⎠
0
0
Solución: el desarrollo polinomial de Taylor.
Interpolación
47/90
Otros Problemas de Interpolación
Problema de Interpolación de Hermite clásico
Obténgase p ∈ P
2 n +1 conocidos los valores de
p( x0 ), p′( x0 ), p( x1 ), p′( x1 ),…, p( xn ), p′( xn ) .
Solución: Con la base de Newton
{1, ( x − x0 ), ( x − x0 ) 2 , ( x − x0 ) 2 ( x − x1 ), ( x − x0 ) 2 ( x − x1 ) 2 ,…
…, ( x − x0 ) 2 ( x − x1 ) 2
x
1 2 3
2
1 2 3
Ejemplo: y
1.5
y ′ −1 − 1 − 1
( x − xn )}
1
unisolvente en P5 .
0.5
0.5
Interpolación
1
1.5
2
48/90
Otros Problemas de Interpolación
Enfoque de Langrange en el caso polinomial con datos tipo Hermite clásico:
Datos: z0 , z1 ,… , zn , z0′ , z1′,… , zn′ ; espacio interpolador: V = P
2 n +1 .
Base de Lagrange: { A0 , A1 ,… , An , B0 , B1 ,… , Bn } cumpliendo
Aj ( xi ) = δ ij , A′j ( xi ) = 0,
B j ( xi ) = 0, B ′j ( xi ) = δ ij .
n
Sean
j ( x) = ∏
k =0
k≠ j
x − xk
los polinomios fundamentales del problema clásico;
x j − xk
Aj = (1 − 2( x − x j ) ′j ( x j ) )
2
j
( x ),
B j = ( x − x j ) 2j ( x ).
Fórmula de Lagrange:
p( x ) = ∑ z j Aj ( x ) + ∑ z ′j B j ( x ) .
j
j
Ejercicio: comprobar.
Interpolación
49/90
Otros Problemas de Interpolación
f ∈ C n [a , b] y x0 ≤ x1 ≤ ≤ xn ;
⎧ f [ x1 ,… , xn ] − f [ x0 ,… , xn −1 ]
si x0 < xn
⎪
xn − x0
f [ x0 ,… , xn ] = ⎨
(n)
1
⎪
si x0 = xn
( x0 )
⎩
n! f
Diferencia dividida generalizada: sup.
Enfoque de Newton: cada serie
xi f [ xi ] = f ( xi )
xi f [ xi ] = f ( xi )
xi f [ xi ] = f ( xi )
xi f [ xi ] = f ( xi )
Interpolación
f ( xi ), f ′( xi ),… , f ( k ) ( xi ) genera el fragmento
f [ xi , xi ] = f ′( xi )
f [ xi , xi ] = f ′( xi )
f [ xi , xi , xi ] =
1
2!
f ′′( xi )
1
k!
f ( k ) ( xi )
f [ xi , xi ] = f ′( xi )
50/90
Otros Problemas de Interpolación
x
Ejemplo:
1
2
3
y
1 2 3 unisolvente en P5 .
y ′ −1 − 1 − 1
Base: {1,( x − 1),( x − 1) ,( x − 1) ( x − 2),( x − 1) ( x − 2) ,( x − 1) ( x − 2) ( x − 3)}
2
2
2
2
2
2
Tabla de diferencias divididas generalizadas:
1
1
2
2
3
3
1
−1
1
2
1
−4
2
3
−2
−1
−3
2
−3
2
2
−4
1
−2
3
−1
3
Interpolación
51/90
El Problema General de Interpolación
EL PROBLEMA GENERAL DE INTERPOLACIÓN
Interpolación
52/90
El Problema General de Interpolación
Definición: Dado V espacio vectorial sobre
L :V
R verificando
R , una forma lineal sobre V es
L(α f + β g ) = α L( f ) + β L( g ) ∀α , β ∈ R ∀f , g ∈V .
Ejemplos: (V
= espacio de funciones R → R )
L1 ( f ) = f (7),
L2 ( f ) = f ( x0 ),
L3 ( f ) = f ′( −2),
b
L4 ( f ) = ∫ f ( x ) dx,
a
L5 ( f ) = f ′′′(0).
Interpolación
53/90
El Problema General de Interpolación
Problema General de Interpolación (P.G.I.):
“Sea V un espacio vectorial real de dimensión finita n . Dadas las formas
lineales {L1 , L2 ,… , Ln } sobre V y los valores reales {z1 , z2 ,… , zn },
obténgase p ∈ V que verifique
Li ( p ) = zi , i = 1, 2,… , n .”
Teorema: “Sea {v1 , v2 ,… , vn } una base de V . El P.G.I. es unisolvente si y sólo
si el determinante de Gram
det( Li ( v j ))
es no nulo.”
Demostración: Si
p = ∑ a j v j , entonces ∑ a j Li ( v j ) = zi , i = 1, 2,…, n es un
j
j
sistema de ecuaciones lineales cuyo determinante es el de Gram. Interpolación
54/90
El Problema General de Interpolación
Casos particulares usuales:
V = Pn → interpolación polinomial
V = 1,cos x,sen x,cos 2 x,sen 2 x,… → interpolación trigonométrica
Li ( f ) = f ( xi ) → datos lagrangianos
L2i ( f ) = f ( xi ), L2 i −1 ( f ) = f ′( xi ) → datos tipo Hermite clásico
Li ( f ) = f ( i ) ( x0 ) → datos tipo Taylor
Características del P.G.I.:
• el nº de datos es finito
• las condiciones de interpolación son lineales
• la dimensión del espacio interpolador es igual al nº de datos.
Interpolación
55/90
El Problema General de Interpolación
Construcción de la solución del P.G.I.
• Enfoque directo: con el sistema de Gram
∑ a L (v ) = z , i = 1, 2,…, n .
j
i
j
i
j
• Enfoque de Lagrange: sea una base {
entonces
p = ∑zj
j
1
,
2
,… , n } de V tal que Li ( j ) = δ ij ;
(fórmula de Lagrange).
j
• Enfoque de Newton: sea una base {w1 , w2 ,… , wn } de V con
y L j ( w j ) ≠ 0 ∀j ; entonces
Li ( w j ) = 0 ∀i < j
p = ∑ a j w j (fórmula de Newton), donde
j
⎛ k −1
⎞
zk − Lk ⎜ ∑ a j w j ⎟
z1
⎝ j =1
⎠ , k = 2,… , n .
a1 =
, ak =
Lk ( wk )
L1 ( w1 )
Ejercicio: Comprobar todo.
Interpolación
56/90
Interpolación mediante splines
INTERPOLACIÓN MEDIANTE FUNCIONES SPLINE
Interpolación
57/90
Interpolación mediante splines
Los polinomios de alto grado interpolación adoptan comportamientos anómalos.
20
15
10
5
5
Interpolación
10
15
20
58/90
Interpolación mediante splines
Los polinomios de alto grado interpolación adoptan comportamientos anómalos.
20
15
10
5
5
10
15
Interpolación
20
59/90
Interpolación mediante splines
Los polinomios de alto grado interpolación adoptan comportamientos anómalos.
20
15
10
5
5
Interpolación
10
15
20
60/90
Funciones spline
n y clase m con nodos {x0 ,…, x N } es una función
s(x ) definida en [a , b] = [ x0 , x N ] verificando:
Definición: Un spline de grado
1.
si = s [ xi −1 , xi ] es un polinomio de grado ≤ n (i = 1,2,…, N )
2.
s ∈ C m [ a , b] .
Convenio: salvo indicación expresa, se sobreentiende
m = n − 1.
Espacios de splines en los nodos {x0 ,…, x N }
n y clase m : S n m ( x0 ,…, x N ) .
• de grado n (y clase m = n − 1): S n ( x0 ,…, x N ) .
• de grado
Casos usuales:
spline lineal
n = 1: grado 1 (clase 0 = continua) → poligonal
n = 2 : grado 2 (clase 1 = derivable)
spline cuadrático
n = 3: grado 3 (clase 2 = derivable 2 veces)
spline cúbico
n = 3, m = 1: spline cúbico de clase 1 (caso especial).
Interpolación
61/90
Funciones spline
5
4
3
2
1
2
Interpolación
4
6
8
62/90
Funciones spline
5
4
3
2
1
2
4
6
8
Interpolación
63/90
Funciones spline
5
4
3
2
1
2
Interpolación
4
6
8
64/90
Funciones spline
4
3
2
1
1
2
3
4
5
Interpolación
6
65/90
Construcción de splines por trozos
CONSTRUCCIÓN DE SPLINES POR TROZOS
Interpolación
66/90
Construcción de splines por trozos
Expresión a trozos:
⎧ s1 ( x ) ∈ Pn si x ∈ [ x 0 , x1 ]
⎪ s ( x ) ∈ Pn si x ∈ [ x1 , x 2 ]
s( x ) = ⎨ 2
⎪
⎩ s N ( x ) ∈ Pn si x ∈ [ x N −1 , x N ]
Restricciones de suavidad:
si( k ) ( xi ) = si(+k1) ( xi ) i = 1,…, N − 1, k = 0,…, m
por tanto
dim S n m ( x0 ,…, x N ) = ( n + 1) N − ( m + 1)( N − 1)
= N (n − m) + m + 1
Interpolación
67/90
Construcción de splines por trozos
Caso lineal ( n = 1): Cada trozo
si ( x ) = ai x + bi aporta dos incógnitas;
dos ecuaciones: si ( xi −1 ) = yi −1 (extremo izdo.) y si ( xi ) = yi (extremo dcho.)
→ subproblema 2 × 2 .
Construcción directa:
si ( x ) = yi
con
x − xi − l
x −x
+ yi −1 i
, i = 1,…, N
hi
hi
hi = xi − xi −1 , i = 1,…, N .
Ejemplo:
x −1
0
1
3
y
1 −2
4
0
s1 ( −1) = 0, s1 (0) = 1 ⇒ s1 ( x ) = x + 1
s2 ( 0) = 1, s2 (1) = −2 ⇒ s2 ( x ) = −3x + 1
s3 ( 1) = −2, s3 (3) = 4 ⇒ s3 ( x ) = 3x − 5
Interpolación
68/90
Construcción de splines por trozos
Caso cuadrático ( n = 2 ): Cada trozo
→ total 3N ;
si ( x ) = ai x 2 + bi x + ci aporta tres incógnitas
Ecuaciones:
• Interpolación (clase 0 ): 2 por trozo (extremos izdo. y dcho.)
• Clase 1: si′( xi ) = si′+1 ( xi ) i = 1,…, N − 1 son N − 1 ecuaciones.
→ total 2 N + N − 1 = 3N − 1 ecuaciones → ¡falta una ecuación!.
→ Se añade una ecuación adicional para cuadrar el problema.
Construcción directa con
s′( x0 ) = d 0 :
si ( x ) = yi −1 + d i −1 ( x − xi −1 ) +
con
wi =
wi − d i −1
( x − xi −1 ) 2 , i = 1,…, N
hi
y i − yi − 1
, d i = 2 wi − d i −1 , i = 1,…, N , d 0 = y0′ .
hi
Interpolación
69/90
Construcción de splines por trozos
Caso cúbico ( n = 3): Cada trozo
incógnitas → total 4 N ;
si ( x ) = ai x 3 + bi x 2 + ci x + d i aporta cuatro
Ecuaciones:
• Interpolación (clase 0 ): 2 por trozo (extremos izdo. y dcho.)
• Clase 1: si′( xi ) = si′+1 ( xi ) i = 1,…, N − 1 son N − 1 ecuaciones.
• Clase
2 : si′′( xi ) = si′′+1 ( xi ) i = 1,…, N − 1 son N − 1 ecuaciones.
→ total 2 N + 2( N − 1) = 4 N − 2 ecuaciones → ¡faltan dos ecuaciones!.
Ecuaciones adicionales típicas:
•
s′′( a ) = s′′(b) = 0
spline natural
prolongable mediante rectas → de clase 2 en todo R .
•
s′( a ) = y0′ , s′(b) = y ′N
spline de extremo sujeto
pendientes fijas de entrada y salida.
•
s′( a ) = s′(b), s′′( a ) = s′′(b)
spline periódico
prolongable por periodicidad → de clase 2 en todo R .
Interpolación
70/90
Construcción de splines por trozos
Construcción directa del spline cúbico natural o sujeto:
si ( x ) = yi −1 + d i −1 ( x − xi −1 ) +
+
siendo
wi − d i −1
( x − xi −1 ) 2
hi
d i −1 + d i − 2 wi
( x − xi −1 ) 2 ( x − xi ), i = 1,…, N
2
hi
d i la solución del s.e.l. tridiagonal simétrico
⎛1
⎛w
1
1 ⎞
1
w⎞
d i −1 + 2⎜ +
d i +1 = 3⎜ i +1 + i ⎟, i = 1,…, N − 1
⎟d i +
hi
hi +1
⎝ hi hi +1 ⎠
⎝ hi +1 hi ⎠
con las ecuaciones adicionales
d 0 = y0′ , d N = y ′N ;
• sujeto: 2d 0 + d1 = 3w1 , d N −1 + 2d N = 3wN .
• natural:
Interpolación
71/90
Construcción de splines por trozos
Caso especial:
n = 3, m = 1 para datos tipo Hermite clásico (valor y derivada en cada punto).
Para cada trozo si ( x ) se tienen 4 incógnitas y 4 ecuaciones
( 2 valores y 2 derivadas), formando un subproblema 4 × 4 .
Caso general (P.I.L. en S n
m
( x0 ,…, x N ) ): Hay N ( n + 1) incógnitas;
Ecuaciones:
• Interpolación+continuidad: 2 N ( =
• Suavidad de clase 1: N − 1
• Suavidad de clase 2: N − 1
• Suavidad de clase
N + 1 interpolación + N − 1 clase 0 ).
m: N −1
Total ecuaciones: 2 N + m( N − 1) = ( m + 2) N − m ;
si m = n − 1 entonces siempre faltan m ecuaciones adicionales.
Se obtiene un sistema
Interpolación
N ( n + 1) × N ( n + 1) .
72/90
Construcción de splines por trozos
Teoremas de unisolvencia:
• P.I.L. en S1 ( x0 ,…, x N )
• P.I.L. en S 2 ( x0 ,…, x N ) con
s′( xi ) = d i para algún i ∈ {0,1,…, N }
• P.I.L. en S 3 ( x0 ,…, x N ) natural
• P.I.L. en S 3 ( x0 ,…, x N ) sujeto
• P.I.L. en S 3 ( x0 ,…, x N ) periódico
• Hermite clásico en S 3
1
( x0 ,…, x N )
Interpolación
73/90
Construcción de splines mediante Potencias truncadas
CONSTRUCCIÓN DE SPLINES POR POTENCIAS TRUNCADAS
Interpolación
74/90
Construcción de splines mediante Potencias truncadas
Potencia truncada
⎧xn
( x) = ⎨
⎩0
n
+
Ejemplos:
si
si
x≥0
x<0
( x ) + , ( x − 2) 2+ , ( x 2 − 2) + , ( 2 − x 2 ) + , ( x − 3)3+ , ( x − 4)3+
5
4
3
2
1
-2
2
4
6
Interpolación
75/90
Construcción de splines mediante Potencias truncadas
Ejercicios:
Propiedad:
x = ( x)+ + (− x)+ , x = ( x)+ − (− x)+ .
( x − r ) n+ es un spline de grado n con un nodo en r .
Bases de splines:
S1 ( x0 ,…, x N ) = 1, x, ( x − x1 ) + , ( x − x2 ) + ,…, ( x − x N −1 ) +
S 2 ( x0 ,…, x N ) = 1, x, x 2 , ( x − x1 ) 2+ , ( x − x2 ) 2+ ,…, ( x − x N −1 ) 2+
S 3 ( x0 ,…, x N ) = 1, x, x 2 , x 3 , ( x − x1 )3+ , ( x − x2 )3+ ,…, ( x − x N −1 )3+
S n ( x0 ,…, x N ) = 1, x, x 2 ,…, x n , ( x − x1 ) n+ , ( x − x2 ) n+ ,…, ( x − x N −1 ) n+
S 31 ( x0 ,…, x N ) = 1, x, x 2 , x 3 , ( x − x1 ) 2+ , ( x − x2 ) 2+ ,…, ( x − x N −1 ) 2+ ,
( x − x1 )3+ , ( x − x2 )3+ ,…, ( x − x N −1 )3+
Interpolación
76/90
Construcción de splines mediante Potencias truncadas
Ejemplo: Spline cúbico natural para
x −1
0
1
3
y
1 −2
4
0
s ( x ) = a + bx + cx 2 + dx 3 + A( x )3+ + B ( x − 1)3+
sistema lineal
⎛
⎜
⎜
⎜
⎜
⎜
⎝
Solución:
s( x ) =
1 −1
1 0
1
1
1
3
0
0
0
0
1 −1 0 0
0⎞
0
0 0 0
1⎟
1
1 1 0 − 2⎟
9 27 27
8
4⎟
2 −6 0 0
0 ⎟⎟
2 18 18 12
0⎠
1
(23 − 37 x − 90 x 2 − 30 x 3 + 88( x )3+ − 72( x − 1)3+ )
23
Interpolación
77/90
Construcción de splines mediante Potencias truncadas
Ejemplo: Spline cúbico sujeto horizontal para
x −1
0
1
3
y
1 −2
4
0
s ( x ) = a + bx + cx 2 + dx 3 + A( x )3+ + B ( x − 1)3+
sistema lineal
⎛
⎜
⎜
⎜
⎜
⎜
⎝
Solución:
s( x ) =
Interpolación
1 −1
1 −1 0 0
0⎞
1 0
0
0 0 0
1⎟
1
1
1
1 1 0 − 2⎟
1
3
9 27 27
8
4⎟
0
1 −2
3 0 0
0 ⎟⎟
0
1
6 27 27 12
0⎠
1
(22 − 27 x − 120 x 2 − 71x 3 + 152( x )3+ − 120( x − 1)3+ )
22
78/90
Construcción de splines mediante Potencias truncadas
4
3
2
1
-1
1
2
3
-1
-2
Interpolación
79/90
Construcción de splines mediante Potencias truncadas
4
3
2
1
-1
1
2
3
-1
-2
Interpolación
80/90
Construcción de splines mediante Potencias truncadas
4
3
2
1
-1
1
2
3
-1
-2
Interpolación
81/90
Construcción de splines mediante Potencias truncadas
4
3
2
1
-1
1
2
3
-1
-2
Interpolación
82/90
Interpolación de Hermite con Splines
INTERPOLACIÓN DE HERMITE CON SPLINES
Interpolación
83/90
Interpolación de Hermite con Splines
x
Ejemplo: y
y′
0
1
0.5 1
0
0
2
2
0
4
1.5 en S 31 (0,1,2,4)
0
2
1.5
1
0.5
1
2
3
4
- 0.5
Interpolación
84/90
Propiedades extremales de los splines cúbicos
PROPIEDADES EXTREMALES DE LOS SPLINES CÚBICOS
Interpolación
85/90
Propiedades extremales de los splines cúbicos
Condiciones comunes:
< x N = b . Sea s(x ) el spline cúbico
natural o sujeto que interpola los nodos con datos y 0 , … , y N , y adicionales
s′′( a ) = s′′(b) = 0 o bien s′( a ) = y0′ , s′(b) = y ′N .
2
Sea f ∈ C [a , b] cualquier otra función que interpole los mismos datos,
incluyendo los adicionales. Sea E ( x ) = f ( x ) − s ( x ) .”
“Sean los nodos
a = x0 < x1 <
Lema:
b
∫ s′′( x ) E ′′( x )dx = 0.
a
Interpolación
86/90
Propiedades extremales de los splines cúbicos
Demostración:
∫
b
a
N
(por partes) ⎤
s′′( x ) E ′′( x )dx = ⎡
x i −1
⎢⎣u = s′′, dv = E ′′dx ⎥⎦
s′′( x ) E ′′( x )dx = ∑ ∫
i =1
N
(
xi
= ∑ s′′( x ) E ′( x ) xii −1 − ∫
i =1
x
xi
x i −1
s′′′( x ) E ′( x )dx
N
xi
i =1
x i −1
= s′′(b) E ′(b) − s′′( a ) E ′( a ) − ∑ Ki ∫
si es natural:
)
E ′( x )dx
s′′( a ) = s′′(b) = 0 , si es sujeto: E ′( a ) = E ′(b) = 0 , y además
∫
xi
E ′( x )dx = E ( x ) xi = 0 . x
x i −1
i −1
Interpolación
87/90
Propiedades extremales de los splines cúbicos
Teorema (propiedad extremal):
∫
b
a
b
s′′( x ) 2 dx ≤ ∫ f ′′( x ) 2 dx .
a
Demostración:
∫
b
a
f ′′( x ) 2 dx = ∫ (E ′′( x ) + s′′( x ) ) dx
b
2
a
b
b
a
a
= ∫ E ′′( x ) 2 dx + ∫ s′′( x ) 2 dx + 0
b
≥ ∫ s′′( x ) 2 dx.
a
Interpolación
88/90
Propiedades extremales de los splines cúbicos
Teorema (estudio del error):
E ( x) ≤ h
3
2
(∫ f ′′(t)dt ) ∀x ∈ [a, b]
1
2
b
a
,
donde h = max ( xi − xi −1 ) es el diámetro de la partición.
1≤ i ≤ N
Demostración:
E ′( ci ) = 0 , i = 1,…, N ,
E ( xi ) = 0 ∀i ⇒ ∃ci ∈ [ xi −1 , xi ]
luego
∫
x
ci
E ′′(t )dt = E ′( x ) ∀x ∈ [a , b].
Interpolación
89/90
Propiedades extremales de los splines cúbicos
Por otro lado (abreviando) se tiene
∫
x
ci
E ′′ 2 ≤ ∫ E ′′ 2 = ∫ ( f ′′ − s ′′) = ∫ f ′′ 2 − ∫ s ′′ 2 − 2 ∫ s ′′E ′′ ≤ ∫ f ′′ 2 ;
b
b
a
a
2
por la desigualdad de Cauchy-Schwarz
∫
E ′( x ) ≤
y como
∫
x
x i −1
x
ci
b
b
b
b
a
a
a
a
u, v ≤ u v →
∫
∫
fg ≤
x
x
b
ci
xi
a
f 2 ∫ g2
E ′′(t ) 2 dt ⋅ ∫ 12 dt ≤ h ∫ E ′′(t ) 2 dt ≤ h ∫ f ′′(t ) 2 dt
E ′(t )dt = E ( x ) − E ( xi −1 ) = E ( x ) , entonces se tiene
E ( x) =
∫
≤h
Interpolación
x
x i −1
3
2
E ′(t )dt ≤ ∫
x
x i −1
E ′(t ) dt ≤ h
1
2
(∫ f ′′(t) dt ) ( x − x
b
a
2
1
2
i −1
)
(∫ f ′′(t) dt ) .
b
2
1
2
a
90/90
Descargar