Anda di halaman 1dari 49

Trazadores o Splines Ing Yamil Armando Cerquera Rojas

yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 1 de 49
AJUSTES DE CURVAS
Interpolacin con Trazadores o Splines

Ing. Yamil Armando Cerquera
1

Esp Sistemas U. Nacional de Colombia
Facultad de Ingeniera
Universidad Surcolombiana

CONTENIDO


TRAZADORES SPLINES......................................................................................................................... 2
FUNCIONES SPLINES DE GRADO 0..................................................................................................... 3
FUNCIONES SPLINES DE GRADO 1..................................................................................................... 4
Algoritmo Funcin Spline Lineal ................................................................................................. 5
Ejemplo para Splines lineales...................................................................................................... 7
FUNCIONES SPLINES DE GRADO 2 ................................................................................................... 8
Ejemplo............................................................................................................................................ 9
FUNCIONES CON SPLINES CBICOS............................................................................................... 15
Otra Deduccin general del modelo de Splines Cbicos........................................................... 20
Algoritmo en seudolenguaje para Construir el spline cbico natural S, de la funcin f
definida en los nodos .................................................................................................................. 24
Algoritmo en cdigo para encontrar los coeficientes
i
Z de un spline cbico................. 25
Ejemplo con la funcin spline de MatLab ............................................................................... 26
Ejemplo con la funcin spline de MatLab ............................................................................... 27
Ejemplo con sistema de ecuaciones simultneas....................................................................... 28
Ejemplo con sistema simultneo de ecuaciones ........................................................................ 31
Un caso particular............................................................................................................................ 34
El caso general.................................................................................................................................. 37
Prctica con MATLAB........................................................................................................................... 39
Ejemplos con sistemas simultneos de ecuaciones ................................................................... 39
Ejemplo con Polyfit ......................................................................................................................... 39
Ejemplo con Polyfit ......................................................................................................................... 42
Ejemplo con la funcin Spline....................................................................................................... 43
Ejercicios propuestos ...................................................................................................................... 46
Ejercicio N 1:............................................................................................................................... 46
Ejercicio N 2:............................................................................................................................... 46
Ejercicio N 3:............................................................................................................................... 47
Ejercicio N 4:............................................................................................................................... 47
RECURSOS BIBLIOGRAFCOS................................................................................................................ 48
Bibliografa Bsica: .......................................................................................................................... 48
Bibliografa Complementaria:........................................................................................................ 48
Bibliografa OnLine: ......................................................................................................................... 49


1
Docente de planta. Universidad Surcolombiana. Escalafn Asociado. Programa Ingeniera Electrnica
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 2 de 49
TRAZADORES SPLINES
La palabra inglesa spline denota un instrumento flexible usado en dibujo tcnico que sirva
para trazar curvas suaves (algunas veces se traduce como trazador). Este instrumento es
una regla que puede adaptarse flexionndola para que tome la forma de la curva que se
desea dibujar. Es precisamente la propiedad de que pueda adaptarse bien a las formas
dadas de una funcin, el que las funciones spline sean utilizadas para interpolarlas en un
intervalo [a, b], obedeciendo algunas condiciones de regularidad o suavidad.

De acuerdo a lo anterior, una funcin spline es una funcin que consiste en determinar
pedazos de polinomios en subintervalos [a, b] unidos con ciertas condiciones de suavidad.

Este tipo de interpolacin que ha demostrado poseer una gran finura y que inclusive es
usado para el diseo asistido por computadora, por ejemplo, de tipos de letra.

Esta interpolacin se llama interpolacin segmentaria o interpolacin por splines. La
idea central es que en vez de usar un solo polinomio para interpolar todos los datos (Pares
coordenados), se pueden usar segmentos de polinomios entre pares coordenados de datos y
unir cada uno de ellos adecuadamente para ajustar los datos.

Vale la pena resaltar que entre todas las formas de ajustar datos, los splines cbicos han
resultado ser los ms adecuados para cualquier tipo de aplicacin.

As pues, se puede decir de manera informal, que una funcin spline est formada por
varios polinomios, cada uno definido en un intervalo y que se unen entre si bajo ciertas
condiciones de continuidad.

Para un conjunto numeroso de puntos ( ) ( ) ( ) ( ) { } ) ( , ,..., ) ( , , ) ( , , ) ( ,
2 2 1 1 0 0 n n
x f x x f x x f x x f x , no
es muy til calcular el polinomio interpolante que pasa por estos puntos, pues ste tiende a
tener grandes oscilaciones. Ms aconsejable es hacer una interpolacin secuencial de grado
bajo sobre subconjuntos ms pequeos del total de puntos, definiendo as una funcin a
trozos. Una primera forma de aproximar la funcin ) (x f en cada intervalo
) , (
1 + k k
x x
es
mediante un polinomio lineal, lo que se conoce como interpolacin segmentaria lineal. Una
segunda posibilidad es aproximar la funcin en cada intervalo mediante un polinomio
cuadrtico, lo que se conoce como interpolacin segmentaria cuadrtica, esta vez
imponiendo algunas condiciones sobre el comportamiento de los polinomios aproximantes
en cada segmento. Finalmente se tiene la interpolacin segmentaria cbica, la cual une
cada subintervalo con polinomios de orden 3.

La interpolacin a trozos ms til y de uso generalizado en diversos campos tales como el
diseo, los grficos por computadora, la economa, etc., es la que se realiza mediante
polinomios de grado tres, llamados trazadores o splines cbicos que se definen en cada uno
de los subintervalos
) , (
1 + k k
x x
definidos por las abscisas de los puntos
) , (
i i
y x
a interpolar.
La idea es construir estos polinomios cbicos de tal forma que cualesquiera dos de ellos
definidos en intervalos contiguos ) , (
1 k k
x x

y
) , (
1 + k k
x x
, ambos coincidan en x
k
no solo
como funcin sino tambin en su primera y segunda derivada, con el fin de que haya
suavidad en los puntos
) , (
k k
y x
de coincidencia de ambas grficas.
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 3 de 49



En cada subintervalo ) , (
1 + k k
x x , ) (x S tiene derivada continua hasta de orden k-1 en
(x
o
,x
n
). Se denomina a ) (x S Spline cbico o simplemente spline, si los polinomios ) (x q
k

tienen la misma pendiente y la misma concavidad en los nodos que los unen.
FUNCIONES SPLINES DE GRADO 0
Los splines de grado 0 son funciones constantes por zonas. Una forma explcita de presentar
un spline de grado 0 es la siguiente:

=
=
=
=

) , ( .... ) (
....
) , ( .... ) (
) , ( .... ) (
) (
1 1 1
2 1 1 1
1 0 0 0
n n n n
t t x c x S
t t x c x S
t t x c x S
x S

Los intervalos (t
i-1
,t
i
) (x
i-1
,x
i
) no se intersectan entre s, por lo que no hay ambigedad
en la definicin de la funcin en los nodos.

Figura 1 Spline de grado 0 con seis puntos


Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 4 de 49
FUNCIONES SPLINES DE GRADO 1
La funcin poligonal cuyos pedazos son polinomios lineales unidos para obtener continuidad
en el intervalo [a, b] estara dado por.



Los puntos
8 2 1
, , , x x x K son denominados como nodos y la funcin Spline S(x) esta dada por
el siguiente sistema de ecuaciones:
Ecuacin 1
| |
| |
| |

+
+
+
=
,
,
, 1
) (
8 7 7 7
3 2 2 2
2 1 1
x x x b x a
x x x b x a
x x x b x a
x S
M


Con las siguientes caractersticas:

1) El dominio de S(x) es [a, b]
2) S es continua en [a, b]
3) El intervalo [a, b] se particiona en puntos llamados nodos a = x
1
< x
2
< x
3
< < x
n
= b, de
tal manera que S es un polinomio lineal en cada subintervalo | |
1
,
+ i i
x x .

La ecuacin de los segmentos lineales individuales en cada subintervalo | |
1
,
+ i i
x x est dada
por
i i
i i
i i i i
x x
y y
m donde x x m y

= +
+
+
1
1
, ), (
De acuerdo a la siguiente grfica:











a = x
1
x
2
x
3
x
4
x
5
x
6
x
7
x
8
=b
P
1
P
2
P
3
P
4
P
5
P
6
P
7
x
i
x
i+1
(x
i+1
,y
i+1
)
(x
i
,y
i
)
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 5 de 49

Por lo que la funcin spline s(x) dada en Ecuacin 1 se puede escribir tambin como:
Ecuacin 2
| |
| |
| |

+
+
+
=

, ) (
, ) (
, ) (
) (
1 1 1 1
3 2 2 1 2
2 1 1 1 1
n n n n n
x x x x x m y
x x x x x m y
x x x x x m y
x S
M


La Ecuacin 1 es mejor que la Ecuacin 1, ya que se calcula explcitamente el valor de x x
i
,
para determinar el intervalo que contiene a x dada para interpolar.

El intervalo [ x
i
, x
i+1
] que contiene a x, est caracterizado por el hecho de que x x
i+1
es la
primera de las cantidades: x x
1
, x x
2
, , que es negativa.

A continuacin se presenta el algoritmo para la Funcin Spline Lineal.
Algoritmo Funcin Spline Lineal
Dada la siguiente tabla con n datos y la x deseada, obtener S(x) como se indic en (2). Se
supone que x
1
< x
2
< x
3
< < x
n
y que:

Si x < x
1
entonces S(x) = y
1
+ m
1
(x x
1
)
Si x > x
n
entonces S(x) = y
n-1
+ m
n-1
(x x
n-1
)

Para i = 1,2,...,n-1

1.1 Hacer :
AUX = x x
n-i

1.2 Si AUX 0.0
1.2.1 Hacer

AUX m y PS
x x
y y
m
i n i n i n
i n i n
i n i n
i n
*
, 1
1
1

+
+

+ =

=

1.3 En otro caso
i = i +1
regresar a 1.1

A manera de resumen, se puede decir que los splines de grado 1, o splines lineales son
funciones polinomiales de grado 1 (Rectas de la forma b ax x f + = ) ( ) que se encargan de
unir cada par de coordenadas mediante una recta.

Dados los n+1 puntos:

x x
0
x
1
x
2
..... x
n
y y
0
y
1
y
2
.... y
n

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 6 de 49
Una funcin spline de grado 1 que interpole los datos es simplemente unir cada uno de los
puntos (Par coordenados) mediante segmentos de recta, como se ilustra en las siguientes
figuras:

Figura 2. Spline de grado 1 con 4 puntos


Figura 3 Spline de grado 1 con 6 puntos



Claramente esta funcin cumple con las condiciones de la spline de grado 1. As, se tiene
que para este caso:

+ =
+ =
+ =
=

) , ( .... ) (
....
) , ( .... ) (
) , ( .... ) (
) (
1 1 1 1
2 1 1 1 1
1 0 0 0 0
n n n n n
t t x b x a x S
t t x b x a x S
t t x b x a x S
x S



+ =
+ =
+ =
=

) , ( .... ) (
....
) , ( .... ) (
) , ( .... ) (
) (
1 1 1 1
2 1 1 1 1
1 0 0 0 0
n n n n n
x x x b x a x S
x x x b x a x S
x x x b x a x S
x S

Donde:

1. s
j
(x) es un polinomio de grado menor o igual que 1
2. s(x) tiene derivada continua de orden k-1=0.
3. s(x
j
)=y
j
, para j=0,1,2,...,n

Por lo tanto, el spline de grado 1 queda definido como:

| | ) ( ,
0 2 1 0
x x x x f y +
si
| |
1 0
, x x x

| | ) ( ,
1 1 2 1
x x x x f y +
si
| |
2 1
, x x x
. . . .
s(x) =
{
| | ) ( ,
1 1 1
+
n n n n
x x x x f y
si
| |
n n
x x x ,
1

}
Donde f[x
i
,x
j
] es la diferencia dividida de Newton.


Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 7 de 49
Ejemplo para Splines lineales
Dada la tabla:

x
1
x
2
x
3
x
4
x
5
x
6
x
7
x
8

x 1 3 4 6 8 12 14 17
y x f = ) ( 4 8 6 6 10 10 6.5 12

Encontrar el valor de ) (x f para 10 = x .

n = 8 nodos, x = 10, i = 1, 2,...,7,
i n
x x AUX

=


i = 1
7
x x AUX =

= 10 14 = -4 < 0, por tanto i = i+1 = 2
i = 2
6
x x AUX =

= 10 12 = -2 < 0, por tanto i = i+1 = 3
i = 3
5
x x AUX =

= 10 8 = 2 > 0, por tanto 0
8 12
10 10
5 6
5 6
5
=

= =

x x
y y
m m
i n

10 0 10 ) 8 10 ( * 0 10 ) (
5 5 5 5 , 1
= + = + = + = x x m y PS . Por tanto 10 ) 10 ( = f .

La funcin spline S(x) para este problema, en todos los puntos y los valores de x = 1.5, 10 y
15 se encuentra en la siguiente tabla y grfica.

xi
) (
i
x f
mi i
PS
, 1

Intervalo
1 4 +2 4 x en [1 , 3]
1.5 5 x en [1 , 3]
3 8 -2 8 x en [3 , 4]
4 6 +0 6 x en [4 , 6]
6 6 +2 6 x en [6 , 8]
8 10 +0 10 x en [8 , 12]
10 +1.625 10 x en [8 , 12]
12 10 -1.750 10 x en [12, 14]
14 6.5 +1.8333333336.5 x en [14, 17]
15 8.333333333x en [14, 17]

0
2
4
6
8
10
12
14
0 5 10 15 20
f(xi)
S(x)


Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 8 de 49
FUNCIONES SPLINES DE GRADO 2
Los splines de orden o grado dos (2), se encargan de unir cada par coordenado con
ecuaciones polinomiales de orden dos. Las ecuaciones son de la forma general
c bx ax + +
2
.

Dado un intervalo [a,b], se particiona ste en sub-intervalos
j
I de la forma:

1 , , 2 , 1 , ], , [
1
= =
+
n j i x x I
i i j
K

Y para cada uno de estos stos intervalos, se define un polinomio de interpolacin
cuadrtico de la forma:
j j j j
c x b x a x P + + =
2
, 2
) (

Dado que se tiene para cada polinomio tres incgnitas, se tienen 1 n intervalos y n puntos,
para obtener los valores de los coeficientes 1 ,... 2 , 1 ; , , = n j c b a
j j j
, es decir, ) 1 ( 3 n
incgnitas, se requieren 3(n-1) ecuaciones, para formar el sistema de ecuaciones. Esto se
puede lograr considerando las siguientes condiciones que debe cumplir la funcin spline
cuadrtica.

1. Las valores de los polinomios deben ser iguales en los nodos interiores, esto es,

i i i i i i
i i i i i i
y c x b x a
y c x b x a
= + +
= + +

2
1 1
2
1


Para i = 2,...,n-1, por lo que de aqu se tienen 2(n-2) condiciones y por tanto se
generan
2n-4 ecuaciones.

2. El primer y ltimo polinomio deben pasar a travs de los puntos inicial y final, esto
es,

n n n n i n
y c x b x a
y c x b x a
= + +
= + +
2
1 1 1 1
2
1 1


Son dos condiciones por lo que se generan dos ecuaciones.

3. Las primeras derivadas en los nodos interiores deber ser iguales (condicin de
continuidad), entonces:

j j j
b x a x P + = 2 ) (
, 2


Por lo que
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 9 de 49
1 , , 2
0 2 2
2 2
1 1
1 1
=
= +
+ = +


n i para
b x a b x a
b x a b x a
i i i i i i
i i i i i i
K


Estas n-2 condiciones generan n-2 ecuaciones.

Considerando las ecuaciones que generan las condiciones de 1), 2) y 3), se tienen:
ecuaciones n n n 4 3 2 2 4 2 = + + , por lo que falta una ecuacin para tener las 3n-3
que se necesitan.

4. Si se cuenta con informacin adicional en relacin a la funcin y sus derivadas, se
elige alguna, sino se elige una condicin arbitraria para calcular los coeficientes
eficientemente.

Ejemplo: Suponer que la segunda derivada es cero en el primer punto, por lo que si:

0 0 2
2 ) (
1 1
, 2
= =
=
a a
a x P
j j


Lo anterior implica que los dos primeros puntos se conectan mediante una lnea recta.

Para aclarar mejor la idea, vea un ejemplo concreto,

Ejemplo

Considere los siguientes datos:

X 3.0 4.5 7.0 9.0
y 2.5 1.0 2.5 0.5

Se tienen n = 4 puntos, 3 1 = n intervalos y tres polinomios cuadrticos de la forma:
j j j j
c x b x a x P + + =
2
, 2
) ( , por lo que se requieren obtener 9 coeficientes. Los intervalos de
acuerdo a la tabla anterior son los siguientes: [3,4.5], [4.5,7], [7,9] con ) ( ), ( ), (
3 , 2 2 , 2 1 , 2
x P x P x P
los polinomios cuadrticos respectivos
Figura 4


Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 10 de 49
Proceda a calcular la interpolacin de los datos de la tabla anterior, usando los splines de
grado 2. Primero que nada, observe en la tabla, que se forman tres intervalos en los datos
sobre el eje x:

| | 5 . 4 , 0 . 3
| | 0 . 7 , 5 . 4
| | 0 . 9 , 0 . 7

Para cada uno de los tres (3) intervalos, se debe definir una funcin polinomial de grado 2,
tal como se ilustra a continuacin:

1 1
2
1 1 , 2
) ( c x b x a x P + + =
si
| | 5 . 4 , 0 . 3 x

2 2
2
2 2 , 2
) ( c x b x a x P + + =
si
| | 0 . 7 , 5 . 4 x
s(x) =
{
3 3
2
3 3 , 2
) ( c x b x a x P + + =
si
| | 0 . 9 , 0 . 7 x

}

Vale la pena aclarar que la ecuacin
1 1
2
1
c x b x a + +
,
une los puntos cuyas coordenadas estn
dadas por (3,2.5) y (4.5,1), la ecuacin
2 2
2
2
c x b x a + +
,
une los puntos cuyas coordenadas
estn dadas por (4.5,1) y (7,2.5), y la ecuacin
3 3
2
3
c x b x a + + los puntos cuyas coordenadas
estn dadas por (7,2.5) y (9,0.5). En conclusin siendo 4 par coordenados se unen estos
mediante tres ecuaciones polinomiales de orden 2.

Para resolver el problema, primero, se hace que el spline pase por los puntos de la tabla de
datos (por cada par coordenado). Es decir, se debe cumplir que:

s(3)=2.5, s(4.5)=1, s(7)=2.5 y s(9)=0.5

Si se tiene en cuenta que para el valor inicial y el final:

4 3 4 3
2
4 3
1 1 1 1
2
1 1
4 4 23 1 1 21
) ( ; ) (
y c x b x a
y c x b x a
y x P y x P
= + +
= + +
= =
,

Se tienen dos ecuaciones, y

Para los nodos interiores, 7 , 5 . 4
3 2
= = x y x

3 3 3 3
2
3 3
3 2 3 2
2
3 2
2 2 2 2
2
2 2
2 1 2 1
2
2 1
y c x b x a
y c x b x a
y c x b x a
y c x b x a
= + +
= + +
= + +
= + +


Se tienen 4 ecuaciones ms.

Teniendo en cuenta lo anterior, se forman las siguientes ecuaciones:

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 11 de 49
s(3) =2.5
{
5 . 2 3 9
1 1 1
= + + c b a


}
Ec 1
S(4.5)=1
{
1 5 . 4 5 . 4
1 1 1
2
= + + c b a
1 5 . 4 5 . 4
2 2 2
2
= + + c b a
}
Ec 2

Ec 3
S(7)=2.5
{
5 . 2 7 49
2 2 2
= + + c b a
5 . 2 7 49
3 3 3
= + + c b a
}
Ec 4

Ec 5
S(9)=0.5
{
5 . 0 9 81
3 3 3
= + + c b a
}
Ec 6

Hasta aqu, se tiene un total de 6 ecuaciones vs. 9 incgnitas. El siguiente paso es manejar
la existencia de las derivadas continuas. En el caso de los splines de grado 2, se necesita
que el spline tenga derivada continua de orden k-1=1, es decir, primera derivada continua.

Las primeras derivadas en los nodos interiores 7 , 5 . 4
3 2
= = x y x , deben ser iguales:

0 2 2 2 2
0 2 2 2 2
3 3 3 2 3 2 3 3 3 2 3 2
2 2 2 1 2 1 2 2 2 1 2 1
= + + = +
= + + = +
b x a b x a b x a b x a
b x a b x a b x a b x a


Y hay otras dos ecuaciones ms.

Ahora en el ejercicio, se calcula la primera derivada:

S(x) =
{
1 1
2 b x a +
si | | 5 . 4 , 0 . 3 x
2 2
2 b x a +
si | | 0 . 7 , 5 . 4 x
3 3
2 b x a +
si | | 0 . 9 , 0 . 7 x
}
Se observa que las derivadas anteriores, estn formadas por segmentos de rectas, que
pudieran presentar discontinuidad en los cambios de intervalo. Es decir, las posibles
discontinuidades se daran en x=4.5 y x=7.0 Por lo tanto para que s'(x) sea continua, se
debe cumplir que: 2a
1
(4.5)+b
1
=2a
2
(4.5)+b
2
, siendo igual a:

S(4.5)
{
9a
1
+b
1
=9a
2
+b
2
}
Ec 7

Y tambin debe cumplirse que: 2a
2
(7)+b
2
=2a
3
(7)+b
3,
siendo igual a:

S(7)
{
14a
2
+b
2
=14a
3
+b
3
}
Ec 8

As que ahora, se tiene un total de 8 ecuaciones versus 9 incgnitas; esto da un grado de
libertad para elegir alguna de las incgnitas. Se elige por simple conveniencia 0
1
= a ,
debido a que la segunda derivada del primer polinomio evaluado en el primer punto es cero.
0 0 2
1 1
= = a a , obteniendo la ltima ecuacin.

De esta forma, se tiene un total de 8 ecuaciones vs. 8 incgnitas, siendo las ecuaciones las
siguientes:

5 . 2 3
1 1
= + c b Ec 1
1 5 . 4
1 1
= + c b Ec 2
1 5 . 4 25 . 20
2 2 2
= + + c b a Ec 3
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 12 de 49
5 . 2 7 49
2 2 2
= + + c b a Ec 4
5 . 2 7 49
3 3 3
= + + c b a Ec 5
5 . 0 9 81
3 3 3
= + + c b a Ec 6
0 9
2 2 1
= b a b Ec 7
0 14 14
3 3 2 2
= + b a b a Ec 8

Este sistema de ecuaciones tiene la siguiente forma matricial:

3 1 0 0 0 0 0 0 b
1
2.5
4.5 1 0 0 0 0 0 0 c
1
1
0 0 20.25 4.5 1 0 0 0 a
2
1
0 0 49 7 1 0 0 0 b
2
2.5
0 0 0 0 0 49 7 1 c
2
2.5
0 0 0 0 0 81 7 1 a
3
0.5
1 0 -9 -1 0 0 0 0 b
3
0
0 0 14 1 0 -14 -1 0 c
3
=
0

Haciendo uso de MatLab Scilab, se tendra lo siguiente:

x=[3 1 0 0 0 0 0 0
4.5 1 0 0 0 0 0 0
0 0 20.25 4.5 1 0 0 0
0 0 49 7 1 0 0 0
0 0 0 0 0 49 7 1
0 0 0 0 0 81 9 1
1 0 -9 -1 0 0 0 0
0 0 14 1 0 -14 -1 0];
b=[2.5;1;1;2.5;2.5;0.5;0;0];
x=inv(x)*b


x =
-1.0000
5.5000
0.6400
-6.7600
18.4600
-1.6000
24.6000
-91.3000

usando Mathematica se obtiene la siguiente solucin:

b
1
-1
c
1
5.5
a
2
0.64
b
2
-6.76
c
2
18.46
a
3
-1.6
b
3
24.6
c
3
-91.3

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 13 de 49
Sustituyendo estos valores (junto con a
1
=0), se obtiene la funcin spline cuadrtica que
interpola la tabla de datos dada:

5 . 5 + x



si | | 5 . 4 , 3 x

46 . 18 76 . 6 64 . 0
2
+ x x
si
| | 7 , 5 . 4 x
s(x) =
{
3 . 91 6 . 24 6 . 1
2
+ x x


si

| | 9 , 7 x }
La Figura 4, contiene tanto los puntos iniciales de la tabla de datos, as como el spline
cuadrtico. Esta grfica se gener usando Mathematica.

Figura 5 Ajuste con Splines Cuadrticos

El mismo ejercicio anterior resuelto por MatLab sera de la siguiente manera

Cdigo 1: Produce la Figura 6 Cdigo 2: Produce la Figura 7


X=[3 4.5 7 9];
Y=[2.5 1 2.5 0.5]
X1=3:0.1:9;
Spl1=spline(X,Y,X1);
plot(X,Y,X1,Spl1);
axis([0,10,0,3.5])
grid on

X=[3 4.5 7 9];
Y=[2.5 1 2.5 0.5]
X1=3:0.1:9;
Spl1=spline(X,Y,X1);
plot(X,Y,X1,Spl1,X,Y,'o','MarkerFaceColor','g');
axis([0,10,0,3.5])
grid on
Figura 6

Figura 7



Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 14 de 49
haciendo uso de la funcin interp1 de MatLab se puede dar as:

X=[3 4.5 7 9];
Y=[2.5 1 2.5 0.5]
X1=3:0.1:9;
Int1=interp1(X,Y,X1,'spline');
plot(X,Y,X1,Int1,X,Y,'o','MarkerFaceColor','g');

O si prefiere implementar el sistema con las nueve ecuaciones obtenidas puede hacerlo de
la siguiente manera:

Ahora se tienen nueve ecuaciones con nueve incgnitas por lo que se puede resolver el
sistema de ecuaciones de la forma A = b.

b A
y
y
y
y
y
y
c
c
c
b
b
b
a
a
a
x x
x x
x x
x x
x x
x x
x x
x x

0
0
0
0 0 0 0 0 0 0 0 1
0 0 0 1 1 0 2 2 0
0 0 0 0 1 1 0 2 2
1 0 0 0 0 0 0
0 0 1 0 0 0 0
1 0 0 0 0 0 0
0 1 0 0 0 0 0
0 1 0 0 0 0 0
0 0 1 0 0 0 0
4
1
3
3
2
2
3
2
1
3
2
1
3
2
1
3 3
2 2
4
2
4
1
2
1
3
2
3
3
2
3
2
2
2
2
2
2
=
(
(
(
(
(
(
(
(
(
(
(
(

=
(
(
(
(
(
(
(
(
(
(
(
(

(
(
(
(
(
(
(
(
(
(
(
(



Sustituyendo los valores correspondientes se tiene

(
(
(
(
(
(
(
(
(
(
(
(

=
(
(
(
(
(
(
(
(
(
(
(
(

(
(
(
(
(
(
(
(
(
(
(
(



0
0
0
5 . 0
5 . 2
5 . 2
5 . 2
0 . 1
0 . 1
0 0 0 0 0 0 0 0 1
0 0 0 1 1 0 14 14 0
0 0 0 0 1 1 0 9 9
1 0 0 9 0 0 81 0 0
0 0 1 0 0 3 0 0 9
1 0 0 7 0 0 49 0 0
0 1 0 0 7 0 0 49 0
0 1 0 0 5 . 4 0 0 25 . 20 0
0 0 1 0 0 5 . 4 0 0 25 . 20
3
2
1
3
2
1
3
2
1
c
c
c
b
b
b
a
a
a


Al resolver este sistema simultneo de ecuaciones lineales se obtiene la solucin mostrada
abajo.

Tenga en cuenta que el sistema se ha organizado de tal forma que se han unido las variable
a, las b y las c. En el sistema resuelto se puede observar que el valor para la variable
0
1
= a .
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 15 de 49

Solucin al sistema simultneo de ecuaciones lineales.
(
(
(
(
(
(
(
(
(
(
(
(

=
(
(
(
(
(
(
(
(
(
(
(
(

3 . 91
46 . 18
5 . 5
6 . 24
76 . 6
1
6 . 1
64 . 0
0
3
2
1
3
2
1
3
2
1
c
c
c
b
b
b
a
a
a

Por lo que a funcin spline cuadrtica S(x) queda definida como:

+ =
+ =
+ =
=
] 0 . 9 , 0 . 7 [ 3 . 91 6 . 24 6 . 1 ) (
] 0 . 7 , 5 . 4 [ 46 . 18 76 . 6 64 . 0 ) (
] 5 . 4 , 0 . 3 [ 5 . 5 ) (
) (
2
3 , 2
2
2 , 2
1 , 2
x si x x x P
x si x x x P
x si x x P
x S

FUNCIONES CON SPLINES CBICOS
Es uno de los mtodos Spline ms usados. Para formar la funcin S(x) se unen polinomios
cbicos de tal forma que la funcin tenga dos derivadas continuas en todos lados, ya que
para cada nodo se imponen las tres condiciones de continuidad, que S, S, S sean
continuas, para que la grfica de la funcin sea suave. La discontinuidad de S(x) podra
ocurrir en la tercera derivada pero esto no se detecta visualmente.

Antes de entrar en materia, observe las siguientes figuras, diciendo lo siguiente.

Se tiene el siguiente conjunto de datos discretos en la siguiente tabla:

i
x 1 2 3 5 8 10 15
i
y 0.2 0.5 1.6 3 2.2 2.8 1.5

Con las siguientes lneas de cdigo escritas para MatLab, se grafica los datos y adems se
ajustan a varios tipos de curvas haciendo uso de funciones propias del programa.

% Programacin para MATLAB
x=[1 2 3 5 8 10 15]; hold off;
y=[0.2 0.5 1.6 3 2.2 2.8 1.5];
% Grfica de los datos discretos
plot(x,y,'or');
hold on; grid on; axis([0 10 -15 10])
xi=min(x):0.1:max(x);
y1=interp1(x,y,xi);
% Grfica de los datos unidos mediante rectas
plot(xi,y1,'LineWidth',2);
y5=polyfit(x,y,5);
y5=polyval(y5,xi);
% Grfica de los datos ajustados a un polinomio de orden 5
plot(xi,y5,'b','LineWidth',2);
y7=polyfit(x,y,7);
y7=polyval(y7,xi);
% Grfica de los datos ajustados a un polinomio de orden 7
plot(xi,y7,'g','LineWidth',2);
y3=spline(x,y,xi);
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 16 de 49
% Grafica de los datos ajustados a un spline cbico
plot(xi,y3,'m','LineWidth',2); axis([0,10,0,3.2]);

La Figura 8 corresponde a los datos discretos de la tabla anterior, En la Figura 9 se muestra
los datos discretos unidos unos a unos con una simple lnea recta.

Figura 8 Datos Discretos

Figura 9 Datos unidos mediante trozos de lneas


En la Figura 10 se muestra los datos unidos con un polinomio de orden 5 y en la Figura 11 se
ajustan los datos a un polinomio de orden 7.

Figura 10 Ajuste polinomial de orden 5

Figura 11 Ajuste polinomial de orden 7


En la Figura 12 se muestran los datos ajustados a un spline de cbico, y en la Figura 13
puede observar los datos discretos ajustados a las diferentes curvas descritas.

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 17 de 49
Figura 12 Ajuste tipo Splines cbico

Figura 13 Diferentes ajustes


Un spline cbico ajusta una curva suave a los puntos, tomando prestada la idea de un
instrumento que se usa para dibujar El curvgrafo. Es frecuente que un nmero grande de
datos tenga que ajustarse a una nica curva suave, pero la interpolacin de Lagrange o de
Newton con polinomios de orden alto no es adecuada para este propsito, ya que los
errores de un nico polinomio tienden a crecer en forma drstica al hacer mayor el orden.
La interpolacin con splines cbicos esta diseada para adecuarse a este fin
2
.

En la interpolacin con spline cbicos se usa un polinomio cbico para cada intervalo entre
dos puntos (par coordenados) consecutivos. Un polinomio cbico d cx bx ax + + +
2 3
, tiene
cuatro coeficientes ( d c b a , , , ), por lo que requiere cuatro condiciones. Dos de ellas
provienen de la restriccin de que el polinomio debe pasar por los puntos en los extremos
del intervalo. Las otras dos son las condiciones de que la primera y segunda derivada del
polinomio sea continua en cada uno de los puntos dados.

Los splines cbicos son polinomios cbicos por pedazos o secciones de polinomio por cada
segmento entre dos par coordenados, as:
1 1
2
1
3
1
d x c x b x a + + + ,ser el polinomio cbico
para el primer segmento,
2 2
2
2
3
2
d x c x b x a + + + , para el segundo segmento y as
sucesivamente, hasta definir el polinomio
n n n n
d x c x b x a + + +
2 3
para el navo segmento,
que en cierta medida, son anlogos a los polinomios de Hermite. Aunque la interpolacin
cbica de Hermite es ms precisa que la interpolacin con splines cbicos en lo que refiere
a los valores de la funcin, los splines son mas suaves, debido a que se pide que la funcin
interpolante sea continua en el valor de la funcin, al igual que la primera y segunda
derivadas.

El Spline Cbico (orden 3) es el mtodo ms empleado como se ha mencionado
anteriormente, debido a que proporciona un excelente ajuste a los puntos tabulados y su
clculo no es tan complejo.

Sobre cada intervalo
| | | | | |
n n
t t t t t t , ,..., , , ,
1 2 1 1 0
, S est definido por un polinomio cbico
diferente. Sea S
i
el polinomio cbico que representa a S en el intervalo
| |
1
,
i i
t t
, por tanto:

2
Mtodos Numricos aplicados con software. Shoichiro Nakamura. Prentice Hall. Pg. 540.
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 18 de 49

=

) , ( )... (
....
) , ( ).... (
) , ( ).... (
) (
1 1
2 1 1
1 0 0
n n n
t t x x S
t t x x S
t t x x S
x S

Los polinomios
1 i
S y
i
S interpolan el mismo valor en el punto
i
t , es decir, se cumple:

S
i-1
(t
i
) = y
i
= S
i
(t
i
) 1 1 n i

Por lo que se garantiza que S es continuo en todo el intervalo. Adems, se supone que S' y
S'' son continuas, condicin que se emplea en la deduccin de una expresin para la funcin
del spline cbico.

Las condiciones que deben satisfacer los polinomios son:

1.

=
= =

) ( ) (
1 ,..., 1 , 0 ), ( ) (
1 n n n
k k k
x f x p
n k x f x p


Condiciones de interpolacin. Estas condiciones producen n+1 ecuaciones.

2. 2 ,..., 1 , 0 ), ( ) (
1 1 1
= =
+ + +
n k x p x p
k k k k


Condiciones de continuidad en los nodos interiores. Estas condiciones producen n-1
ecuaciones.

3. 2 ,..., 1 , 0 ), ( ' ) ( '
1 1 1
= =
+ + +
n k x p x p
k k k k


Condiciones de derivabilidad en los nodos interiores. Estas condiciones producen n-1
ecuaciones.

4. 2 ,..., 1 , 0 ), ( ' ' ) ( ' '
1 1 1
= =
+ + +
n k x p x p
k k k k


Condiciones de continuidad de la primera derivada en los nodos interiores: se conserva la
concavidad en la vecindad del nodo interior a no ser que la segunda derivada sea cero en el
nodo interior. Estas condiciones dan lugar a n-1 ecuaciones.

Hasta aqu se tendra n+1+3(n-1)=4n-2 condiciones

Se satisface uno de los dos siguientes pares de condiciones de frontera.

a) 0 ' ' 0 ' '
1
= =
n o
p y p
b) ) ( ' ) ( ' ) ( ' ) ( '
1 n n n o o o
x f x p y x f x p = =



Las condiciones dadas en a) se llaman de frontera libre (no dependen de condiciones
adicionales sobre la funcin f)

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 19 de 49
Las condiciones dadas en b) se llaman de frontera sujeta, requieren que se conozca
) ( ' ) ( '
n o
x f y x f , y fijan al polinomio ) , ( ), (
1
x x x x p
o o
en el punto extremo
o
x y al
polinomio ) , ( ), (
1 1 n n n
x x x x p

en el punto extremo
n
x , como en este caso se usa ms
informacin acerca de la funcin f las aproximaciones obtenidas suelen ser ms exactas.

Aplicando las condiciones de continuidad del spline S y de las derivadas primera S' y
segunda S'', es posible encontrar la expresin analtica del spline. No se va a obtener esta
expresin, ya que su demostracin queda fuera del mbito de estos apuntes. Simplemente
se dir que la expresin resultante es:

) )(
6
( ) )(
6
( ) (
6
) (
6
) (
1
1 1 3 1 3
1
x t
h z
h
y
t x
h z
h
y
t x
h
z
x t
h
z
x S
i
i i
i
i
i
i i
i
i
i
i
i
i
i
i
i
+ + + + =
+
+ + +
+


En la expresin anterior, h
i
=t
i+1
-t
i
y z
0
,z
1
,...,z
n
son incgnitas. Para determinar sus
valores, se utilizan las condiciones de continuidad que deben cumplir estas funciones. El
resultado (que tampoco se demuestra) es:

) (
6
) (
6
) ( 2
1
1
1
1
1 1 1 1

+
= + + +
i i
i
i i
i
i i i i i i i
y y
h
y y
h
z h z h h z h

La ecuacin anterior, con i=1,2,....,n-1 genera un sistema de n-1 ecuaciones lineales con
n+1 incgnitas z
0
,z
1
,...,z
n
. Se puede elegir z
0
y z
1
de forma arbitraria y resolver el
sistema de ecuaciones resultante para obtener los valores de z
1
,z
2
,...,z
n-1
. Una eleccin
especialmente adecuada es hacer z
0
=z
1
=0. La funcin spline resultante se denomina spline
cbico natural y el sistema de ecuaciones lineal expresado en forma matricial es:

|
|
|
|
|
|
.
|

\
|
=
|
|
|
|
|
|
.
|

\
|
|
|
|
|
|
|
.
|

\
|
1
3
2
1
2
3
2
1
1 2
3 3 2
2 2 1
1 1
n n n n
v
v
v
v
z
z
z
z
u h
h u h
h u h
h u


En donde:


i i i
t t h =
+1

1
2
1
1
) ( 2

+ =
i
i
i i i
u
h
h h u
) (
6
1 i i
i
i
y y
h
b =
+

1
1 1
1

=
i
i i
i i i
u
v h
b b v



Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 20 de 49
Otra Deduccin general del modelo de Splines Cbicos
Dado un intervalo [a,b], se particiona ste en sub-intervalos I
j
de la forma:
Ecuacin 3
1 , , 2 , 1 , ], , [
1
= =
+
n j i x x I
i i j
K

Y para cada uno de estos stos intervalos, se define un polinomio de interpolacin cbico
de la forma:
Ecuacin 4
j j j j j
d x c x b x a x P + + + =
2 3
, 3
) (

Dado que se tiene para cada polinomio cuatro incgnitas, se tienen n-1 intervalos y n
puntos, para obtener los valores de los coeficientes 1 ,... 2 , 1 ; , , , = n j d c b a
j j j j
, es decir,
4(n-1) incgnitas, se requieren 4(n-1) ecuaciones, para formar el sistema de ecuaciones.
Esto se puede lograr considerando las siguientes condiciones que debe cumplir la funcin
spline cbica

1).- Las valores de los polinomios deben ser iguales en los nodos interiores, esto es,

Ecuacin 5
i i i i i i i
i i i i i i i
y x c x b x a
y x c x b x a
= + +
= + +

2 3
1
2
1
3
1


Para i = 2,...,n-1, por lo que de aqu se tienen 2(n-2) condiciones y por tanto se generan
2n-4 ecuaciones.

2).- El primer y ltimo polinomio deben pasar a travs de los puntos inicial y final, esto es,

Ecuacin 6
n n n n n n n n
y d x c x b x a
y d x c x b x a
= + + +
= + + +
1 1
2
1
3
1
1 1 1 1
2
1 1
3
1 1


Son dos condiciones por lo que se generan dos ecuaciones.

3).- Las primeras derivadas en los nodos interiores deber ser iguales (condicin de
continuidad), entonces:
Ecuacin 7
j j j j
c x b x a x P + + = 2 3 ) (
2
, 3


Por lo que
Ecuacin 8
1 , , 2
0 2 3 2 3
2 3 2 3
1 1
2
1
2
1 1
2
1
2
=
= + +
+ + = + +


n i para
c x b x a c x b x a
c x b x a c x b x a
i i i i i i i i i i
i i i i i i i i i i
K


Estas n-2 condiciones generan n-2 ecuaciones.
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 21 de 49

4).- Las segundas derivadas en los nodos interiores deben ser iguales (condicin de
continuidad), entonces
Ecuacin 9
j j j
b x a x P 2 6 ) (
, 3
+ =

Por lo que
Ecuacin 10
1 , , 2
0 2 6 2 6
2 6 2 6
1 1
1 1
=
= +
+ = +


n i para
x b x a x b x a
x b x a x b x a
i i i i i i i i
i i i i i i i i
K

Estas n-2 condiciones generan n-2 ecuaciones.

5.- Si la funcin S(x) es la funcin Spline Natural, las segundas derivadas en los nodos de
los extremos son cero.
Ecuacin 11
0 2 6
0 2 6
1 1
1 1 1 1
= +
= +
n n n n
x b x a
x b x a

Estas 2 condiciones generan 2 ecuaciones.

Considerando las ecuaciones que generan las condiciones de la Ecuacin 5, a la Ecuacin 11,
se tienen: ecuaciones n n n n 4 4 2 2 2 2 4 2 = + + + +

Construccin del spline cbico.

Se definen los polinomios cbicos que forman la funcin spline cbica S, como:
Ecuacin 12
3 2
3
) ( ) ( ) ( ) (
j j j j j j j j
x x d x x c x x b a x P + + + =

Para cada 1 , , 2 , 1 = n j K . Es claro que por ser una funcin interpolante, Ecuacin 12
evaluado en el nodo
1 + j
x es:
Ecuacin 13
j j j j j
y x f a x P = = = ) ( ) (
3


Si adems se cumple la condicin:
Ecuacin 14
2 , , 2 , 1 para ) ( ) (
1 1 3 1 3
= =
+ + +
n j x P x P
j j j j
K

Se tiene que:
Ecuacin 15
1 1 1
3
1
2
1 1 1 3 1 1 3 1
) (
) ( ) ( ) ( ) ( ) (
+ + +
+ + + + + + +
= =
+ + + = = =
j j j
j j j j j j j j j j j j j j j
y x f a
x x d x x c x x b a x P x P a


Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 22 de 49
Para 2 , 2 , 1 = n j K

Sea 1 - n , 1,2, j ;
1
K = =
+ j j j
x x h , y
1 1 1
) ( ; ) ( y x f a y x f a
n n n
= = = =

Para 1 , 2 , 1 , 0 = n j K , Ecuacin 15 se puede reescribir como:
Ecuacin 16
1 1
3 2
1
) (
+ + +
= = + + + =
j j j j j j j j j j
y x f h d h c h b a a

Por otra parte como la derivada de Ecuacin 12 est dada por
Ecuacin 17
2
3
) ( 3 ) ( 2 ) (
j j j j j j
x x d x x c b x P + + =

Ecuacin 18
1 , , 2 , 1 para ) (
3
= = n j b x P
j j j
K

Aplicando la condicin 2 , , 2 , 1 ), ( ) (
1 1 3 1 3
= =
+ + +
n j x P x P
j j j j
K , se tiene que
Ecuacin 19
2
1 1 1 3 1 1 3 1
) ( 3 ) ( 2 ) ( ) (
j j j j j j j j j j j j
x x d x x c b x P x P b + + = = =
+ + + + + +

2
1
3 2
j j j j j j
h d h c b b + + =
+


Para 1 2 , 1 , 0 = n j K , ya que se define ) (
1 3 n n n
x P b

=

Procediendo como en los casos anteriores, se tiene que ) ( 6 2 ) (
3 j j j j
x x d c x P + = , evaluando
en el nodo
j
x
Ecuacin 20
2
) (
2 ) (
3
3
j j
j j j j
x P
c c x P

= =

Aplicando la condicin 2 , , 2 , 1 ,
2
) (
2
) (
1 1 3 1 3
=

=

+ + +
n j
x P x P
j j j j
K , y definiendo
2
) (
1 3 n n
n
x P
c


= ,
se tiene por Ecuacin 20:
Ecuacin 21
j j j j
h d c c 3
1
+ =
+


Si se despeja
j
d , se tiene:
j
j
j j
d
h
c c
=

+
3
1
, sustituyendo este resultado en las Ecuacin 19
y Ecuacin 16, se obtiene:
Ecuacin 22
( ) ( )
1 1
2
1
2 3 2
+ + +
+ + = + + = + + =
j j j j j j j j j j j j j j j j
c c h b h c c h c b h d h c b b

Ecuacin 23
| |
2
1
2 3 2
1
3
j
j j
j j j j j j j j j j j j j
h
c c
h c h b a h d h c h b a a

+ + + = + + + =
+
+

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 23 de 49
( )
1
2
1
2
3
+ +
+ + + =
j j
j
j j j j
c c
h
h b a a

Despejando
j
b de Ecuacin 23 se obtiene:
Ecuacin 24
( )
j j j
j
j
j j
b c c
h
h
a a
= +

+
+
1
1
2
3

Reduciendo el ndice a j-1,
Ecuacin 25
( )
j j
j
j
j j
j
c c
h
h
a a
b +

1
1
1
1
1
2
3


Sustituyendo Ecuacin 25 en Ecuacin 22 con el ndice reducido:
Ecuacin 26
( )
( )
( )
( )
( ) ( )
( ) ( )
| |
( ) ( )
( ) | |
( ) ( )
( ) | |
( ) ( )
( ) ( ) ( )
1
1
1 1 1 1 1
1
1 1
1 1 1 1
1
1 1
1 1 1 1
1
1 1
1 1 1 1 1 1 1
1
1
1
1 1 1
1
1
1 1 1
1
1
1
1
1
1 1 1
3 3
2
3 3
2
2
3
1
3 3 2 2
3
1
) ( 2
3
2
3
) ( 2
3
2
3
) (

+ +

+
+

+
+

+
+
+

+
+

= + +

= + +

= + +

= + + + +
+ + +

= +

+ + =
j j
j
j j
j
j j j j j j j
j
j j
j
j j
j j j j j j j
j
j j
j
j j
j j j j j j j
j
j j
j
j j
j j j j j j j j j j j j
j
j j
j
j j
j j j j j
j
j j
j
j j j j j
j
j
j j
j j
j
j
j j
j j j j j
a a
h
a a
h
c h c h h c h
h
a a
h
a a
c h c h c h h
h
a a
h
a a
c h c h c h h
h
a a
h
a a
c h c h c h c h c h c h
h
a a
h
a a
c c h c c
h
c c
h
c c h c c
h
h
a a
c c
h
h
a a
c c h b b


Para cada 1 , , 3 , 2 = n j K

La Ecuacin 26 es un sistema que contiene solo { }
n
j
j
c
1 =
, como incgnitas, ya que los valores
{ } { }
n
j
j
n
j
j
a y h
1
1
1 =

=
estn dados por el espaciamiento entre los nodos y los valores de
j j
y x f = ) ( . Una vez conocidas las incgnitas se pueden obtener los valores de
{ } { }
1
1
1
1

=

=
n
j
j
n
j
j
d y b de las ecuaciones Ecuacin 24 y Ecuacin 21 respectivamente y de esta
manera se pueden construir los polinomios cbicos que forman S(x).

La pregunta que se plantea en relacin a la construccin desarrollada arriba, es si se
pueden determinar los valores de { }
n
j
j
c
1 =
por medio del sistema de ecuaciones dado en
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 24 de 49
Ecuacin 26, y si son nicos. El siguiente teorema indica que esto es posible cuando se
establece una de las dos condiciones de frontera que se dieron antes.

Teorema.- Si se define f en b x x x a
n
= < < < = L
2 1
, entonces f tendr un interpolante
spline cbico natural nico en los nodos
n
x x x K , ,
2 1
; es decir, un interpolante que cumple
con las condiciones de frontera ( ) 0 ) ( 0 = = b S y a S .

Algoritmo en seudolenguaje para Construir el spline cbico natural S, de la funcin
f definida en los nodos

b x x x a
n
= < < < = L
2 1
, y que satisface ( ) 0 ) ( 0 = = b S y a S .

Datos de entrada: n,
n
x x x K , ,
2 1
, ; ) ( ; ) ( ; ) (
2 2 2 1 1 1 n n n
y x f a y x f a y x f a = = = = = = L

Datos de salida:
j j j j
d c b a , , , , para 1 , , 2 , 1 = n j K

El polinomio cbico es:

] , [ para ) ( ) ( ) ( ) (
1
3 2
3 +
+ + + =
j j j j j j j j j j
x x x x x d x x c x x b a x P

P.1 Para i = 1,2,n-1
Hacer h
i
= x
i+1
- x
i

Fin

P.2 Para i = 2,3,n-1
Hacer ( ) ( )
1
1
1
3 3

+
=
i i
i
i i
i
i
a a
h
a a
h

fin

P.3 Hacer;


0
0
1
1
1
1
=
=
=
z
l


P.4 Para i = 2,..,n-1
Hacer;


( )
( )
i i i i i
i i i
i i i i i
l z h z
l h
h x x l
/
/
2
1 1
1 1 1 1

+
=
=
=



fin

P.5 Hacer;

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 25 de 49

0
0
1
=
=
=
n
n
n
c
z
l


P.6 Para j = n-1, n-2,...,1
Hacer:
( ) ( )
( ) ( )
j j j j
j j j j j j j
j j j j
h c c d
c c h h a a b
c z c
3 /
3 / 2 /
1
1 1
1
=
+ =
=
+
+ +
+


fin

P.7 Salida
j j j j
d c b a , , , , 1 , , 2 , 1 = n j K
Algoritmo en cdigo para encontrar los coeficientes
i
Z de un spline cbico.
Input n,ti,yi
for i=0,1,,n-1 do
h
i
=t
i+1
-t
i
b
i
=6(y
i+1
-y
i
)/h
i

end
U
1
=2(h
o
+h
1
)
V
1
=b
1
-b
0
for i=2,3,,n-1 do
u
i
=2(h
i
+h
i-1
)-h
2
i-1
/u
i-1
v
i
=b
i
-b
i-1
-h
i-1
v
i-1
/u
i-1
end
z
n
=0
for i=n-1,n-1,...,1 do
z
i
=(v
i
-h
i
z
i+1
)/u
i

end
z
o
=0
output z
i

Este sistema de ecuaciones, que es tridiagonal, se puede resolver mediante eliminacin
gaussiana sin pivoteo.

El cdigo acepta como entrada un conjunto de nodos (t
i
) y el conjunto de los valores de la
funcin correspondiente (y
i
) y produce un vector con los vectores z
i
. Por ltimo, el valor del
spline S en un punto x cualquiera interpolado se puede calcular de forma eficiente
empleando la siguiente expresin:

| | | |
i i i i i i i i
A t x B t x C t x y x S ) ( ) ( ) ( ) ( + + + =

En donde: ) (
6
1
1 i i
i
i
z z
h
A =
+
,
2
i
i
z
B = , ) (
1
3 6
1 1 i i
i
i
i
i
i
i
y y
h
z
h
z
h
C + =
+ +


Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 26 de 49
Ejemplo con la funcin spline de MatLab

Se muestra un ejemplo para ilustrar el empleo de los splines cbicos para interpolar los
valores de una tabla. En la tabla 1 se muestran algunos valores de una serie de valores
tabulados a intervalos regulares de la funcin x x f = ) ( en el intervalo [0,2.25]. Tambin
se indican los valores interpolados empleando el correspondiente spline cbico as como el
error absoluto cometido. Obsrvese que el error es cero para los nodos.

En la Figura 14 se representan grficamente los valores tabulados.

Tabla 1 Valores interpolados mediante un spline
cbico para la funcin N+1 e indicacin del error
cometido (en valor absoluto).
x
x
S
i
(x) ) (x
a

0.0000 0.0000 0.0000 0.0000E+00
0.0625 0.1426 1.0732E-01
0.1250 0.2782 7.5266E-02
0.1875 0.3997 3.3261E-02
0.2500 0.5000 0.5000 0.0000E+00
0.3125 0.5744 1.5440E-02
0.3750 0.6285 1.6155E-02
0.4375 0.6701 8.6732E-03
0.5000 0.7071 0.7071 0.0000E+00
1.7500 1.3228 1.3228 0.0000E+00
1.8125 1.3462 6.8994E-07
1.8750 1.3693 5.9953E-06
1.9375 1.3919 8.7004E-06
2.0000 1.4142 1.4142 0.0000E+00
2.0625 1.4361 2.4522E-05
2.1250 1.4577 4.7329E-05
2.1875 1.4790 4.6215E-05
2.2500 1.5000 1.5000 0.0000E+00


En la Figura 14 se muestra la grfica que representa la funcin
1 + x
e en el intervalo sobre el
eje x comprendido entre cero y siete [0,7].

x=0:0.5:7;
y=exp(x+1);
xx = 0:.25:7;
yy = spline(x,y,xx);
plot(x,y,'o',xx,yy)
xlabel('0 < x < 7')
ylabel('exp(x+1)')
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 27 de 49
title('Funcion exp(x+1)')

Figura 14 : Representacin de la funcin
1 + x
e . Los crculos representan los valores tabulados
de la funcin y la lnea continua los puntos interpolados mediante una funcin spline cbica


Ejemplo con la funcin spline de MatLab

En la Figura 15 se muestra otro ejemplo. Se representan grficamente los puntos
interpolados mediante una funcin spline cbico para la funcin y=sin(x) haciendo uso de
Matlab.

x=0:pi/7:2*pi;y=sin(x);
xx = 0:.25:2*pi;yy = spline(x,y,xx);
plot(x,y,'o',xx,yy)
xlabel('0 < x < 2\pi')
ylabel('sin(x)')
title('Funcion sin(x)')

Figura 15 Representacin de la funcin y=sin(x). Los crculos representan los valores tabulados
de la funcin y la lnea continua los puntos interpolados mediante una funcin spline cbica.

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 28 de 49
Ejemplo con sistema de ecuaciones simultneas
Para hacer ms firme el entendimiento de la aplicacin de Splines Cbicos, se escribe la
definicin correspondiente a este caso (orden 3).

Dados n+1 datos:

x x
0
x
1
x
2
..... x
n
y y
0
y
1
y
2
.... y
n

Un Spline cbico que interpola estos datos, es una funcin s(x) definida como sigue:

=

] , [ ) (
...
] , [ ) (
] , [ ) (
) (
1 1
2 1 1
1 0 0
n n n
x x x si x s
x x x si x s
x x x si x s
x s

Donde cada s
i
(x) es un polinomio cbico; s
i
(x
i
)=y
i
, para toda i=0,1,....,n y tal que s(x)
tiene primera y segunda derivadas continuas en (x
o
,x
n
)

Ejemplo 3. Interpolar los siguientes datos mediante un spline cbico:

x 2 3 5
y -1 2 -7

Solucin: Se define un polinomio cbico en cada uno de los intervalos que se forman:

A continuacin, Se busca que se cumpla la condicin de que la spline debe pasar por los
puntos dados en la tabla, o sea s(x)=y, as, se tiene que:

s(2) = -1 8a
1
+ 4b
1
+2c
1
+d
1
= -1 Ec 1
27a
1
+ 9b
1
+3c
1
+d
1
= 2 Ec 2
s(3) = 2
27a
2
+ 9b
2
+3c
2
+d
2
= 2 Ec 3
s(5) = -7 125a
2
+25b
2
+5c
2
+d
2
= -7 Ec 4

Ahora se calcula la primera derivada de s(x):

3a
1
x
2
+2b
1
x+c
1
si x [2,3]
s'(x)=
{3a
2
x
2
+2b
2
x+c
2
si x [3,5]

Al igual que en el caso de los splines cuadrticos, se presentan ecuaciones que pueden
tener discontinuidad en los cambios de intervalo; las posibles discontinuidades son los
puntos donde se cambia de intervalo, en este caso x=3. Para evitar esta discontinuidad, se
evala en x=3 los dos polinomios y se igualan de la siguiente manera: 3a
1
(3)
2
+2b
1
(3)+c
1
=
3a
2
(3)
2
+2b
2
(3)+c
2
. Siendo igual a:

27a
1
+6b
1
+c
1
=27a
2
+6b
2
+c
2
Ec 5

De la misma manera se procede con la segunda derivada:

6a
1
x+2b
1
si x [2,3]
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 29 de 49
6a
1
x+2b
1
si x [2,3]
s''(x)
= {6a
2
x+2b
2
si x [3,5]

Para lograr que s''(x) sea continua en el punto x=3m 6a
1
(3)+2b
1
= 6a
2
(3)+2b
2,
que
correspondera a:
18a
1
+2b
1
= 18a
2
+2b
2
Ec 6

En este punto se cuenta con 6 ecuaciones y 8 incgnitas, por lo tanto se tienen 2 grados
de libertad; en general, se agregan las siguientes 2 condiciones:

s''(x
o
)=0
s''(x
n
)=0
De lo cual se obtiene:

s''(2)=0 entonces 6a
1
(2)+2b
1
= 0 :: 12a
1
+2b
1
= 0 Ec 7
s''(5)=0 entonces 6a
2
(5)+2b
2
= 0 :: 30a
2
+2b
2
= 0 Ec. 8

Con lo cual, se ha completado un juego de 8 ecuaciones vs. 8 incgnitas, como sigue:

8a
1
+ 4b
1
+2c
1
+d
1
= -1
27a
1
+ 9b
1
+3c
1
+d
1
= 2
27a
2
+ 9b
2
+3c
2
+d
2
= 2
125a
2
+25b
2
+5c
2
+d
2
= -7
27a
1
+6b
1
+c
1
-27a
2
- 6b
2
- c
2
= 0
18a
1
+2b
1
-18a
2
- 2b
2
= 0
12a
1
+2b
1
= 0
30a
2
+ 2b
2
= 0


Cuya forma matricial es la siguiente:

8 4 2 1 0 0 0 0 a
1
-1
27 9 3 1 0 0 0 0 b
1
2
0 0 0 0 27 9 3 1 c
1
2
0 0 0 0 125 25 5 1 d
1
-7
27 6 1 0 -27 -6 -1 0 a
2
0
18 2 0 0 -18 -2 0 0 b
2
0
12 2 0 0 0 0 0 0 c
2
0
0 0 0 0 30 2 0 0 d
2
=
0

Usando Matlab se tendra la solucin con el siguiente cdigo:

hold off
clear all
Xi=[2 3 5];
Yi=[-1 2 -7];
x=[8 4 2 1 0 0 0 0; 27 9 3 1 0 0 0 0; 0 0 0 0 27 9 3 1; 0 0 0 0 125 25 5 1;
27 6 1 0 -27 -6 -1 0; 18 2 0 0 -18 -2 0 0; 12 2 0 0 0 0 0 0; 0 0 0 0 30 2 0
0];
y=[-1; 2; 2; -7; 0; 0; 0; 0];
var=inv(x)*y;
plot(Xi,Yi,'o','MarkerFaceColor','g')
axis([0 6 -8 4]);
grid on
y1=2:0.1:3;
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 30 de 49
y2=3:0.1:5;
x1=var(1:4);
x2=var(5:8);
yi1=polyval(x1,y1);
yi2=polyval(x2,y2);
hold on;
plot(y1,yi1,y2,yi2)
%var =
% 7.5000
% -67.5000
% 198.0000
% -187.0000
% -0.0000
% 0.0000
% -4.5000
% 15.5000
Figura 16


Si se agregan las siguientes dos lneas para realizarlo directamente con la funcin spline del
matlab se tendr la siguiente figura:

xx=0:0.1:6;
Int1=interp1(Xi,Yi,xx,spline);
plot(xx,Int1,r);
Figura 17

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 31 de 49

usando Mathematica, se obtiene la siguiente solucin:

a
1
= -1.250
b
1
= 7.500
c
1
= -10.750
d
1
= 0.500
a
2
= 0.625
b
2
= -9.375
c
2
= 39.875
d
2
= -50.125

Sustituyendo estos valores en la funcin inicial, se ve que el spline cbico para la tabla de
datos dada, queda definida como sigue:

+
+ +
=
] 5 , 3 [ 125 . 50 875 . 39 375 . 9 625 . 0
] 3 , 2 [ 5 . 0 75 . 10 5 . 7 25 . 1
) (
2 3
2 3
x si x x x
x si x x x
x s

Se muestra la grfica correspondiente a este ejercicio, creada tambin en Mathematica.

Figura 18


Obsrvese la finura con la que se unen los polinomios cbicos que conforman el spline.
Prcticamente ni se nota que se trata de dos polinomios diferentes. Esto es debido a las
condiciones que se impusieron sobre las derivadas de la funcin. Esta finura casi artstica,
es la que permite aplicar los splines cbicos, para cuestiones como el diseo de letras por
computadoras, o bien a problemas de aplicacin donde la interpolacin que se necesita es
de un caracter bastante delicado, como podra tratarse de datos mdicos sobre algn tipo
de enfermedad.
Ejemplo con sistema simultneo de ecuaciones
Interpolar los siguientes datos utilizando splines cbicos:

x -1 1 2 4
y -1 1 5 -2

Solucin: Nuevamente, se define un polinomio cbico en cada uno de los intervalos:

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 32 de 49
| |
| |
| |

+ + +
+ + +
+ + +
=
4 , 2 ,
2 , 1 ,
1 , 1 ,
) (
3 3
2
3
3
3
2 2
2
2
3
2
1
2
1
3
1
1
x si d x c x b x a
x si d x c x b x a
x si d x c x b x a
x S

Despus, se hace que el Spline pase por los puntos dados en la tabla. As, se tiene que:
s(-1)= -1 implica que, 1
1 1 1 1
= + + d c b a
s(1)=1 implica que, 1
1 1 1 1
= + + + d c b a , 1
2 2 2 2
= + + + d c b a
s(2)=5

implica que, 5 2 4 8
2 2 2 2
= + + + d c b a , 5 2 4 8
3 3 3 3
= + + + d c b a
Y finalmente s(4)= -2 implica que, 2 4 16 64
3 3 3 3
= + + + d c b a
Enseguida, se calcula la primera derivada:

| |
| |
| |

+ +
+ +
+ +
=
4 , 2 , 2 3
2 , 1 , 2 3
1 , 1 , 2 3
) `(
3 3
2
3
2 2
2
2
1 1
2
1
x si c x b x a
x si c x b x a
x si c x b x a
x S

Se nota entonces, que las posibles discontinuidades de s'(x) son x=1 y x=2. Por lo tanto,
para hacer que s'(x) sea continua, se igualan las ecuaciones correspondientes en ambos
valores:
2 2 2 1 1 1
2 3 2 3 c b a c b a + + = + +
3 3 3 2 2 2
4 12 4 12 c b a c b a + + = + +
Ahora se procede a calcular la segunda derivada:

| |
| |
| |

+
+
+
=
4 , 2 , 2 6
2 , 1 , 2 6
1 , 1 , 2 6
) ``(
3 3
2 2
1 1
x si b x a
x si b x a
x si b x a
x S

Nuevamente, las posibles discontinuidades se podran dar en los puntos x=1 y x=2. Por lo
tanto, para que s''(x) sea continua, se igualan las ecuaciones en ambos valores:

2 2 1 1 2 2 1 1
3 3 2 6 2 6 b a b a b a b a + = + + = +

3 3 2 2 3 3 2 2
6 6 2 12 2 12 b a b a b a b a + = + + = +

Finalmente, se agregan las condiciones de que la doble derivada se anule en los puntos
inicial y final de la tabla. En este caso,
0 3 0 2 6 0 ) 1 ( ' '
1 1 1 1
= + = + = b a b a S
0 12 0 2 24 0 ) 4 ( ' '
3 3 3 3
= + = + = b a b a S

Con esto se tiene un juego de Doce ecuaciones vs. Doce incgnitas:

1
1 1 1 1
= + + d c b a
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 33 de 49
1
1 1 1 1
= + + + d c b a
1
2 2 2 2
= + + + d c b a
5 2 4 8
2 2 2 2
= + + + d c b a
5 2 4 8
3 3 3 3
= + + + d c b a
2 2 16 64
3 3 3 3
= + + + d c b a

2 2 2 1 1 1
2 3 2 3 c b a c b a + + = + +
3 3 3 2 2 2
4 12 4 12 c b a c b a + + = + +
2 2 1 1
3 3 b a b a + = +
3 3 2 2
6 6 b a b a + = +
0 3
1 1
= + b a
0 12
3 3
= +b a

Este sistema tiene la siguiente forma matricial:

(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(

=
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(

(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(







0
0
0
0
0
0
2
5
5
1
1
1
3
3
3
3
2
2
2
2
1
1
1
1
0 0 1 12 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 1 3
0 0 1 6 0 0 1 6 0 0 0 0
0 0 0 0 0 0 1 3 0 0 1 3
0 1 4 12 0 1 4 12 0 0 0 0
0 0 0 0 0 1 2 3 0 1 2 3
1 4 16 64 0 0 0 0 0 0 0 0
1 0 4 8 0 0 0 0 0 0 0 0
0 0 0 0 1 2 4 8 0 0 0 0
0 0 0 0 1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0 1 1 1 1
0 0 0 0 0 0 0 0 1 1 1 1
d
c
b
a
d
c
b
a
d
c
b
a


Usando Mathematica, se obtiene la solucin:

35
24
,
10
21
,
140
51
3 2 1
=

= = a a a
35
288
,
35
297
,
140
153
3 2 1

= = = b b b
70
1867
,
70
473
,
140
89
3 2 1
=

= = c c c
35
732
,
35
48
,
40
153
3 2 1

= =

= d d d

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 34 de 49

Por lo tanto, la Spline cbico es:

| |
| |
| |

+
+ +
+ +
=
1 , 1
35
732
70
1867
35
288

35
24
2 , 1
35
48
70
473
35
297
10
21
1 , 1
40
153

140
89
140
153

140
51
) (
2 3
2 3
2 3
x si x x x
x si x x x
x si x x x
x S

Finalmente, se muestra la grfica correspondiente.
Figura 19


Un caso particular
Se ilustra un proceso de construccin con el ejemplo siguiente, en el cual se trata de hallar
el trazador cbico para los puntos:

) 2 , 6 ( ) , ), ( 3 , 4 ( ) , ), ( 4 , 3 ( ) , ), ( 2 , 1 ( ) , (
3 3 2 2 1 1 0 0
= = = = y x y x y x y x .

Figura 20

Como puede observarse, es necesario construir el trazador S(x) que se define como S
o
(x)
en el intervalo [1,3], como S
1
(x) en el intervalo [3,4] y como S
2
(x) en el intervalo [4,6],
donde
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 35 de 49
3 2
) ( ) ( ) ( ) (
j j j j j j j j
x x d x x c x x b a x S + + + = , para j=0,1,2
Como 1
0
= x , 3
1
= x , 4
2
= x y 6
3
= x , es claro que
3 ) ( , 4 ) ( , 2 ) (
2 2 2 1 1 1 0 0 0
= = = = = = x S a y x S a x S a
Adems se define ) (
3 2 3
x S a = .

En los siguientes pasos se dan condiciones que deben cumplir los coeficientes de los
polinomios cbicos
j j j j
d c b a , , , , para j=0,1,2

1. Continuidad.
En primer lugar, se pide que S
o
(x) coincida con S
1
(x) en x
1
. Adems, S
1
(x) debe
coincidir con S
2
(x) en x
2
. Estas dos condiciones, junto a la definicin que se hizo
antes de que ) (
3 2 3
x S a = conducir a las tres ecuaciones:

3 3
1 j j j j j j j j
h d h c h b a a + + + =
+
, para j=0,1,2 Ec 1

2. donde:
j j j
x x h =
+1
, para j=0,1,2.

3. Suavidad. Como
2 '
) ( 3 ) ( 2 ) (
j j j j j j
x x d x x c b x S + + = , para j=0,1,2

Ahora debe cumplirse que ) ( ) (
1
'
1 1
'
x S x S
o
= y que ) ( ) (
2
'
2 2
'
1
x S x S = . Al agregarle a
estas dos condiciones la definicin de ) ( '
3 2 3
x S b = , se obtienen las tres ecuaciones:

2
1
3
j j j j j j
h d h c b b + + =
+
, para j=0,1,2 Ec 2

4. Coincidencia en concavidad.
Calculando la segunda derivada de cada uno de los polinomios ) (x S
j
:
) ( 6 2 ) (
"
j j j j
x x d c x S + = Para j=0,1,2

Ahora se le pide la condicin ) ( ) (
1
"
1 1
"
x S x S
o
= y ) ( ) (
2
"
2 2
"
1
x S x S = . Como
j j j
c x S 2 ) ( ' ' =
para j=0,1,2. De manera similar a como se hizo en los anteriores casos, se agrega la
definicin de 2 / ) ( ' '
3 2 3
x S c = , se obtienen las ecuaciones:
j j j j
h d c c 3
1
+ =
+
, para j=0,1,2
Ec 3
5. Despejando
j
d de la ecuacin 3 se obtiene:

) (
3
1
1 j j
j
j
c c
h
d =
+
Ec 4

6. sustituyendo
j
d en 1 y en 2 se obtienen las relaciones 5 y 6:
) 2 (
3
1
2
1 + +
+ + + =
j j
j
j j j j
c c
h
h b a a , j=0,1,2
Ec 5
j j j j j
h c c b b ) (
1 1 +
+ + = , j=0,1,2
Ec 6
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 36 de 49

7. Despejando
j
b de la ecuacin 5
2 , 1 , 0 ), 2 (
3
) (
1
1 1
= + =
+ +
j c c
h
a a
h
b
j j
j
j j
j
j

Ec 7
8. y haciendo un corrimiento de ndices, se obtiene:
3 , 2 , 1 ), 2 (
3
) (
1
1
1
1
1
1
= + =

j c c
h
a a
h
b
j j
j
j j
j
j

Ec 8

9. De igual forma, en la ecuacin 6 se hace un corrimiento de ndices para obtener
1 1 1
) (

+ + =
j j j j j
h c c b b , j=1,2,3
Ec 9

10. Al sustituir en esta ltima ecuacin la expresin para b
j
obtenida en Ec7 y en Ec8, y
haciendo las simplificaciones del caso se obtiene el sistema de ecuaciones:
11. ) (
3
) (
3
) ( 2
1
1
1 1 1 1 1

+ +
= + + +
j j
j
j j j j j j j j j
a a
h
a a
hj
c h c h h c h , para j=1,2
12. Concretamente, es el sistema:

= + + +
= + + +
) (
3
) (
3
) ( 2
) (
3
) (
3
) ( 2
1 2
1
2 3
2
3 2 2 2 1 1 1
0 1
0
1 2
1
2 1 1 1 0 0 0
a a
h
a a
h
c h c h h c h
a a
h
a a
h
c h c h h c h


13. Trazador cbico con frontera libre
Hay varios tipos de trazadores que se pueden obtener, dependiendo de las
condiciones de frontera que se ponga en los extremos
n
x x ,
0
en el cual se est
haciendo la interpolacin. En este material, y continuando con el ejemplo que se
esta trabajando, le pide al trazador ) (x S las condiciones:

0 ) ( ' '
0
= x S y 0 ) ( ' '
3
= x S , por lo que se concluye que 0
0
= c y que 0
3
= c . De esta manera
el sistema anterior puede escribirse en forma matricial:
(
(
(
(
(
(



=
(
(
(
(

(
(
(
(

+
+
0
) (
3
) (
3
) (
3
) (
3
0
1 0 0 0
) ( 2 0
0 ) ( 2
0 0 0 1
1 2
1
2 3
2
0 1
0
1 2
1
3
2
1
0
2 2 1 1
1 1 0 0
a a
h
a a
h
a a
h
a a
h
c
c
c
c
h h h h
h h h h


En el ejemplo, el sistema anterior toma la forma:

(
(
(
(

=
(
(
(
(

(
(
(
(

0
2 / 3
6
0
1 0 0 0
2 6 1 0
0 1 6 2
0 0 0 1
3
2
1
0
c
c
c
c


La solucin de este sistema es: 0
0
= c , 0714286 . 1
1
= c , 4285714 . 0
2
= c , 0
3
= c
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 37 de 49

Como ya se saba desde antes,: 2
0
= a , 4
1
= a , 3
2
= a , 2
3
= a

De la ecuacin 4 se calcula:

=
=
=
0714857 . 0
5 . 0
1785714 . 0
2
1
0
d
d
d


De la ecuacin 7 se obtiene:

=
=
=
0714285 . 1
4285714 . 0
7142857 . 1
2
1
0
b
b
b


Finalmente, se concluye que el trazador cbico con frontera libre es:

+ =
+ =
+ =
=
] 6 , 4 [ ) 4 ( 0714857 . 0 ) 4 ( 4285714 . 0 ) 4 ( 0714285 . 1 3 ) (
] 4 , 3 [ ) 3 ( 5 . 0 ) 3 ( 0714286 . 1 ) 3 ( 4285714 . 0 4 ) (
] 3 , 1 [ ) 1 ( 1785714 . 0 ) 1 ( 7142857 . 1 2 ) (
) (
3 2
2
3 2
1
3
0
x si x x x x S
x si x x x x S
x si x x x S
x S


Figura 21


El caso general

Para un conjunto de N+1 puntos ) , ( ),..., , ( ), , ( ), , (
2 2 1 1 0 n n
y x y x y x y x , en el proceso de
construccin del trazador cbico, se buscan los coeficientes
j j j
c b a , , y
j
d , que cumplan
las siguientes relaciones:

1.
3 2
) ( ) ( ) ( ) (
j j j j j j j j
x x d x x c x x b a x S + + + = , para j=0,1,2,n-1
2.
j j j j
y x S a = = ) ( , para j=0,1,2,.. n-1. Adems,
n n n n
y x s a = =

) (
1

3.
j j j
x x h =
+1
, para j=0,1,2,n-1
4. ) (
3
1
1 j j
j
j
c c
h
d =
+
, para j=0,1,2,n-1
5. ) 2 (
3
) (
1
1 1 + +
+ =
j j
j
j j
j
j
c c
h
a a
h
b , para j=0,1,2,n-1

6. Se forma un sistema de 1 n ecuaciones con 1 + N incgnitas
n
c c c ,..., ,
1 0
:

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 38 de 49
) (
3
) (
3
) ( 2
1
1
1 1 1 1 1

+
= + + +
+ j j
j
j j
j
j j j j j
a a
h
a a
h
c h c h h c h
j j
, j=1.,2,n-1
Al agregarle a este sistema las condiciones de frontera libre 0 ) ( ) (
" "
= =
n o
x S x S , se
concluye que 0
0
= =
n
c c y el sistema resulta con una matriz tridiagonal de
coeficientes que tiene solucin nica. Adems, esta es una solucin explcita.

7. Algoritmo de trazador con frontera libre.

Entrada: ) , ),...( , ( ), , (
1 1 0 0 n n
y x y x y x , con
n
x x x ...
1 0
< < .

Salida:
j j j j
d c b a , , , para 1 ,..., 1 , 0 = n j

1. Para 1 ,..., 1 , 0 = n j : se define
j j j
x x h =
+1

j j
y a =

2.
n n
y a =

3. Para 1 1 0 = ,...,n , j : se define

| |
j j
j j j j j j j
j
h h
h a h h a h a
1
1 1 1 1
) ( 3

+
+ +
=

4. Se define

1 =
o
i , 0
0
= , 0
0
= z , 1 =
n
i , 0 =
n
z , 0 =
n
c

5. Para 1 ,..., 2 , 1 = n j se define
1 1 1
) ( 2

+ =
i i i i i
h h h l
i i i
l h / =

i i i i i
l z h z / ) (
1 1
=

6. Para 0 ,..., 1 , 1 = n n j se define
1 +
=
j j j j
c z c
3 / ) 2 ( / ) (
1 1 j j j j
c c hj hj a a bj + =
+ +

) 3 /( ) (
1 j j j j
h c c d =
+


Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 39 de 49
Prctica con MATLAB
Ejemplos con sistemas simultneos de ecuaciones
En primer lugar se espera que el usuario resuelva el sistema de ecuaciones lineales con el
que se concluy la seccin introductoria y use los comandos especficos de MATLAB para su
solucin.

En efecto, se puede seguir la siguiente secuencia de instrucciones para determinar la
solucin del sistema.

A = [ 1.331 1.21 1.1 1;
12.167 5.29 2.3 1;
59.319 15.21 3.9 1;
132.651 26.01 5.1 1];
b = [ ];
b = [3.887; 4.276; 4.651; 2.117];
c = A\b
c = -0.2015
1.4385
-2.7477
5.4370

Con este proceso se han obtenido los coeficientes del polinomio.
Ejemplo con Polyfit
Otra manera de resolverlo es directamente con comandos especficos del software, como se
explica a continuacin.

MATLAB realiza varias tareas de interpolacin mediante el comando INTERP1, el cual,
dependiendo de los parmetros con que sea evaluado, ejecuta mtodos diferentes de
interpolacin.

Para hallar los coeficientes del polinomio interpolante podemos recurrir al comando polyfit,
que tiene sintaxis polyfit(X,Y,m), el cual retorna el polinomio de mnimos cuadrados de
grado de mejor ajuste a los datos. Es bien sabido que si tenemos puntos el polinomio de
grado que mejor se ajusta a esos datos en el sentido de mnimos cuadrados es precisamente
el polinomio interpolante.

Por ejemplo, para hallar el resultado del polinomio interpolante que pasa por los cuatro
puntos ,, y al evaluarlo en el valor de , se puede seguir la siguiente secuencia de
instrucciones:

clear all;
X = [1.1, 2.3, 3.9, 5.1];
Y = [3.8870, 4.2760, 4.65110, 2.1170];
P = polyfit(X,Y,3)
Resultado=Polyval(P,2.5)

Esto da como resultado

P = -0.2015 1.4387 -2.7481 5.4372
Resultado = 4.4108

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 40 de 49
El resultado obtenido en la variable P son los coeficientes del polinomio de interpolacin
dispuestos en un vector: P = -0.2015 1.4387 -2.7481 5.4372

Estos coeficientes se interpretan como el polinomio:
4372 . 5 7481 . 2 4387 . 1 2015 . 0
2 3
+ + x x x

Note que la instruccin Resultado=Polyval(P,2.5), permite encontrar el valor del
polinomio evaluado en 2.5. Esta funcin de MATLAB permite tambin evaluar un polinomio
en un vector de valores y en este caso retornara un vector de resultados. Esta
adaptabilidad de la funcin Polyval para evaluarse en un vector de valores la hace muy til
para graficar cualquier polinomio en un intervalo dado, como se ver en el siguiente
ejemplo.

La siguiente secuencia de instrucciones est orientada al clculo del polinomio interpolante
para los puntos (1,5), (3,1), (4,3), (5,-1), (7,4) y (10,2) y, alternativamente la aproximacin
y visualizacin del trazador cbico (splines).

hold off
x=[1 3 4 5 7 10];
y=[5 1 3 -1 4 2];
P = polyfit(x,y,5);
t=0:0.1:11;
W=polyval(P,t);
plot(x,y,'*k')
hold on;
plot(t,W,'k')
z=interp1(x,y,t,'spline');
plot(t,z,'r')

En Figura 22 puede compararse el trazador cbico con el polinomio interpolante para los
seis puntos. Como puede notarse, el trazador cbico se acomoda mejor a los datos y no
produce oscilaciones indeseables para efecto de hacer extrapolaciones ms apropiadas.
Figura 22


Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 41 de 49
MATLAB trae implementada la funcin spline para la interpolacin por splines cbicos. El
comando, yy = spline(x,y,xx), Efecta la interpolacin de la nube de puntos dada por los
vectores x, y por medio de splines cbicos. En la salida (variable yy) se obtienen los valores
del spline evaluado en los puntos dados en el vector xx. Si y es una matriz, la interpolacin
se realiza para cada fila de y.

Por ejemplo, el listado

hold off
x = 0:10;
y = sin(x);
xx = 0:0.25:10;
yy = spline(x,y,xx);
plot(x,y,'o',xx,yy)
Figura 23

Nota: Un resultado anlogo se puede obtener con la funcin interp1: yy=interp1(x,y,xx,'spline'); vista en el
ejemplo inmediatamente anterior.

Por defecto, se usan las condiciones "not-a-knot" (es decir, los nodos interiores extremos
son pasivos). Sin embargo, si el vector y contiene dos valores ms que el x, entonces el
primer y el ltimo elemento del vector y se usan como valores de la derivada en los nodos
extremos, y el spline construido es el sujeto.

Por ejemplo, el listado

hold off;
x = 0:10;
y = sin(x);
ys=[-1, y, 5]; % Se agrega dos valores
xx = 0:.25:10;
yy = spline(x,ys,xx);
plot(x,y,'o',xx,yy)

Dibuja una aproximacin a la grfica de la funcin sen (t) a partir de la interpolacin con
splines cbicos sujetos, con pendientes -1 y 5 en los nodos 0 y 10, respectivamente.
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 42 de 49
Figura 24

Ejemplo con Polyfit
Un reactor est trmicamente estratificado con los valores de la siguiente tabla:

Profundidad, m 0.0 0.5 1.0 1.5 2.0 2.5 3.0
Temperatura,
o
C 70 68 55 22 13 11 10
Tabla 2

Se comparan los resultados de interpolar estos valores con polinomios cuyo orden vara de 2
a 6 y empleando spline:

hold off
Prof = [0: 0.5 :3];
Temp = [70, 68, 55, 22, 13, 11, 10];
X1 = [0 : 0.1 : 3];
AjSp= spline(Prof, Temp, T1);
for j=1:2,
for i=1:3,
Pol= polyfit(Prof, Temp,(2*j-1)+ i);
AjPol=polyval(Pol,X1) ;
subplot(2,3,(2*j-1)+i) ;
plot(Prof, Temp,or, X1, AjPol,g, X1, AjSp,b);
axis([min(Prof)-.2,max(Prof)+.2,min(Temp)-10,max(Temp)+10])
end
end
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 43 de 49
Figura 25

Ejemplo con la funcin Spline
Con los siguientes pares coordenados, constryase los 3 polinomios con trozos splines.
) 8 , 7 ), ( 2 , 5 ), ( 5 , 3 ), ( 1 , 1 ( . Para resolver el ejercicio se usan solo comando de MatLab.

hold off
x=[1 3 5 7]; % Vector de los datos del eje x
y=[1 5 2 8]; % Vector de los datos del eje y
yy=spline(x,y) % Valores devueltos por la funcin Spline de MatLab
yy =
form: 'pp'
breaks: [1 3 5 7]
coefs: [3x4 double]
pieces: 3
order: 4
dim: 1
xx1=1:0.1:7; %Desde el valor mnimo al mximo del eje x
yy1=ppval(yy,xx1); % Evaluacin para cada uno de los trozos de polinomios.

Hasta aqu se podra construir la curva spline que une los 4 pares de puntos con el siguiente
comando tal como se ilustra en la Figura 26.

plot(x,y,'or',x1,y1,b);

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 44 de 49
Figura 26. Spline con la funcin de MatLab spline y ppval.


Las instrucciones que a continuacin se colocan extraen los coeficientes de cada polinomio
que une dos pares coordenados.

As, el primer polinomio, estar uniendo los puntos x=1 y x=3.

x1=1:0.1:3;
p1=yy.coefs(1,:)
p1 =
0.3333 -2.8750 6.4167 1.0000
y1=p1(1)*(x1-1).^3+p1(2)*(x1-1).^2+p1(3)*(x1-1)+p1(4);

La variable y1, evala el polinomio p1 en cada uno de los puntos definidos para el rango
anterior, Es decir x1=1, 1.1, 1.2, . . ., 2.9 y 3

De igual forma, que en el caso anterior, el segundo polinomio unir los `puntos x=3 y x=5, y
los coeficientes del polinomio estarn dados por los valores de p2.

x2=3:0.1:5;
p2=yy.coefs(2,:)
p2 =
0.3333 -0.8750 -1.0833 5.0000
y2=p2(1)*(x2-3).^3+p2(2)*(x2-3).^2+p2(3)*(x2-3)+p2(4);

La variable y2, evala el polinomio p2 en cada uno de los puntos definidos para el rango de
x anterior, Es decir x1=3, 3.1, 3.2, . . ., 4.8, 4.9 y 5

Para el tercer trozo, es decir para el rango de las x entre 5 y 7, se hara lo mismo.

x3=5:0.1:7;
p3=yy.coefs(3,:);
y3=p3(1)*(x3-5).^3+p3(2)*(x3-5).^2+p3(3)*(x3-5)+p3(4);

Por ultimo se grafican los tres trozos de polinomio, con la siguiente instruccin, mostrando
como resultado la Figura 27
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 45 de 49

plot(x,y,'or',x1,y1,'b',x2,y2,'y',x3,y3,'g')

Figura 27. Splines construido a trozos con funciones de MatLab


Problema 1 Ejecute los dos listados anteriores para comprobarlos; dibuje las grficas de
los dos splines sobre el mismo sistema de coordenadas para observar sus diferencias.

Aumente la cantidad de nodos en [0,10] hasta 50 y vuelva a construir las grficas
aproximadas.

Problema 2 Evale la funcin
2 20 10
) 1 log( 10
) (
2 3
2
+
+ +
=
t t t
t t
t f

En 7 nodos equiespaciados en el intervalo [-1,1].

1. Construya un spline cbico s que interpola a f en esos puntos.
2. Dibuje la grfica del error e(t)=f(t)-s(t) y estime el valor de la norma uniforme
| | 1 , 1
e . Compare con el resultado de la interpolacin polinomial de la prctica
anterior.
3. Los valores de las derivadas de f en los extremos del intervalo son aproximadamente
f'(-1)=0.3 y f'(1)=-0.09. Construya el spline sujeto interpolador y dibuje la grfica de
la diferencia entre los dos splines. Cmo se propaga la influencia de las condiciones
de frontera al resto del spline?

En su sintaxis "reducida" pp = spline(x,y) devuelve la forma polinomial a trozos del spline
cbico interpolador de la nube x, y. Para evaluarlo, hay que aplicarle la funcin ppval,
equivalente a polyval para polinomios. As,

pp = spline(x,y);
yy=ppval(pp,xx);

Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 46 de 49
Equivale a yy = spline(x,y,xx). Sin embargo, esta forma permite hallar explcitamente los
coeficientes del spline construido, en caso de que se necesiten. La funcin que se encarga
de "trocear" el spline y sacar esta informacin se llama unmkpp (de unmake piecewise
polinomial'). Su sintaxis es:

[nodos,coefs,nro de trozos, orden, dim] = unmkpp(pp)

Donde recuerde que el orden = grado + 1, y dim se refiere a si el spline es uni o
multivariante.

Nota: La funcin inversa a unmkpp es la mkpp.
Ejercicios propuestos
Ejercicio N 1:

Para el conjunto de valores tabulados (regularmente espaciados), se pide:

a) Obtener la tabla de diferencias sucesivas.
b) Calcular por interpolacin el valor de Y(2.3) considerando:
Polinomio de orden 1 con arranque en Xo= 2.2
Polinomio de orden 2 con arranque en Xo= 2
Polinomio de orden 2 con arranque en Xo= 2.2
Polinomio de orden 3 con arranque en Xo= 2
Polinomio de orden 3 con arranque en Xo= 2.2
c) En casa caso determinar los errores relativos de cada interpolacin considerando que
los puntos pertenecen a la funcin Y(x)= seno(x). (x en radianes)

X Y
2.0 0.909
2.2 0.808
2.4 0.675
2.6 0.516
2.8 0.335
3.0 0.141

Ejercicio N 2:

Para el conjunto de valores tabulados (irregularmente espaciados), se pide:

a) Obtener la tabla de diferencias divididas sucesivas.
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 47 de 49
b) Calcular por interpolacin el valor de Y(2.3) considerando:
Polinomio de orden 1 con arranque en Xo= 2.1
Polinomio de orden 2 con arranque en Xo= 2.0
Polinomio de orden 2 con arranque en Xo= 2.1
Polinomio de orden 3 con arranque en Xo= 2.0
Polinomio de orden 3 con arranque en Xo= 2.1
c) En casa caso determinar los errores relativos de cada interpolacin considerando
que los puntos pertenecen a la funcin Y(x)= seno(x). (x en radianes)

X Y
2.0 0.909
2.1 0.863
2.4 0.675
2.6 0.516
2.7 0.427
3.0 0.141

Ejercicio N 3:

Para la tabla del Ejercicio N 2, se pide
a) Obtener los polinomios de Lagrange para los siguientes casos.
Polinomio de orden 1 con arranque en Xo= 2.1
Polinomio de orden 2 con arranque en Xo= 2.0
Polinomio de orden 2 con arranque en Xo= 2.1
Polinomio de orden 3 con arranque en Xo= 2.0
Polinomio de orden 3 con arranque en Xo= 2.1
b) En casa caso estimar el valor de Y en X=2.3

Ejercicio N 4:

Para la tabla del Ejercicio N 2, se pide
1. Obtener los coeficientes que definen los Splines o Trazadores Cbicos Naturales.
2. Estimar el valor Y en X= 2.3 . Compararlo con aquel obtenido en los ejercicios N
2 y 3. Interpretar el origen de las diferencias observadas.
3. Calcular el valor de las derivadas primera y segunda en cada punto.
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 48 de 49
RECURSOS BIBLIOGRAFCOS
Bibliografa Bsica:
MATHEUS. John H. Fink Kurtis D. Mtodos Numricos con MATLAB. Editorial Prentice
Hall
Bibliografa Complementaria:
ALTZ, Franz L. Electronic. Digital. computers: Their use in science and
Engineering. 1958 Academic Press inc. New York.
BURDEN Richard L., J. Douglas Faires; Anlisis numrico. tr. Efrn Alatorre Miguel;
Revisin Tcnica. Ildefonso. 1998 (Biblioteca USCO. Nro Topogrfico: 515 / B949a.)
CHAPRA Steven C., CANALE Raymond P, Numerical Methods for engineers. McGraw
Hill, Inc. 1988. 839p. ISBN 0-07-909944-0.
CHAPRA Steven C., CANALE Raymond P. Mtodos numricos para ingenieros: con
aplicaciones en computadoras personales. 1988 (Biblioteca USCO Nro Topogrfico:
519.5 / C467m)
CONDE S. D, Carl de Boor. Anlisis numrico elemental: Un enfoque algortmico. Mc.
Graw-Hill 1972, (Biblioteca USCO Nro Topogrfico: 511.8 / C761 Biblioteca).
CORMICK MC., John M. and SALVADOR M.C. Numerical Methods in FORTRAN. 1964.
Prentice-Hall Inc Englewood Cliffs N:J.
CURTIS, F. Gerald, WHEATLEY, O. Patrick. Anlisis numrico con aplicaciones. Tr.
Hugo Villagomez Vasquez. 6 Ed. Pearson Educacin. 2000, 698p. ISBN 968-444-393-5
FADDEEVA, V.N. Computacional methods of linear algebra, Dover
Publications. 1969, New York.
GASTINEL Nol; Anlisis numrico lineal. tr. Javier Ruiz Fernndez de Pinedo. 1975.
(Biblioteca USCO Nro Topogrfico: 511.7 / G255).
GREENSPAN, D. Theory and solutions of Ordinary Differencial Equations.
1960 The. Mc Millan Co. New York.
KINCAID David y Ward Cheney; Anlisis numrico: Las matemticas del clculo
cientfico. tr. Rafael. 1994 (Biblioteca USCO Nro Topogrfico: 515 / K51a).
LUTHE. Rodolfo, OLIVERA Antonio, SCHUTZ Fernando, Mtodos numricos. 1986
(Biblioteca USCO Nro Topogrfico: 511.7 / L973m).
McCRACKEN, Daniel D., Mtodos numricos y programacin fortran: con aplicaciones
en ingeniera y ciencias. 1986. Editorial Limusa. Mxico. (Biblioteca USCO Nro.
Topogrfico: 001.6424 / M117).
NAKAMURA Shoichiro; Mtodos numricos aplicados con software. tr. Oscar Alfredo
Palmas Velasco. Prentice Hall Hispanoamericana S.A. 1995. 570p. (Biblioteca USCO.
Nro. Topogrfico: 511.8 / N163m) ISBN 968-880-263-8
NAKAMURA Shoichiro; Anlisis numrico y visualizacin grfica con MatLab. tr.
Roberto Escalona Garcia. Prentice Hall Hispanoamericana S.A. 1997. (Biblioteca
USCO N ro Topogrfico: 515.1 / N163a). 465p. ISBN 968-880-980-1
NIETO RAMIREZ Jos A., Mtodos numricos en computadoras digitales. Editorial
Limusa 1980. (Biblioteca USCO Nro Topogrfico: 001.64042 / N677).
Trazadores o Splines Ing Yamil Armando Cerquera Rojas
yacerque@gmail.com
Universidad Surcolombiana Neiva Huila Colombia 49 de 49
RALSTON Anthony; Introduccin al anlisis numrico. tr. Carlos E. Cervantes de
Gortari. Editorial Limusa. Mexico. 1978. 629p. (Biblioteca USCO Nro Topogrfico:
511.7 / R164.)
SCARBOROUGH, J.B Numerical mathematics analysis
SIERRA ROMERO, Alberto. Manual de Mtodos Numricos. Universidad Tecnolgica
de Pereira.
SMITH, W. Allen; Anlisis numrico. tr. Francisco Javier Snchez Bernabe; Rev. Tc.
Jos Luis Turriza Pinto. Prentice Hall Hispanoamericana S.A. 1988. 608p. (Biblioteca
USCO Nro Topogrfico: 515 / S664a) ISBN 968-880-119-4.
STANTON, Ralp G. Numerical Methods for Science and Engineering. 1967. Prentice-
Hall Inc. Englewood Cliffs N.J
Bibliografa OnLine:
http://anamat1.csi.ull.es/anamat_p/Titulaciones/matematicas.htm
http://arxiv.org/
http://books.pdox.net/
http://luda.azc.uam.mx/curso2/cp2indic.html
http://mailweb.udlap.mx/~ccastane/Analisis_Numerico_html/Lindley.html#RegresaGral1
http://mathworld.wolfram.com/
http://omega.ilce.edu.mx:3000/sites/ciencia/html/fisica.htm
http://pessoal.sercomtel.com.br/matematica/resumos.htm
http://proton.ucting.udg.mx/posgrado/cursos/metodos/temario.html
http://sai.uam.mx/apoyodidactico/mn/
http://uprhmate01.upr.clu.edu/~pnm/notas4061/index.htm
http://webdiee.cem.itesm.mx/web/servicios/archivo/tutoriales/metodos/index.html
http://webdiee.cem.itesm.mx/web/servicios/archivo/tutoriales/metodos/algoritmos/index.html
http://webdiee.cem.itesm.mx/web/servicios/archivo/tutoriales/metodos/algoritmos/index.html
http://www.ciencia-hoy.retina.ar/indice.htm
http://www.cnice.mecd.es/Descartes/
http://www.damtp.cam.ac.uk/user/fdl/people/sd/lectures/nummeth98/contents.htm
http://www.elprisma.com/
http://www.fortunecity.com/campus/earlham/850/metodos_numericos/indice.htm#
http://www.geocities.com/SiliconValley/Pines/7894/metodos/
http://www.iesrodeira.com/metodos_numericos/index-2.htm
http://www.ii.uam.es/~pedro/ccii/teoria/
http://www.itlp.edu.mx/publica/tutors.htm
http://www.monografias.com/trabajos13/tumatlab/tumatlab.shtml
http://www.rinconmatematico.com/libros.htm
http://www.ucsc.cl/~kdt/numerico/index.htm
http://www.unalmed.edu.co/~ifasmar/libro.shtml
http://www.uv.es/~diaz/mn/fmn.html
http://www.uv.es/diaz/mn/fmn.html
http://www-gap.dcs.st-and.ac.uk/~history/index.html (Biografias)