Está en la página 1de 48

Interpolacin por splines cbicos

Uno de los problemas bsicos del polinomio interpoladorde Lagrange, es


que, para valores grandes de
N,
los poli-nomios de grado
N
pueden tener un carcter fuertementeoscilante, y los resultados obtenidos por la
interpolacinpueden no ser muy satisfactorios,
como indica el ejemplosiguiente.

Ejemplo 22
El polinomio base de Lagrange centrado en
0
sobre los puntos
x
i
=

5
,

4
,

3
,

2
,

1
,
0
,
1
,
2
,
3
,
4
,
5
es
P
0
(
x
) =(
x
2

1)(
x
2

4)(
x
2

9)(
x
2

16)(
x
2

25)

14400
Tiene un marcado carcter oscilante como muestra sugr

ca en el intervalo
[

5
,
5]
.
Ejemplo 23
(
x
2

1)(
x
2

4)(
x
2

9)(
x
2

16)(
x
2

25)

14400=
52.50-2.5-553.752.51.250xyxy
Para evitar este problema de oscilaciones de los poli-nomios de Lagrange, cuando se
trabaja con muchos puntosde interpolacin, se suele interpolar la funcin
utilizandopolinomios a trozos, de

niendo un polinomio distinto paracada intervalo


[
x
i
,x
i
+1
]
.
L a t c n i c a m s c o n o c i d a e s l a interpolacin por splines cbicos, que son
polinomios degrado
3
.
Por tanto, tendremos un polinomio de grado
3
dis-tinto
P
i
3
(
x
)=
d
i
(
x

x
i
)
3
+
c
i
(
x

x
i
)
2
+
b
i
(
x

x
i
)+
a
i
paracada intervalo
[
x
i
,x
i
+1
]
.
Si hay
N
+1
puntos, el nmero depolinomios es
N.
Para de

nir estos polinomios, se imponenlas siguientes condiciones:


P
i
3
(
x
i
)=
f
(
x
i
)
i
=0
,..,N

1
P
i
3
(
x
i
+1
)=
f
(
x
i
+1
)
i
=0
,...,N

1
P
i
3
x
(
x
i
+1
)=
P
i
+13
x
(
x
i
+1
)
i
=0
,..,N

2
P
i
3
x
2
(
x
i
+1
)=

2
P
i
+13
x
2
(
x
i
+1
)
i
=0
,...,N

2
V a m o s a i n t r o d u c i r l a n o t a c i n
h
i
=
x
i
+1

x
i
.
N t e s e q u e , p a r a d e

n i r l o s p o l i - nomios, tenemos que buscar


4
N
valores, es decir:
a
0
,....,a
N

1
,b
0
,...,b
N

1
,c
0
,.....,c
N

1
,
d
0
,....,d
N

1
.
Por razones tcnicas, como veremos posteriormente,vamos a utilizar tambin los valores
a
N
y
c
N
.
Teorema 34
Si una familia de polinomios
P
i
3
(
x
)=
d
i
(
x

x
i
)
3
+
c
i
(
x

x
i
)
2
+
b
i
(
x

x
i
)+
a
i
,i
=0
,..,N,
satisface las condiciones anteriores, entonces
a
i
=
f
(
x
i
)
i
=0
,..,N d
i
=
c
i
+1

c
i
3
h
i
i
=0
,..,N

1
b
i
=
a
i
+1

a
i
h
i

h
i
(2
c
i
+
c
i
+1
)3
i
=0
,..,N

1
h
i

1
c
i

1
+ 2(
h
i

1
+
h
i
)
c
i
+
h
i
c
i
+1
==3(
a
i
+1

a
i
)
h
i

3(
a
i

a
i

1
)
h
i

1
para
i
=1
,..,N

1
.
Demostracin
De la condicin
P
i
3
(
x
i
)=
f
(
x
i
)
,
s e o b - tiene de forma inmediata que
a
i
=
f
(
x
i
)
.
De la condicin

2
P
i
+13
x
2
(
x
i
+1
)=

2
P
i
3
x
2
(
x
i
+1
)
,
se obtiene que
2
c
i
+1
=6
d
i
h
i
+2
c
i
de donde, despejando, obtenemos que
d
i
=
c
i
+1

c
i
3
h
i
De la Condicin
P
i
3
(
x
i
+1
)=
f
(
x
i
+1
)
,
se obtiene que
d
i
h
3
i
+
c
i
h
2
i
+
b
i
h
i
+
a
i
=
a
i
+1
Despejando, obtenemos que
b
i
=
a
i
+1

a
i
h
i

d
i
h
2
i

c
i
h
i
=
a
i
+1

a
i
h
i

h
i
(2
c
i
+
c
i
+1
)3
Finalmente, de la condicin
P
i
3
x
(
x
i
)=
P
i

13
x
(
x
i
)
,
seobtiene que
b
i
=3
d
i

1
h
2
i

1
+2
c
i

1
h
i

1
+
b
i

1
y, despejando todo en funcin de
c
i
,
se obtiene la relacin
h
i

1
c
i

1
+ 2(
h
i

1
+
h
i
)
c
i
+
h
i
c
i
+1
==3(
a
i
+1

a
i
)
h
i

3(
a
i

a
i

1
)
h
i

1
Ntese que esta ltima relacin determina un sistemade ecuaciones donde las incgnitas
son las variables
c
i
.
Di-cho sistema tiene
N
+1
incognitas
(
c
0
,...,c
N
)
y
N

1
ecua-ciones. Para completar dicho sistema, hay que aadir unaecuacin que involucre a
c
0
y otra ecuacin que involucrea
c
N
.
Para aadir estas dos ecuaciones hay dos proced -imientos estndares. El primero
consiste simplemente en

jar
c
0
=
c
N
=0
,
lo que signi

ca que
c
0
=

2
P
03
x
2
(
x
0
)=0
c
N
=

2
P
N

13
x
2
(
x
N
)=0

Ejemplo 22
El polinomio base de Lagrange centrado en
0
sobre los puntos
x
i
=

5
,

4
,

3
,

2
,

1
,
0
,
1
,
2
,
3
,
4
,
5
es
P
0
(
x
) =(
x
2

1)(
x
2

4)(
x
2

9)(
x
2

16)(
x
2

25)

14400
Tiene un marcado carcter oscilante como muestra sugr

ca en el intervalo
[

5
,
5]
.
Ejemplo 23
(
x
2

1)(
x
2

4)(
x
2

9)(
x
2

16)(
x
2

25)

14400=
52.50-2.5-553.752.51.250xyxy
Para evitar este problema de oscilaciones de los poli-nomios de Lagrange, cuando se
trabaja con muchos puntosde interpolacin, se suele interpolar la funcin
utilizandopolinomios a trozos, de

niendo un polinomio distinto paracada intervalo


[
x
i
,x
i
+1
]
.
L a t c n i c a m s c o n o c i d a e s l a interpolacin por splines cbicos, que son
polinomios degrado
3
.
Por tanto, tendremos un polinomio de grado
3
dis-tinto
P
i
3
(
x
)=
d
i
(
x

x
i
)
3
+
c
i
(
x

x
i
)
2
+
b
i
(
x

x
i
)+
a
i
paracada intervalo
[
x
i
,x
i
+1
]
.
Si hay
N
+1
puntos, el nmero depolinomios es
N.
Para de

nir estos polinomios, se imponenlas siguientes condiciones:
P
i
3
(
x
i
)=
f
(
x
i
)
i
=0
,..,N

1
P
i
3
(
x
i
+1
)=
f
(
x
i
+1
)
i
=0
,...,N

1
P
i
3
x
(
x
i
+1
)=
P
i
+13
x
(
x
i
+1
)
i
=0
,..,N

2
P
i
3
x
2
(
x
i
+1
)=

2
P
i
+13
x
2
(
x
i
+1
)
i
=0
,...,N

2
V a m o s a i n t r o d u c i r l a n o t a c i n
h
i
=
x
i
+1

x
i
.
N t e s e q u e , p a r a d e

n i r l o s p o l i - nomios, tenemos que buscar
4
N
valores, es decir:
a
0
,....,a
N

1
,b
0
,...,b
N

1
,c
0
,.....,c
N

1
,
d
0
,....,d
N

1
.
Por razones tcnicas, como veremos posteriormente,vamos a utilizar tambin los valores
a
N
y
c
N
.
Teorema 34
Si una familia de polinomios
P
i
3
(
x
)=
d
i
(
x

x
i
)
3
+
c
i
(
x

x
i
)
2
+
b
i
(
x

x
i
)+
a
i
,i
=0
,..,N,
satisface las condiciones anteriores, entonces
a
i
=
f
(
x
i
)
i
=0
,..,N d
i
=
c
i
+1

c
i
3
h
i
i
=0
,..,N

1
b
i
=
a
i
+1

a
i
h
i

h
i
(2
c
i
+
c
i
+1
)3
i
=0
,..,N

1
h
i

1
c
i

1
+ 2(
h
i

1
+
h
i
)
c
i
+
h
i
c
i
+1
==3(
a
i
+1

a
i
)
h
i

3(
a
i

a
i

1
)
h
i

1
para
i
=1
,..,N

1
.
Demostracin
De la condicin
P
i
3
(
x
i
)=
f
(
x
i
)
,
s e o b - tiene de forma inmediata que
a
i
=
f
(
x
i
)
.
De la condicin

2
P
i
+13
x
2
(
x
i
+1
)=

2
P
i
3
x
2
(
x
i
+1
)
,
se obtiene que
2
c
i
+1
=6
d
i
h
i
+2
c
i
de donde, despejando, obtenemos que
d
i
=
c
i
+1

c
i
3
h
i
De la Condicin
P
i
3
(
x
i
+1
)=
f
(
x
i
+1
)
,
se obtiene que
d
i
h
3
i
+
c
i
h
2
i
+
b
i
h
i
+
a
i
=
a
i
+1
Despejando, obtenemos que
b
i
=
a
i
+1

a
i
h
i

d
i
h
2
i

c
i
h
i
=
a
i
+1

a
i
h
i

h
i
(2
c
i
+
c
i
+1
)3
Finalmente, de la condicin
P
i
3
x
(
x
i
)=
P
i

13
x
(
x
i
)
,
seobtiene que
b
i
=3
d
i

1
h
2
i

1
+2
c
i

1
h
i

1
+
b
i

1
y, despejando todo en funcin de
c
i
,
se obtiene la relacin
h
i

1
c
i

1
+ 2(
h
i

1
+
h
i
)
c
i
+
h
i
c
i
+1
==3(
a
i
+1

a
i
)
h
i

3(
a
i

a
i

1
)
h
i

1
Ntese que esta ltima relacin determina un sistemade ecuaciones donde las incgnitas
son las variables
c
i
.
Di-cho sistema tiene
N
+1
incognitas
(
c
0
,...,c
N
)
y
N

1
ecua-ciones. Para completar dicho sistema, hay que aadir unaecuacin que involucre a
c
0
y otra ecuacin que involucrea
c
N
.
Para aadir estas dos ecuaciones hay dos proced -imientos estndares. El primero
consiste simplemente en

jar
c
0
=
c
N
=0
,
lo que signi

ca que
c
0
=

2
P
03
x
2
(
x
0
)=0
c
N
=

2
P
N

13
x
2
(
x
N
)=0

El segundo procedimiento se utiliza cuando utilizamoslos valores de


f
0
(
a
)
y
f
0
(
b
)
.
En este caso, imponemos que
P
03
x
(
x
0
)=
f
0
(
a
)
P
N

13
x
(
x
N
)=
f
0
(
b
)
de donde salen las ecuaciones
f
0
(
a
)=
a
1

a
0
h
0

h
0
3(2
c
0
+
c
1
)
f
0
(
b
)=
a
N

a
N

1
h
N

h
N

1
3(2
c
N

1
+
c
N
)
Por lo tanto, siguiendo con el resultado del teorema anterior, para calcular los
splines cbicos es necesario, enprimer lugar, tomar
a
i
=
f
(
x
i
)
.
A continuacin, se resuelveun sistema de ecuaciones tridiagonal para el clculo de los
c
i
. Los
b
j
y
d
j
se calculan directamente a partir de las relaciones mostradas en el teorema
anterior.
Ejemplo 24
V a m o s a c a l c u l a r l o s p o l i n o m i o s i n t e r p o - ladores utilizando splines
cbicos al interpolar la funcin
f
(
x
)
en los puntos
x
=0
,
1
,
2
,
y
3
,
sabiendo que
f
(0) = 0
,f
(1) = 1
,f
(2) = 0
,f
(3) = 2
,
tomando
c
0
=
c
3
=0
.
En este caso
h
i
=1
. Debemos de

nir
3
polinomios distintos que corresponden a los intervalos
[0
,
1]
,
[1
,
2]
,
y
[2
,
3]
.
Los trminos
a
i
vienen dados por

a
0
a
1
a
2
a
3

0102

El sistema que debemos resolver para calcular los


c
i
es
Ejemplo 25

4 11 4

c
1
c
2

69

cuya solucin es

c
1
c
2

2
.
22
.
8

.
Los valores
b
i
y
d
i
vienen dados por
d
0
=

2
.
2

03=

0
.
733
d
1
=2
.
8+2
.
23= 1
.
667
d
2
=0
.

2
.
83=

0
.
933
b
0
=1

2
.
23= 1
.
733
b
1
=

4
.
4+2
.
83=

0
.
467
b
2
=2

5
.
6 + 03= 0
.
133
Por tanto, los polinomios son
P
0
(
x
)=

0
.
733
x
3
+1
.
733
xP
1
(
x
)=1
.
667(
x

1)
3

2
.
2(
x

1)
2

0
.
467(
x

1) + 1
P
2
(
x
)=

0
.
933(
x

2)
3
+2
.
8(
x

2)
2
+0
.
133(
x

2)
A continuacin se muestra una gr

ca con los
3
poli-nomios concatenados en el intervalo
[0
,
3] :
Como puede observarse, por las condiciones sobre lasderivadas que hemos impuesto, no
es posible distinguir ge-omtricamente, al trazar la curva, cuales son los puntos deunin
entre los tres polinomios. Es decir, parece, a simplevista, el trazado de una nica
funcin. Veamos ahora gr-

camente el per

l de la derivada de los polinomios


P
0
(
x
)
,P
1
(
x
)
,
y
P
2
(
x
)
.
32.752.52.2521.751.51.2510.750.50.2502.752.52.2521.751.51.2510.750.50.25
0-0.25-0.5-0.75-1-1.25xyxy
como puede observarse, tampoco sobre la derivada se apre-cian los puntos de unin
de los polinomios. Sin embargo,sobre la gr

ca de la derivada segunda los puntos de uninse detectan en los lugares donde


encontramos un pico, taly c o m o s e m u e s t r a e n l a g r

ca de la derivada segundasiguiente:

32.752.52.2521.751.51.2510.750.50.250543210-1-2-3-4xyxy
45

También podría gustarte