deduccion de los splines cubicos

9
Deducción del cálculo de los Splines cúbicos IMPORTANTE: Lean esta deducción, porque podría ir para el examen. Además, por supuesto, deberán leer la teoría general sobre los splines (aunque nos enfoquemos en los splines cúbicos, podría hacer preguntas sobre los splines en general). Ante todo, recordemos que queremos construir un spline cúbico de interpolación que pase por los nodos descritos a continuación: x x 0 x 1 x 2 x n y y 0 y 1 y 2 y n Lo cual nos da lugar a la siguiente función: S ( x) = { S 0 ( x ) ,x∈ ¿ S 1 ( x ) ,x∈ ¿ S n1 ( x) ,x∈ [ x n1 ,x n ] Además, recordemos las condiciones que deben cumplirse: i. Continuidad de S ( x), lo cual implica la continuidad de los S i ( x ) para i=0 , 1 ,…,n1. De esto tenemos garantía, pues los S i ( x) son polinomios. ii. Condiciones de interpolación: S ( x i ) =y i y S ( x i+1 ) =y i +1 . Con este añadido, aseguramos que la función no tenga saltos. iii. Condiciones de continuidad de S' en cada intervalo [ x i ,x i+1 ] : S i1 ' ( x i1 ) =S i ' ( x i ) iv. Condiciones de continuidad sobre S'' en cada intervalo [ x i ,x i+1 ] : S i 1 '' ( x i1 ) =S i '' ( x i ) Como cada S i ( x) es un polinomio de tercer grado, cada uno de ellos tiene 4 constantes a determinar (los coeficientes del

Upload: julio-espana

Post on 21-Dec-2015

7 views

Category:

Documents


0 download

DESCRIPTION

trabajo universitario

TRANSCRIPT

Page 1: Deduccion de Los Splines Cubicos

Deducción del cálculo de los Splines cúbicos

IMPORTANTE: Lean esta deducción, porque podría ir para el examen. Además, por supuesto, deberán leer la teoría general sobre los splines (aunque nos enfoquemos en los splines cúbicos, podría hacer preguntas sobre los splines en general).

Ante todo, recordemos que queremos construir un spline cúbico de interpolación que pase por los nodos descritos a continuación:

x x0 x1 x2 … xny y0 y1 y2 … yn

Lo cual nos da lugar a la siguiente función:

S ( x )={ S0 ( x ) , x∈¿S1 ( x ) , x∈¿

⋮Sn−1 ( x ) , x∈[xn−1 , xn]

Además, recordemos las condiciones que deben cumplirse:

i. Continuidad de S(x ), lo cual implica la continuidad de los Si ( x ) para i=0 ,1 ,…,n−1. De esto

tenemos garantía, pues los Si(x ) son polinomios.

ii. Condiciones de interpolación: S (x i )= y i y S (x i+1 )= y i+1. Con este añadido, aseguramos que la

función no tenga saltos.

iii. Condiciones de continuidad de S ' en cada intervalo [ xi , xi+1]: Si−1' ( xi−1 )=S i' (x i)

iv. Condiciones de continuidad sobre S ' ' en cada intervalo [ xi , xi+1]: Si−1' ' ( xi−1 )=S i' ' (x i )

Como cada Si(x ) es un polinomio de tercer grado, cada uno de ellos tiene 4 constantes a

determinar (los coeficientes del polinomio). Sumando, en total, tenemos 4 n−2 condiciones que determinar; por lo tanto, necesitamos agregar 2 condiciones más para asegurar la unicidad de la función obtenida (más adelante veremos cuáles son esas condiciones faltantes).

Page 2: Deduccion de Los Splines Cubicos

Construcción de los splines

Sea K i=S' ' (x i). Los K i existen por la condición iv. Como S es cúbico, tenemos que S ´ ´ es

lineal, y satisface que Si' ' (x i )=K i y Si+1

' ' (x i+1 )=K i+1. Entonces, podemos escribir:

Si' ' ( x )=

(x i+1−x )K i+(x−x i )K i+1

x i+1−x i(I )

Llamemos hi=xi+1−x i. Así, integrando 2 veces (I), obtenemos:

Si ( x )=(x i+1−x )

3K i+(x−x i)3K i+1

6hi+C (x i+1−x )+D (x−x i )(II )

Donde C y D son constantes de integración. Vamos a averiguar cuánto valen:

a) Por las condiciones de interpolación:

Si (x i )=hi

3K i

6hi+C hi= y i⇒C=

y ih i

−hi K i

6(III )

Si (x i+1 )=hi

3 K i+1

6hi+Dhi= y i+1⇒D=

y i+1

hi−hi K i+1

6(IV )

Sustituyendo (III) y (IV) en (II), concluimos que:

Si ( x )=( xi+1−x )3K i+( x−x i)

3K i+1

6 hi+y i (x i+1−x )+ y i+1 (x−x i )

hi−h i6

[K i ( xi+1−x )+K i+1 (x−x i ) ](V )

x i≤ x≤ x i+1 ,i=1,2…,n−1

Aunque a primera vista (V) parece complicada, nos ayuda a hallar los coeficientes que buscamos sin trabajar más, ya que los valores de C y D hacen que S(x ) sea continua en [ x1 , xn].

b) Veamos ahora si S '(x ) es continua en [ x1 , xn]; es decir:

limx→x i

+¿S i' ( x )= lim

x→ xi−¿Si

' (x)en [ xi , x i+1 ]¿ ¿

¿

Derivando (II), tenemos:

Si' ( x )=

−3 (x i+1−x )2K i+3 (x−x i )2 K i+1

6h i+y i+1− y ihi

−hi (K i+1−K i )

6en[ x i , x i+1]

Page 3: Deduccion de Los Splines Cubicos

Ahora, veamos cuánto valen los límites arriba descritos:

Si' ¿

Si' ¿

Como queremos garantizar la continuidad de Si' (x ), debe cumplirse que Si

' ¿. Llamando

d i=y i+1− y ihi

y simplificando, llegamos al siguiente resultado:

Si' ¿

−hi K i2

+d i−hi (K i+1−K i )

6=

−hi−1K i2

+d i−1−hi−1(K i−K i−1)

6

hi−1

6K i−1+

h i−1+h i3

K i+h i6K i+1=d i−d i−1 para2≤i ≤n−1

Si decimos que γ i=K i6

, podemos escribir el resultado en la forma dada a continuación:

γ i−1K i−1+2 γ i (hi−1+hi )+γ i+1hi=d i−d i−1 para2≤i ≤n−1(VI )

Si seguimos con detenimiento esta deducción, vemos que tenemos un problema: ¿cuáles son los valores de γ 1 y γ n? ¡Pues estas son las condiciones faltantes de las que hablamos anteriormente!

Distinguiremos 2 casos:

i) Spline natural: es aquel donde γ 1=γn=0. En este caso, nos queda el siguiente sistema:

¿

La matriz arriba descrita es cuadrada y tiene n−2 filas. Además, es invertible. Si llamamos A a esta matriz, entonces det (A )≠0, lo que a su vez, por un teorema de Álgebra Lineal, implica que el sistema arriba escrito tiene solución.

ii) Spline sujeto: aquí, tenemos lo siguiente:

S' ( x1 )=f ' (x1 )= y1'

S' ( xn)=f ' (xn )= yn'

Page 4: Deduccion de Los Splines Cubicos

En este caso, tenemos 2 filas que se modifican en la matriz: la primera, que quedaría

2h1 γ1+h1γ 2=d1− y1' , y la última, que toma la siguiente forma hn−1 γ n−1+2hn γn= yn

'−dn−1. En

consecuencia, el sistema se modifica ligeramente, tal y como se muestra a continuación:

[2h1 h1 0 0 0 0 0h1 2(h1+h2) h2 0 0 0 00 h2 2(h2+h3) h3 0 0 00 0 h3 2(h3+h4) ⋱ hn−2 00 0 0 ⋱ ⋱ 2(hn−2+hn−1) hn−1

0 0 0 0 0 hn−1 2hn−1

][γ 1

γ 2

γ3

⋮γn−1

γ n]=[

d1− y1'

d2−d1

d3−d2

⋮dn−1−dn−2

yn'−dn−1

]Ejemplo de spline cúbico natural: Interpole los siguientes datos mediante un spline cúbico natural:

x -3 -1 0 3 4y 7 11 26 56 29

Como nos piden el spline cúbico natural, tenemos que γ 1=γ5=0. Recordemos las ecuaciones a usar:

Si ( x )=( xi+1−x )3K i+( x−x i)

3K i+1

6 hi+y i (x i+1−x )+ y i+1 (x−x i )

hi−h i6

[K i ( xi+1−x )+K i+1 (x−x i ) ]

hi=xi+1−x i , d i=y i+1− y ihi

, γ i=K i

6

Por las condiciones que nos piden, tenemos que K1=K5=0. La función spline que debemos construir es la siguiente:

S ( x )={S1 ( x ) ,−3≤ x≤−1S2 ( x ) ,−1≤x ≤0S3 ( x ) ,0≤ x≤3S4 ( x ) ,3≤x ≤4

Procedamos ahora a efectuar los cálculos requeridos:

h1= x2− x1=−1+3=2

h2=x3−x2=0+1=1

h3=x4−x3=3−0=3

h4=x5−x4=4−3=1

Page 5: Deduccion de Los Splines Cubicos

d1=y2− y1

h1

=11−72

=2

d2=y3− y2

h2

=26−111

=15

d3=y4− y3

h3

=56−263

=10

d4=y5− y4

h4

=29−561

=−27

Debido a que tenemos un spline cúbico natural el sistema que debemos formar es el siguiente:

[2(h1+h2) h2 0h2 2(h2+h3) h3

0 h3 2(h3+h4)][γ2

γ 3

γ 4]=[ d2−d1

d3−d2

d4−d3]

El cual, en nuestro caso, queda así:

[6 1 01 8 30 3 8 ][γ 2

γ 3

γ 4]=[ 13

−5−37]

La solución de este sistema es γ 2=2 , γ 3=1 , γ 4=−5. Ahora, podemos obtener los valores de los K i:

K2=6 γ2=12

K3=6 γ3=6

K4=6 γ 4=−30

Y recordando que K1=K5=0, vamos a construir cada uno de los Si ( x ) con la ecuación (V):

S1 ( x )=(x2−x)

3 K1+(x−x1)3K2

6h1

+y1 (x2−x )+ y2(x−x1)

h1

−h1

6[K1 (x2−x )+K2(x−x1)]

S1 ( x )=(−1−x )3⋅0+ ( x+3 )3⋅126 ⋅2

+7 (−1−x )+11(x+3)

2−2

6[0 (−1−x )+12(x+3)]

Page 6: Deduccion de Los Splines Cubicos

S1 ( x )=12(x3+9 x2+27 x+27)12

+−7 ( x+1 )+11(x+3)

2−1

3[12(x+3)]

S1 ( x )=12 x3+108x2+324 x+32412

+ 4 x+262

−13[12x+36 ]

S1 ( x )=x3+9x2+27 x+27+2 x+13−4 x−12

S1 ( x )¿ x3+9 x2+25 x+28

De manera análoga, usando la misma ecuación (V), hallamos las demás Si(x ), obteniendo la

definición definitiva de S(x ):

S ( x )={ x3+9x2+25 x+28 ,−3≤x ≤−1

−x3+3 x2+19x+26 ,−1≤ x≤0−2x3+3 x2+19 x+26 ,0≤x ≤3

5x3−60x2+208 x−163 ,3≤x ≤4

Ejemplo de spline cúbico sujeto: Interpolar los nodos (0 ,0), (1 ;0,5), (2 ,2) y (3 ;1,5) mediante un

spline cúbico sujeto a las siguientes condiciones: S' (0 )=0,2 y S' (3 )=−1.

Igual que en el caso anterior, comenzamos a calcular los datos que nos hacen falta para formar

nuestro sistema y resolverlo, tomando en cuenta que y1'=0,2 y yn

'=−1:

h1= x2− x1=1−0=1

h2=x3−x2=2−1=1

h3=x4−x3=3−2=1

d1=y2− y1

h1

=0,5−01

=0,5

d2=y3− y2

h2

=2−0,51

=1,5

d3=y4− y3

h3

=1,5−21

=−0,5

En este caso, nuestra matriz general sería la siguiente:

Page 7: Deduccion de Los Splines Cubicos

[2h1 h1 0 0h1 2(h1+h2) h2 00 h2 2(h2+h3) h3

0 0 h3 2h3][ γ1

γ2

γ3

γ4]=[d1− y1

'

d2−d1

d3−d2

yn' −d3

]La cual, para los valores que tenemos, quedaría así:

[2 1 0 01 4 1 00 1 4 10 0 1 2

][γ 1

γ 2

γ 3

γ 4]=[ 0,3

1−2

−0,5]

Al resolver el sistema, obtenemos los siguientes valores: γ 1=−0,24, γ 2=0,49, γ 3=−0,71 y γ 4=0,63. En virtud de estos valores, ya podemos calcular los K i:

K1=6 γ1=6 (−0,24 )=−1,44

K2=6 γ2=6 ⋅0,49=2,94

K3=6 γ3=6 (−0,71 )=−4,26

K4=6 γ 4=6 ⋅0,63=3,78

Finalmente, podemos calcular los Si ( x ):

S1 ( x )=(x2−x)

3 K1+(x−x1)3K2

6h1

+y1 (x2−x )+ y2(x−x1)

h1

−h1

6[K1 (x2−x )+K2(x−x1)]

S1 ( x )= (1−x )3 (−1,44 )+(x−0)3 ⋅2,946 ⋅1

+0 (1−x )+0,5(x−0)

1−1

6[ (−1,44 ) (1−x )+2,94 (x−0)]

S1 ( x )= (−1,44 ) (1−x )3+2,94 x3

6+0,5 x−1

6[1,44 x−1,44+2,94 x ]

S1 ( x )=(−1,44 ) (1−3 x+3 x2−x3 )+2,94 x3

6+0,5 x−0,24 x+0,24−0,49 x

S1 ( x )=1,44 x3−4,32 x2+4,32x−1,44+2,94 x3

6−0,23 x+0,24

S1 ( x )=0,24 x3−0,72 x2+0,72x−0,24+0,49 x3−0,23 x+0,24

S1 ( x )=0,73 x3−0,72 x2+0,49 x

Procediendo de igual manera con las Si(x ) que faltan obtenemos la forma de S(x ):

Page 8: Deduccion de Los Splines Cubicos

S ( x )={ 0,73x3−0,72x2+0,49 x ,0≤ x≤1−0,49 x3+2,94 x2−3,18 x+1,23 ,1≤x ≤2

1,34 x3−10,17 x2+24,89 x−17,82 ,2≤x ≤3