Interpolacion
Facultad de Ciencias Físicas y Matemáticas
Departamento de Ingeniería Matemática
Semestre Otoño 2007
Cálculo Numérico
MA33A-02
Profesor: Gonzalo Hernández
Auxiliar: Gonzalo Ríos
Fecha: 17 de Abril
Auxiliar 6: Interpolación Mediante Spline Cúbicos
Resumen Materia
1. Spline Cúbica: S (x) = {Sk (x) x ∈ [xk , xk+1 ] k ∈ {0..n − 1}} donde:
Sk (x) = ak + bk (x −xk ) + ck (x − xk )2 + dk (x − xk )3
y verifica:
(a)
i. Interpole: Sk (xk ) = yk
ii. Continua: Sk−1 (xk ) = Sk (xk )
0
0
iii. 1◦ Derivada Continua: Sk−1 (xk ) = Sk (xk )
00
00
iv. 2◦ Derivada Continua: Sk−1 (xk ) = Sk (xk )
n+1 restricciones
n-1 restricciones
n-1 restricciones
n-1 restricciones
2. Condiciones de Borde: Son 4n incógnitas y 4n-2 restricciones + 2 condicionesde borde
(a)
(b)
(c)
(d)
Spline
Spline
Spline
Spline
00
00
Natural: S (x0 ) = 0, S (xn ) = 0
00
00
00
00
Extremos Constantes: S (x0 ) = S (x1 ), S (xn ) = S (xn−1 )
00
00
Valor Fijo: S (x0 ) = α, S (xn ) = β
0
0
0
0
Sujeta: S (x0 ) = f (x0 ), S (xn ) = f (xn )
00
−
3. Construcción de la Spline: se define ck = S (xk ) , hk = xk+1 − xk , λk = ak+1k ak , μk = 3 (λk− λk−1 ) y se resuelve
2
h
el sistema matricial de n+1 incógnitas
⎤⎡ c ⎤ ⎡ μ ⎤
⎡
0
0
Fila
condición
de
borde
en
x0
⎢h0 2 (h0 + h1 )
h1
0
...
...
...
0 ⎥ ⎢ c1 ⎥ ⎢ μ1 ⎥
⎥⎢
⎥
⎥⎢
⎢
⎢0
h1
2 (h1 + h2 )
h2
0
...
...
0 ⎥ ⎢ c2 ⎥ ⎢ μ2 ⎥
⎢
⎥⎢
⎥
⎥
⎢
⎢0
0
h2
2 (h2 + h3 )
h3
0
...
0 ⎥⎢ . ⎥ ⎢ . ⎥
⎢.⎥ ⎢.⎥
.⎥ ⎢.⎥
⎥
⎢
⎢.
.
.
.
. ⎥⎢ . ⎥ = ⎢ . ⎥
.
.
.
. ⎥⎢ . ⎥ ⎢. ⎥
⎢.
.
0
0
.
.
.
...
. ⎥⎢ .
.
⎢
⎥⎢ . ⎥ ⎢ . ⎥
⎢.
.
.
.
.
.
.
.
.
.
.
⎥⎢ . ⎥ ⎢ . ⎥
⎢.
.
.
.
.
.
...
0 ⎥⎢ . ⎥ ⎢ . ⎥
⎢.
⎢
⎥⎢
⎥
⎣0
0
0
0
...
hn−2 2 (hn−2 + hn−1 ) hn−1 ⎦ ⎣cn−1 ⎦ ⎣μ
⎦
n−1
Fila
condición
de
borde
en
xn
cn
μ
n
Los otros coeficientes de la spline se obtienen de las ecuaciones:
ak = yk
bk =
ak+1 − ak
hk (2ck + ck+1 )
−
hk3
dk =
ck+1 − ck
3hk
Problemas
1) Determine la spline sujeta de la función f (x) = cos(πx) en los puntos equiespaciados: x0 = 0, x1 =
3
4 , x4 = 1.
Solución:
√
√
1
4 , x2
=
1
2 , x3
=
π
y0 = cos(0) = 1, y1 = cos( π ) = 22 , y2 = cos( π ) = 0, y3 = cos( 34 ) = − 22 , y4 = cos(π) = −1. Primero se necesita
4
2
calcular h0 , h1 , h2 , h3 y a0, a1 , a2 , a3 , a4. Como los puntos son equiespaciados: h0 = h1 = h2 = h3 = 1 . Los ak se
√
√4
determinan están dados por: ak = f (xk ) ∀k = 0, 1, ..., 4. Luego: a0 = 1, a1 = 22 , a2 = 0, a3 = − 22 , a4 = −1. El
sistema de la spline sujeta es:
⎤
⎡ 3(a −a )
1
0
⎡
⎤⎡
⎤
− 3f 0 (x0 )
h0
c0
2h0
h0
0
0
0
⎥
⎢
⎢ h0 2(h0 + h1 )
⎥ ⎢ c1 ⎥ ⎢ 3(a2 −a1 ) − 3(a1 −a0 ) ⎥
h1
0
0
h1
h0
⎢
⎥⎢
⎥ ⎢ 3(a3−a2 ) 3(a2 −a1 ) ⎥
⎢0
⎥
⎥ ⎢ c2 ⎥ = ⎢
h1
2(h1 + h2 )
h2
0
−
⎢
⎥
⎥⎢
⎥⎢
h2
h1
⎣0
⎦ ⎣ cn−1 ⎦ ⎢ 3(a4 −a3 ) − 3(a3 −a2 ) ⎥
0
hn−2
2(hn−2 + hn−1 ) hn−1
⎦
⎣
h3
h2
0
0
0
hn−1
2hn−1
cn
3f 0 (xn ) − 3(a4 −a3 )
h3
Reemplazando los valores:
⎡
Cuya solución es:
1
4
1
2
1
4
⎢
⎢
⎢0
⎢
⎣0
0
1
1
4
0
0
0
1
4
0
0
1
4
1
1
0
1
4
1
40
0
0
1
4
1
2
⎤⎡
c0
c1
c2
c3
c4
⎥⎢
⎥⎢
⎥⎢
⎥⎢
⎦⎣
⎡
⎢
⎢
⎢
⎢
⎣
c0
c1
c2
c3
c4
⎤
⎡
⎤
⎡
⎥⎢
⎥⎢
⎥=⎢
⎥⎢
⎦⎢
⎣
⎥⎢
⎥⎢
⎥=⎢
⎥⎢
⎦⎣
√
12( 22 − 1)
√
12(1 − 2)
0√
−12(1 − 2)
√
−12( 22 − 1)
−5. 193 3
−3. 672 2
0
3. 672 2
5. 193 3
⎤
⎤
⎡
−3. 514 7
⎥⎢
⎥ ⎢ −4. 970 6
⎥⎢
0
⎥=⎢
⎥⎣
4. 970 6
⎦
3. 514 7
⎤
⎥
⎥
⎥
⎥
⎦⎥
⎥
⎥
⎥
⎦
Finalmente se tienen que determinar los bk y dk . Para ello se utilizan las ecuaciones:
bk
dk
Luego:
= (ak+1 − ak )
=
1
hk
− (ck+1 + 2ck )
hk
3
∀k = 0, ..., n − 1
1
(ck+1 − ck ) ∀k = 0, ..., n − 1
3hk
⎤⎡
⎤⎡
1
(a1 − a0 ) h0 − (c1 + 2c0 ) h0
b0
0
3
1
⎢ b1 ⎥ ⎢ (a2 − a1 ) h − (c2 + 2c1 ) h1 ⎥ ⎢ −2.2164
3⎥
⎢
⎢
⎥=⎢
1
⎣ b2 ⎦ ⎢ (a3 − a2 ) 1 −...
Regístrate para leer el documento completo.