Вы находитесь на странице: 1из 40

Capı́tulo 6

Aproximación e
Interpolación

6.1. Interpolación
El proceso de generar una solución aproximada que permita estimar el
valor f (x) para x 6= xi con i = 0 : n; se denomina Interpolación.

6.2. Aproximación
Si se tiene una función f (x), Aproximar es construir otra función P (x)
de tal modo que según algún criterio se comporte de forma semejante. Esto
se ilustra en la Figura 1.1.
Un ejemplo de aproximación puede ser el Polinomio de Taylor (ver Capı́-
tulo 1).

f 00 (x0 )(x − x0 )
Pn (x) = f (x0 ) + f 0 (x0 )(x − x0 ) + + . . . + Rn
2!

6.3. Razones para Aproximar e Interpolar


a) Reemplazar una función f (x) la cual es difı́cil manipular y evaluar (Por
ejemplo, diferenciar o integrar) por una función más simple Q(x).

b) Interpolar valores funcionales representados en una tabla x, f (x). En


muchos casos una función f (x) es conocida cuantitativamente por un
número finito de valores llamados puntos base.

255
256 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

f (x)

Puntos
Tabulares
Función Real

. Función Aproximante

. .
. .
.
0 X1 X2 X3 X4 X5 X6
X

Figura 6.1: Gráfica de una función aproximante a otra función dada o a un


grupo de puntos tabulares (función tabular).

x f (x)
x0 f (x0 )
x1 f (x1 )
.. ..
. .
xi f (xi )
.. ..
. .
xn f (xn )

Existen varios métodos para aproximar una función f (x). Los más uti-
lizados son:

• Interpolación Pura.
• Interpolación por Mı́nimos Cuadrados.
• Splines.
6.4. TIPOS DE FUNCIONES DE APROXIMACIÓN E INTERPOLACIÓN257

6.4. Tipos de Funciones de Aproximación e Inter-


polación
Para aproximar una función f (x) se utilizan diferentes tipos de funciones
según la naturaleza del problema; entre las cuales se tiene:

a) Polinómicas: Consiste en aproximar una función f (x) mediante un


polinomio de grado n, Pn (x), es decir:

f (x) ' Pn (x)

Esto se ilustra en la Figura 1.2.

f (x)

f (x)

Pn (x)

0 X

Figura 6.2: Aproximación a una función f (x) dada mediante un polinomio


Pn (x).

En general los polinomios se pueden representar por la expresión:

n
X
Pn (x) = ai Bi (x)
i=0
258 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

En donde, n es un entero no negativo, ai son los coeficientes del poli-


nomio y Bi (x) es una base (función de x) mediate la cual se genera el
polinomio que tiene n + 1 elementos.

La manera más común de escoger la base es:

B0 (x) = 1

B1 (x) = x

B2 (x) = x2

..
.

Bn (x) = xn

Por lo tanto la forma más común de representar el polinomio es:

n
X
Pn (x) = a i xi
i=0

Los polinomios son de gran importancia en la aproximación, debido


a que son fáciles de evaluar y aproximar uniformemente a funciones
continuas.

b) Racionales: Consiste en aproximar una función f (x) mediante dos


polinomios de grado n y m, Pn (x) y Qm (x), es decir:

Pn (x)
f (x) ≈
Qm (x)

Estas funciones son utilizadas para representar comportamientos matemáti-


cos que no tienen valores definidos en ciertos puntos, como se muestra
en la Figura 1.3.
La función f (x) de la Figura 1.3 no está definida en el punto xk .

c) Exponenciales: Consiste en aproximar una función f (x), de forma


que:
6.4. TIPOS DE FUNCIONES DE APROXIMACIÓN E INTERPOLACIÓN259

f (x)

f (x)

0 X
Xk

Figura 6.3: Gráfica de una Función Racional f (x) con valor no definido en
el punto xk .

n
X
f (x) ≈ ai ebi x
i=0

Estas funciones tienen la ventaja de que, tanto la función aproximante


como sus derivadas son semejantes, (ev ).

En la Figura 1.4 se muestra de manera comparativa el comportamiento


de una función exponencial f (x) y el de un polinomio P (x) al aproxi-
mar cierta cantidad de puntos.
d) Trigonométricas o Series de Fourier: Consiste en aproximar una
función f (x) utilizando funciones trigonométricas, de la forma:

n
X
f (x) = a0 + ai cos ix + bi sen ix
i=1

Estas funciones son utilizadas en la solución de ecuaciones diferen-


ciales, especialmente en los problemas de elasticidad.
260 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

f (x)

P(x) f (x)
Polinomio

Función exponencial

0 X

Figura 6.4: Ilustración del comportamiento de una función exponencial f (x)


y el de un polinomio P (x), pasando por puntos similares.

A continuación se estudiarán los Métodos de Aproximación e Interpo-


lación mencionados en esta introducción.

6.5. Interpolación Pura


Consiste en dados los puntos (xi ; f (xi )) con i = 0 : n, encontrar un
polinomio Pn (x) de forma que pase por todos estos puntos, es decir:

Pn (xi ) = f (xi ) (6.1)

Para todo i = 0 : n. Sea un polinomio:

n
X
Pn (x) = ai xi
i=0

En la Figura 1.5 se muestra un polinomio de tercer grado, P3 (x), que


pasa por el conjunto de puntos (xi ; f (xi )) pertenecientes a la función, f (x).
Haciendo cumplir el criterio de Interpolación Pura, dado por la ecuación
1.1, para todo i = 0 : n, se obtiene:
6.5. INTERPOLACIÓN PURA 261

f (x)

P3(x)
[x1, f (x1)]
. f (x)

.
[x ,f (x )] [x2,f (x2)]
. . [x ,f (x )]
3 3

0
X

Figura 6.5: Interpolación de la función f (x) mediante un polinomio de tercer


orden, P3 (x).

n
X
Pn (x0 ) = ai x0 i = f (x0 )
i=0

n
X
Pn (x1 ) = ai x1 i = f (x1 ) (6.2)
i=0
.. ..
. .
n
X
Pn (xn ) = ai xn i = f (xn )
i=0

Desarrollando las sumatorias en la expresión 1.2, se llega a un Sis-


tema de Ecuaciones Lineales de n ecuaciones por n incógnitas, en donde
a0 , a1 , a2 , . . . , an ; son las incógnitas.

Pn (x0 ) = a0 + a1 x0 + a2 x0 2 + . . . + an x0 n = f (x0 )

Pn (x1 ) = a0 + a1 x1 + a2 x1 2 + . . . + an x1 n = f (x1 ) (6.3)


..
.
Pn (xn ) = a0 + a1 xn + a2 xn 2 + . . . + an xn n = f (xn )
262 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

Representando el sistema 1.3 en forma matricial.


     
1 x0 x0 2 . . . x0 n   a0  
 f (x0 ) 

1 x1 2 n  
 
 
 

 x1 . . . x1    a 1 
   f (x1 ) 

1 x2 2 n
x2 . . . x2  ·  a2 f (x2 )
 =
 .. .. .. ..   ..  
 .. 
 (6.4)
. . . .  
 . 



 . 

2 n     

1 xn xn . . . xn an f (xn )
| {z }
[V]
En la ecuación matricial 1.4 [V ] es conocida como la Matriz de Vander-
monde, cuyo determinate es distinto de cero si xi 6= xj , ∀ i 6= j. Cuando el
determinante de [V ] es distinto de cero el sistema tiene solución única, esto
es, existe un único polinomio Pn (x), el cual pasa por todos los puntos dados.

Por consiguiente: si x1 6= x2 6= . . . 6= xn , teóricamente siempre hay


solución, pero si la matriz no está bien condicionada (los términos son muy
diferentes), puede no existir solución numérica. En estos casos es necesario
buscar otras técnicas para encontrar este polinomio único, sin resolver el
sistema anterior.

Estas técnicas consisten en escoger astutamente una base diferente a:


1, x, x2 , . . . , xn ; para generar el polinomio.

Una de las técnicas más utilizadas y que se estudiará luego es el Polinomio


Interpolante de Lagrange.

6.5.1. Observaciones del Método de Interpolación Pura


Todas las técnicas derivadas del criterio de interpolación pura, han per-
dido importancia debido a que, en la actualidad, las computadoras pueden
utilizar una gran cantidad de dı́gitos significativos minimizando el Error de
Redondeo (ver Capı́tulo 2). Como consecuencia, se han estudiado sólo las
técnicas más importantes ya que se utilizarán en el desarrollo de las fórmulas
de integración numérica.

En la mayorı́a de los casos, por la naturaleza del problema, no existe la


necesidad de crear un polinomio que pase exactamente por todos los puntos
tabulares, ya que estos pueden tener valores que difieran de los reales debido
a los errores inherentes.
6.5. INTERPOLACIÓN PURA 263

Las técnicas de interpolación pura presentan algunas desventajas:

a) Cuando se presentan problemas de aproximación en los cuales se dispone


de una gran cantidad de puntos, las técnicas de interpolación pura no
son recomendadas debido a la gran oscilación que presenta el poli-
nomio que pasa por todos estos puntos. Generalmente no se utiliza
polinomios de grado mayor a 5. Esto se ilustra en la Figura 1.6.

f (x)

. f (x)

.
. . P (x) (Polinomio
. Oscilante)

. .
X
0

Figura 6.6: Interpolación de una función, f (x), con siete puntos tabulares
mediante un polinomio, P (x), que es inconvenientemente oscilante alrededor
de f (x).

b) Los polinomios no se ajustan correctamente a los cambios bruscos de


pendiente, como se muestra en la Figura 1.7.

c) La mayor parte de los errores al aproximar se cometen en los contornos


del polinomio.

d) Los polinomios no permiten extrapolar; es decir, no son apropiados


para aproximar un valor de x que se encuentra fuera del intervalo de
los valores tabulados.
264 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

f (x) .

. . . .
P (x)
.

0
X

Figura 6.7: Aproximación de una función, f (x), que presenta un cambio


brusco de pendiente, mediante un polinomio, P (x).

6.5.2. Pseudocódigo de la Matriz de Vandermonde

for i = 1 : n
for j = 1 : n
V (i, j) = [x(i)]j−1
end
end

6.5.3. Ejemplo:

Ajustar la siguiente tabla a un polinomio utilizando el método de inter-


polación pura.
6.5. INTERPOLACIÓN PURA 265

i xi f (xi )
0 0 1
1 0,25 1,2840
2 0,5 1,6487
3 0,75 2,1170
4 1 2,7163

Solución

A continuación, utilizando el pseudocódigo de la Matriz de Vandermonde


dado en el subapartado 6.5.2., y resolviendo el sistema 1.4. Para el conjunto
de puntos dados en la última tabla, se obtiene:

     

 1 
 1 0 0 0 0 
 a0 


 
 1 0, 25 0, 0625 0, 01562 3, 906E −3   

 1, 2840     a1 
1, 6487 
= 1 0, 5 0, 25 0, 125 
0, 0625  · a2

 
 1 0, 75 0, 5625 0, 42187 0, 31641    

 2, 1170 
 
 a 
   3 
2, 7163 1 1 1 1 1 a4

Resolviendo el sistema, se obtiene:

a0 = 1

a1 = 1, 1179

a2 = −0, 0130

a3 = 0, 8764

a4 = −0, 2650

Finalmente, el polinomio de Interpolación pura obtenido para los puntos


dados en la última tabla es:

P4 (x) = 1 + 1, 1179x − 0, 0130x2 + 0, 8764x3 − 0, 2650x4


266 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

6.6. Polinomio Interpolante de Lagrange


La técnica de Lagrange escoge como base para generar el Polinomio
Interpolante, Pn (x).

n
Y (x − xj )
Li (x) =
(xi − xj ) (6.5)
j=1
j 6= i

Es decir, que:
n
X
Pn (x) = ai Li (x) (6.6)
i=0

Si se hace cumplir el criterio de Interpolación Pura, dado por la ecuación


1.1, para todo i = 1 : n, en el polinomio 1.6, se obtiene:
n
X
Pn (x0 ) = ai Li (x0 ) = f (x0 )
i=0

n
X
Pn (x1 ) = ai Li (x1 ) = f (x1 )
i=0
(6.7)
..
.

n
X
Pn (xn ) = ai Li (xn ) = f (xn )
i=0

Desarrollando las sumatorias en el sistema 1.7, se llega a:

Pn (x0 ) = a0 L0 (x0 ) + a1 L1 (x0 ) + . . . + an Ln (x0 ) = f (x0 )

Pn (x1 ) = a0 L0 (x1 ) + a1 L1 (x1 ) + . . . + an Ln (x1 ) = f (x1 )


(6.8)
..
.

Pn (xn ) = a0 L0 (xn ) + a1 L1 (xn ) + . . . + an Ln (xn ) = f (xn )


6.6. POLINOMIO INTERPOLANTE DE LAGRANGE 267

Reemplazando la ecuación 1.5 en cada uno de los polinomios del sistema


1.8, se obtiene:

0
z }| {
0
(x0 − x1 )(x0 − x2 ) . . . (x0 − xn ) (x0 − x0 )(x0 − x2 ) . . . (x0 − xn ) z}|{
Pn (x0 ) = a0 + a1 + ...
(x0 − x1 )(x0 − x2 ) . . . (x0 − xn ) (x1 − x0 )(x1 − x2 ) . . . (x1 − xn )
| {z }
1

0 1
z }| { z }| {
0
(x1 − x1 )(x1 − x2 ) . . . (x1 − xn ) (x1 − x0 )(x1 − x2 ) . . . (x1 − xn ) z}|{
Pn (x1 ) = a0 + a1 + ...
(x0 − x1 )(x0 − x2 ) . . . (x0 − xn ) (x1 − x0 )(x1 − x2 ) . . . (x1 − xn )

.
..

0
z }| {
0
(xn − x1 )(xn − x2 ) . . . (xn − xn ) z}|{ (xn − x0 )(xn − x1 ) . . . (xn − xn−1 )
Pn (xn ) = a0 + . . . +an
(x0 − x1 )(x0 − x2 ) . . . (x0 − xn ) (xn − x0 )(xn − x1 ) . . . (xn − xn−1 )
| {z }
1
(6.9)
Del sistema 1.9 se puede ver que:

Li (xj ) = 1 Para j = i
Y:

Li (xj ) = 0 Para j 6= i
Por lo que el sistema 1.9 se reduce a:

Pn (x0 ) = a0 = f (x0 )

Pn (x1 ) = a1 = f (x1 )

Pn (x2 ) = a2 = f (x2 ) (6.10)

..
.

Pn (xn ) = an = f (xn )
De la expresión 1.10 se tiene que se puede representar al Polinomio In-
terpolante Pn (x) como sigue:

Pn (x) = f (x0 )L0 (x) + f (x1 )L1 (x) + . . . + f (xn )Ln (x) (6.11)
268 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

El polinomio 1.11 puede ser reescrito de la siguiente manera:

n
X
Pn (x) = f (xi )Li (x) (6.12)
i=0

La ecuación 1.12 se conoce como el Polinomio Interpolante de Lagrange


para n + 1 puntos.

6.6.1. Observaciones del Polinomio Interpolante de Lagrange


La técnica de Lagrange es directa debido a que los coeficientes son reem-
plazados por los valores funcionales tabulados.

La expresión del polinomio interpolante de Lagrange es compleja y hace


difı́cil la ampliación del número de puntos utilizados para su construcción.

La fórmula del error para el polinomio de Lagrange es similar a la del


polinomio de Taylor. El polinomio de Taylor de grado n al rededor de x0
concentra toda la información conocida de x0 y tiene un término de error
de la forma:

f (n+1) (ξ)
Rn (x) = (x − x0 )n+1
(n + 1)!
El polinomio de Lagrange de grado n usa información en los diferentes
puntos x0 , x1 , . . . , xn y, en vez de (x − x0 )n+1 , su fórmula de error contiene
un producto de n + 1 factores:

n
Y
(x − xi )f (n+1) (ξ)
i=0
Rn (x) =
(n + 1)!

Con ξ ∈ (x0 , xn ) y x0 , x1 , . . . , xn ∈ [x0 , xn ].

Aunque la fórmula de error es un resultado teórico importante, su uso


práctico está restringido a funciones cuyas derivadas tengan cotas conocidas.
(Este es con frecuencia el caso de funciones tabuladas como las Funciones
Trigonométricas y Logarı́tmicas).
6.7. INTERPOLACIÓN POR MÍNIMOS CUADRADOS 269

6.7. Interpolación por Mı́nimos Cuadrados


Cuando se aproxima una función f (x) utilizando técnicas de Interpo-
lación Pura, se presentan algunas desventajas, como por ejemplo: el incre-
mento de la oscilación de los polinomios mientras mayor es su grado, los
polinomios no se ajustan correctamente a los cambios bruscos de pendiente,
etc. Es por esto, que en muchos casos es mejor utilizar métodos que sacri-
fiquen la exactitud con el fin de mejorar la suavidad del polinomio; es decir,
el polinomio no necesariamente debe pasar por todos los puntos, pero sı́, se
debe aproximar a todos ellos. Esto se ilustra en la Figura 1.8.

f (x)

. .
Q(x)
. . Exactitud

. .
P (x) Suavidad
. .

0 X

Figura 6.8: Comparación entre un polinomio, Q(x), que interpola exacta-


mente todos los puntos tabulares y otro, P (x), que aproxima a dichos puntos
ganando suavidad.

Uno de estos métodos es el de Mı́nimos Cuadrados que consiste en dados


los puntos (xi ; f (xi )) con i = 0 : m, encontrar un polinomio.
n
X
Pn (x) = ak xk (6.13)
k=0

Donde el polinomio 1.13 debe ser de grado n menor que m de modo que,
la sumatoria de los cuadrados de las diferencias entre los valores dados y los
valores del polinomio sea mı́nima. Sea:
270 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

m
X
Q= [Pn (xi ) − f (xi )]2 (6.14)
i=0

La ecuación 1.14 se puede expresar también de la siguiente manera:

m
X
Q(a0 , a1 , a2 , . . . , an ) = [a0 + a1 xi + a2 xi 2 + . . . + an xi n − f (xi )]2
i=0

Según el criterio de mı́nimos cuadrados, es necesario minimizar el valor


de Q, como se muestra en la Figura 1.9.

f (x) P (x)

d4
[x3,f(x3)]
d3 [x4,f(x4)]
m=4
d2

[x2,f(x2)]

d1
[x0,f(x0)]
d0
[x1,f(x1)]

0 X

Figura 6.9: Interpretación geométrica de la minimización cuadrática.

Para que esto se cumpla las derivadas parciales de Q con respecto a los
coeficientes a0 , a1 , . . . , an ; deben ser iguales a cero, por lo que, derivando la
ecuación 1.14 e igualando esta a cero, se tiene:
m
X
∂Q ∂Pn (xi )
= 2 [Pn (xi ) − f (xi )] =0 (6.15)
∂aj ∂aj
i=0

Para j = 0 : n. Ya la ecuación 1.15 está igualada a cero, la constante 2


puede eliminarse, quedando:
6.7. INTERPOLACIÓN POR MÍNIMOS CUADRADOS 271

X m
∂Q ∂Pn (xi )
= [Pn (xi ) − f (xi )] =0 (6.16)
∂aj ∂aj
i=0

La derivada parcial de Pn (xi ) con respecto a aj es:

∂Pn (xi )
= xi j (6.17)
∂aj

Por lo que reemplazando la ecuación 1.17 en la expresión 1.16, se obtiene:

X m X m
∂Q
= Pn (xi )xi j − f (xi )xi j = 0 (6.18)
∂aj
i=0 i=0

Ahora, reemplazando el polinomio 1.13 en la expresión 1.18,

m
" n # m
∂Q X X X
= a k xi k xi j − f (xi )xi j = 0 (6.19)
∂aj
i=0 k=0 i=0

Reordenando las sumatorias en la expresión 1.19,

n
"m # m
∂Q X X X
k+j
= ak xi − f (xi )xi j = 0 (6.20)
∂aj
k=0 i=0 i=0

Finalmente, despejando en la expresión 1.20 la sumatoria que contiene


f (xi )xi j , se llega a:

n
"m # m
X X X
k+j
ak xi = f (xi )xi j (6.21)
k=0 i=0 i=0

Para j = 0 : n. La ecuación 1.21 lleva a un sistema de n ecuaciones con


n incógnitas (Sistema de Ecuaciones Lineales), donde a0 , a1 , . . . , an son las
incógnitas, esto es:
272 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

 m
X m
X Xm   Xm 
   
xi 1 xi 2 xi n    
m+1 ...  a0 
 
 f (xi ) 

    
 
 

 i=0 i=0 i=0    
 
 i=0 

   










 m m m m  
 
 
 m 

X 1 X X X  
 
 
 X 

 xi xi 2 xi 3 ... xi n+1     f (xi ) · xi 1 
   
 a 








 i=0   1   
 i=0 i=0 i=0   







i=0 


     
 m m m m    
 
 m 

X 2 X X X 
n+2  ·
X
 xi xi 3 xi 4 ... xi a2 = f (xi ) · xi 2
     
 i=0 i=0 i=0 i=0   






 i=0



      
    
  

   
 .

 
 




 . .. .. ..    
 
 .. 

 ..   ..   
 . . .    
 
 . 

    
 
 

   

 







X m m m m  
 
  m 
 X X X
2n     
  X




xi n xi n+1 xi n+2 ... xi an 
 f (xi ) · xi n 

i=0 i=0 i=0 i=0 i=0
(6.22)
Es posible construir el sistema 1.22 de una forma más sencilla, para lo
que se multiplica la Matriz de Vandermonde transpuesta, [V ]T , por esta
última en su forma original, [V ], ası́:

       
1 1 1 ... 1 1 x0 x0 2 ... x0 n  a0   f (x0 ) 

 
 
 

      
 
 

       
 x0 x1 x2 ... xm  1 x1 x1 2 ... x1  
n  a1  
 f (x1 ) 

      
 
 

     





 

 2        

 x0 x1 2 x2 2 ... xm 2  1 x2 x2 2 ... x2 n  a2 f (x2 )
 ·  · =
       
     
  
  

 . .. .. ..   . .. .. ..    .. 




 .. 


 .. . . .  . .  
  

.   . 

  . . .    
     





 


  
 




x0 n x1 n x2 n ... xm n 1 xm xm 2 . . . xm n an f (xm )
| {z } | {z }
[V ]T [V]
(6.23)
La matriz resultante de multiplicar [V ]T por [V ], en el sistema 1.23, es
igual a la matriz de Mı́nimos Cuadrados dada por el sistema 1.22.

6.7.1. Observaciones del Método de Mı́nimos Cuadrados


Si se utiliza el Método de Mı́nimos Cuadrados para aproximar m puntos,
se tiene que:

a) La solución es única cuando el grado del polinomio es menor que m.

b) Existen infinitas soluciones cuando el grado del polinomio es mayor que


m.
6.7. INTERPOLACIÓN POR MÍNIMOS CUADRADOS 273

c) El método se convierte en interpolación pura cuando el grado del poli-


nomio es igual a m.

Aun cuando el Método de Mı́nimos Cuadrados utilizando polinomios es


el procedimiento más frecuentemente utilizado, ocasionalmente es apropiado
suponer que los datos están relacionados exponencialmente. Esto requiere
que la función aproximante sea de la forma:

f (x) = b eax (6.24)


Ó:

f (x) = b xa (6.25)
El método que usualmente se sigue al utilizar este tipo de funciones,
consiste en sacar el logaritmo de la ecuación aproximante, ası́:

Para la ecuación 1.24:

ln f (x) = ln b + ax
Para la ecuación 1.25:

ln f (x) = ln b + a ln x
En cualquiera de estos casos el planteamiento lleva a un problema lineal
y las soluciones para ln b y a pueden encontrarse mediante el Método de
Mı́nimos Cuadrados usando polinomios.

Para mejorar el ajuste del polinomio de Mı́nimos Cuadrados, es posible


ponderar la confianza de unos puntos sobre otros; es decir, el polinomio se
aproxima más a los puntos de mayor confianza. Esto se logra introduciendo
pesos para cada uno de los puntos dados, de la siguiente forma:

m
X
Q= Wi [Pn (xi ) − f (xi )]2 (6.26)
i=0

La ecuación 1.26 se puede reescribir también en función de la distancia,


d, entre f (xi ) y Pn (xi ) de la siguiente forma:

Q = Wi d1 2 + W2 d2 2 + . . . + Wm dm 2
274 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

El polinomio que se obtiene mediante el Método de Mı́nimos Cuadrados,


cumple con el criterio de minimizar la sumatoria de los cuadrados de las
diferencias entre los valores dados y los valores del polinomio, pero esto no
significa que el ajuste será bueno, razón por la que es necesario medir la
bondad de ajuste mediante técnicas estadı́sticas.

Al igual que en el caso de la matriz general de interpolación pura, la


matriz de Mı́nimos Cuadrados no siempre está bien condicionada, por con-
siguiente, hay que buscar métodos alternativos para formar el mismo poli-
nomio y evitar que los efectos de redondeo incidan en la solución.

6.7.2. Ejemplo:
Ajustar la siguiente tabla a un polinomio de primer grado y a uno de
segundo grado utilizando el Método de los Mı́nimos Cuadrados.

i xi f (xi )
0 0 1
1 0,25 1,2840
2 0,5 1,6487
3 0,75 2,1170
4 1 2,7163

Ajuste a un Polinomio de Primer Grado

El polinomio al que se quiere ajustar la tabla es de la forma:

P1 (x) = a0 + a1 x

De la tabla se tiene que m = 4. Entonces, armando el sistema matricial


de Mı́nimos Cuadrados correspondiente, se tiene que:
 m
    m 
X 
 
 
 X 

1
m + 1 xi   
 a0





 f (xi ) 


   
 
 

 i=0  i=0
 · =
m 
X X  
m 






 Xm 


 x1 2  
 
 

i xi a
 1 
    f (xi )xi 1 

i=0 i=0 i=0

Reemplazando los datos de la tabla en el sistema.


6.7. INTERPOLACIÓN POR MÍNIMOS CUADRADOS 275

     
5  a0   8, 766 
2, 5
 · =
   
2, 5 1, 875 a1 5, 4494
Ahora, resolviendo el sistema mediante cualquier Método de Solución de
Sistemas de Ecuaciones Lineales (Ver Capı́tulo 4), se obtienen los coeficientes
del polinomio de primer grado que aproximará a la función tabular dada.
Estos son:

a0 = 0, 9001

a1 = 1, 7062
Entonces, el polinomio aproximante de primer grado buscado, es:

P1 (x) = 0, 9001 + 1, 7062x

Cálculo del Error Cometido en la Aproximación

El error cometido en la aproximación de cada punto de la tabla mediante


el polinomio de primer grado se muestra en la siguiente tabla:

i xi P1 (xi ) |f (xi ) − P2 (xi )|2


0 0 0,9001 9,98001E −3
1 0,25 1,32665 1,81902E −3
2 0,5 1,7532 0,01092
3 0,75 2,17975 3,937562E −3
4 1 2,6063 0,0121
P
0,0387565

Ajuste a un Polinomio de Segundo Grado


El polinomio al que se quiere ajustar la tabla es de la forma:

P2 (x) = a0 + a1 x + a2 x2

De la tabla se tiene que m = 4. Entonces, armando el sistema matricial


de Mı́nimos Cuadrados correspondiente, se tiene que:
276 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN


Xm Xm
    X m

1 2  a 0  
 

m + 1 xi xi    
 
 f (xi ) 

  
 
 
 

 i=0 i=0  
 
 
 i=0 

  











m  
 
 
 

X Xm m
X      Xm 
 x1 xi 2 3
xi  · f (xi )xi 1
 i a1 =
 i=0     
 i=0 i=0  
 
 
 i=0 

  











m     
X Xm Xm  







 Xm 


 x2 3 4  
 
 

i xi xi     f (xi )xi 2 

i=0 i=0 i=0
a 2 i=0

Reemplazando los datos de la tabla en el sistema.


     
5 2, 5 1, 875 
 a0 
 
 8, 766 

   
 
 

     
 2, 5 1, 875 1, 5625·
   1  =  5, 4494
a

    
  


  
  

1, 875 1, 5625 1, 3828 a2 4, 3995
Ahora, resolviendo el sistema mediante cualquier Método de Solución de
Sistemas de Ecuaciones Lineales (Ver Capı́tulo 4), se obtienen los coeficientes
del polinomio de segundo grado que aproximará a la función tabular dada.
Estos son:

a0 = 1, 0049

a1 = 0, 8676

a2 = 0, 8386

Entonces, el polinomio aproximante de segundo grado buscado, es:

P2 (x) = 1, 0049 + 0, 8676x + 0, 8386x2

Cálculo del Error Cometido en la Aproximación

El error cometido en la aproximación de cada punto de la tabla mediante


el polinomio de segundo grado se muestra en la siguiente tabla:
6.7. INTERPOLACIÓN POR MÍNIMOS CUADRADOS 277

i xi P2 (xi ) |f (xi ) − P2 (xi )|2


0 0 1,0049 2,401E −5
1 0,25 1,2742 9,604E −5
2 0,5 1,6483 1,6E −7
3 0,75 2,1273 1,0609E −4
4 1 2,7111 2,704E −5
P
2,5334E −4 ,

Los errores producidos al utilizar los polinomio de primer y segundo


grado calculados mediante el Método de los Mı́nimos Cuadrados son los
mı́nimos que pueden producirse al utilizar polinomios de estos grados para
aproximar los valores dados en la tabla.

6.7.3. Ejemplo:
Ajustar los puntos de la siguiente tabla mediante una función exponencial
utilizando el Método de los Mı́nimos Cuadrados.

i xi f (xi )
0 1 5,10
1 1,25 5,79
2 1,50 6,53
3 1,75 7,45
4 2 8,46

Solución
La función exponencial serı́a:

y = a ebx

La cual se puede linealizar tomando logaritmos neperianos, ası́:

ln y = ln(a ebx )

Operando en la última ecuación, se llega a:

ln y = ln a + bx

De donde:
278 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

a0 = ln a

a1 = b
Como se tiene un polinomio de primer grado, entonces la matriz de
Mı́nimos Cuadrados serı́a:
 m    
m


 X 
 X

 


 f (xi ) 
m + 1
 xi    a 


 

  
 0 

 i=0 
 i=0   

= 
  · 

 m
X 
 Xm m
X  
 


 
f (xi )xi   x x 2  
 a 


 
 i i 
 1 

i=0 i=0 i=0

Conceptualmente se tiene que:


m
X
| ln a + bxi − ln[f (xi )]|2 → mı́nimo
i=0

Modificando los datos del sistema para este caso, se obtiene que:
 m   m
  

 X 
 X 
 


 Ln [f (xi )] 
 m + 1 xi    

 
   
 a0 


 i=0   i=0   
=
 m
·
 

 m
X 
 X m
X   


 
  2 
 


 
Ln [f (xi )]xi  x i x i 
 a1 

   
i=0 i=0 i=0

Sustituyendo los valores en el sistema, se llega a:


     
 9, 40534  5 7, 5  a0 
= ·
   
14, 42408 7, 5 11, 875 a1
Resolviendo este último sistema matricial, se obtiene:

a0 = 1, 1225

a1 = 0, 505712
Ya que:

a0 = ln a
6.8. SPLINE CÚBICO O TRAZADOR CÚBICO 279

Entonces:

ln a = 1, 1225
Tomando el exponencial de esta última ecuación.

a = e(1,1225)
Finalmente, se llega a:

a = 3, 0725
Además, se tiene que:

b = 0, 505712
Finalmente, la función que se busca es:

y = 3, 0725 e0,505712 x

Cálculo del Error Cometido en la Aproximación

El error cometido en la aproximación de cada punto de la tabla mediante


una función exponencial se muestra en la siguiente tabla:

i xi P2 (xi ) |f (xi ) − P2 (xi )|2


0 1 5,09471 2,79841E −5
1 1,25 5,78132 7,53424E −5
2 1,50 6,56045 9,272025E −4
3 1,75 7,44458 2,93764E −5
4 2 8,44788 1,468944E −4
P
1,2067998E −3
Este es el mı́nimo error que puede ser cometido por una función expo-
nencial, al aproximar el conjunto de puntos dados en este ejercicio.

6.8. Spline Cúbico o Trazador Cúbico


En los métodos anteriormente desarrollados la preocupación fue la apro-
ximación de funciones arbitrarias en intervalos cerrados utilizando poli-
nomios. Aunque estos métodos son apropiados en muchas circunstancias,
280 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

la naturaleza oscilatoria de los polinomios de grado mayor y la propiedad de


que una fluctuación sobre una porción pequeña del intervalo puede inducir
fluctuaciones muy grandes sobre el rango entero, restringen su uso cuando se
aproximan muchas de las funciones que surgen en situaciones fı́sicas reales.

Un enfoque alternativo que puede usarse para obtener funciones inter-


polantes, consiste en dividir el intervalo en una colección de subintervalos y
construir un polinomio aproximante diferente (generalmente) en cada subin-
tervalo. La aproximación con funciones de este tipo se llama Aproximación
Polinómica Segmentaria. A continuación, se ilustra en la Figura 1.10 la Apro-
ximación Segmentaria mediante polinomios de primer orden (rectas).

f (x)

.
. .
. .
. . . .
. f(Xj)

f(Xj+2)
f(X1)
f(Xo) f(Xn)

0 Xo X1 Xj Xj+1 Xj+2 Xn-1 Xn


X

Figura 6.10: Aproximación Segmentaria de un conjunto de puntos utilizando


polinomios de primer orden (rectas).

La desventaja de enfocar un problema de aproximación usando funciones


de este tipo es que en cada uno de los extremos de los subintervalos, no hay
ninguna seguridad de diferenciabilidad, lo cual, en un contexto geométrico,
significa que la función interpolante no es “lisa”, en esos puntos. Frecuente-
mente, por las condiciones fı́sicas, es claro que se requiere esta condición y
en estos casos la función aproximante debe ser continuamente diferenciable.
6.8. SPLINE CÚBICO O TRAZADOR CÚBICO 281

Un procedimiento que se podrı́a seguir es utilizar polinomios segmenta-


rios S0 , S1 , . . . , Sn−1 ; para aproximar la función en los subintervalos [x0 , x1 ]
; [x1 , x2 ]; . . . ; [xn−1 , xn ]; respectivamente, de forma que la derivada del poli-
nomio Sj en el punto xj+1 sea igual a la derivada del polinomio Sj+1 en el
punto xj+1 . A este tipo de procedimientos se les conoce con el nombre de
Métodos de Splines.

Por ejemplo, si se conoce los valores de f (x) y f 0 (x) en cada uno de los
puntos x0 , x1 , x2 , . . . , xn ; se podrı́a utilizar un polinomio de grado 3 (Poli-
nomio de Hermite de Grado 3) en cada uno de los subintervalos [x0 , x1 ]; [x1 , x2 ];
. . . ; [xn−1 , xn ]; para obtener una función que sea continuamente diferencia-
ble en el intervalo [x0 , xn ], como se puede ver en la Figura 1.11.

f (x)

.
.
Sj
.
. .
. .
Sj+2

.
Sj+1

So
S1

f(Xj)
Sn-1
.
f(Xj+2)
f(X1) f(Xn)
f(Xo)

0 X
Xo X1 Xj Xj+1 Xj+2 Xn-1 Xn

Figura 6.11: Aproximación Segmentaria de un conjunto de puntos mediante


la utilización de polinomios de tercer grado, en la cual, las dos primeras
derivadas de dichos polinomios son iguales en el punto xj común a dos
polinomios seguidos (Splines Cúbicos).

Para que lo descrito en el párrafo anterior se cumpla, deben darse las


siguientes condiciones.
282 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

6.8.1. Condiciones
a) S es un polinomio cúbico, denotado Sj , en el subintervalo [xj , xj+1 ] para
j = 0 : n − 1.

b) S(xj ) = f (xj ) para cada j = 0 : n.

c) Sj+1 (xj+1 ) = Sj (xj+1 ) para cada j = 0 : n − 2.


0
d) Sj+1 (xj+1 ) = Sj0 (xj+1 ) para cada j = 0 : n − 2.
00 (x
e) Sj+1 00
j+1 ) = Sj (xj+1 ) para cada j = 0 : n − 2.

f ) Se satisface una de las dos siguientes condiciones de Frontera:

f.1) S 00 (x0 ) = S 00 (xn ) = 0 (Frontera Libre).


f.2) S 0 (x0 ) = f 0 (x0 ) y S 0 (xn ) = f 0 (xn ) (Frontera Sujeta).

Aunque los trazadores cúbicos pueden definirse con otras condiciones de


frontera, las condiciones dadas son suficientes. Cuando se satisface las condi-
ciones de frontera libre, el trazador se llama Trazador Natural y su gráfico se
aproxima a la forma que tomarı́a una varilla larga flexible si se forzara a pasar
por cada uno de los puntos de los datos [x0 , f (x0 )]; [x1 , f (x1 )]; . . . ; [xn , f (xn )].

En general, las condiciones de Frontera Sujeta llevan a aproximaciones


más exactas ya que incluyen más información acerca de la función; sin embar-
go, para que este tipo de condición a la frontera se implemente, es necesario
tener, ya sea los valores de la derivada en los extremos, o una aproximación
precisa de estos valores.

Para construir el interpolante de trazados para una función f (x) dada,


se pueden aplicar las condiciones de la definición a los polinomios cúbicos.

Sj (x) = aj + bj (x − xj ) + cj (x − xj )2 + dj (x − xj )3 (6.27)

Para cada j = 0 : n − 1. Claramente, aplicando la condición a) en el


polinomio 1.27 se deduce que:

Sj (xj ) = aj = f (xj ) (6.28)


Para cada j = 0 : n. Y si se aplica la condición c) en la ecuación 1.28,
se obtiene:
6.8. SPLINE CÚBICO O TRAZADOR CÚBICO 283

aj+1 = Sj+1 (xj+1 ) = Sj (xj+1 ) = f (xj+1 ) (6.29)


Aplicando también la condición c) en el polinomio 1.27

aj+1 = aj + bj (xj+1 − xj ) + cj (xj+1 − xj )2 + dj (xj+1 − xj )3 (6.30)

Para cada j = 0 : n − 2. Como el término (xj+1 − xj ) del polinomio 1.30


se utilizará repetidamente en este desarrollo, es conveniente introducir una
notación más sencilla, ası́:

hj = xj+1 − xj (6.31)
Para cada j = 0 : n − 1. Si además se define:

an = f (xn ) (6.32)
Sustituyendo las ecuaciones 1.31 y 1.32 en el polinomio 1.30.

aj+1 = aj + bj hj + cj hj 2 + dj hj 3 (6.33)
El polinomio 1.33, se satisface para cada j = 0 : n − 1. De una manera
similar, se define:

bn = S 0 (xn ) (6.34)
Ahora, derivando el polinomio 1.27, se tiene que:

Sj0 (x) = bj + 2cj (x − xj ) + 3dj (x − xj )2 (6.35)


Reemplazando la ecuación 1.34 en el polinomio 1.35, luego, esto implica
que:

Sj0 (xj ) = bj (6.36)


Para cada j = 0 : n − 1. Sustituyendo una vez mas la ecuación 1.34 y
aplicando conjuntamente la condición d) en el polinomio 1.35, se llega a:

bj+1 = bj + 2cj hj + 3dj hj 2 (6.37)


Para cada j = 0 : n−1. Otra relación entre los coeficientes de Sj se puede
obtener derivando por segunda vez el polinomio 1.27, de donde se obtiene:

Sj00 (x) = 2cj + 6dj (x − xj ) (6.38)


284 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

Y definiendo:

S 00 (xn )
cn = (6.39)
2
Ahora, aplicando la condición e) y reemplazando 1.39 en el polinomio
1.38.

cj+1 = cj + 3dj hj (6.40)

Para cada j = 0 : n−1. Despejando dj de la ecuación 1.40 y sustituyendo


este valor en las ecuaciones 1.33 y 1.37, respectivamente, se obtienen las dos
siguientes nuevas ecuaciones:

h2
aj+1 = aj + bj hj + (2cj + cj+1 ) (6.41)
3
Y:

bj+1 = bj + hj (cj + cj+1 ) (6.42)

Para cada j = 0 : n − 1. La relación final que involucra a los coeficientes


se puede obtener despejando bj de la ecuación 1.41, ası́:

1 hj
bj = (aj+1 − aj ) − (2cj + cj+1 ) (6.43)
hj 3
Y luego, con una reducción de los ı́ndices en la ecuación 1.43, ası́:

1 hj−1
bj−1 = (aj − aj−1 ) − (2cj−1 + cj ) (6.44)
hj−1 3
Si en 1.42 se hace que el ı́ndice j se reduzca también en uno, entonces:

bj = bj−1 + hj−1 (cj−1 + cj ) (6.45)

Sustituyendo 1.43 y 1.44 en 1.45 y operando, se llega a:

3 3
hj−1 cj−1 + 2(hj−1 + hj )cj + hj cj+1 = (aj+1 − aj ) − (aj − aj−1 )
hj hj−1

(6.46)
6.8. SPLINE CÚBICO O TRAZADOR CÚBICO 285

Para cada j = 1 : n − 1. Este sistema tiene como incógnitas sólo a cj , ya


que los valores de hj y aj están dados por el espaciamiento entre los puntos
xj y los valores de f (xj ) (ecuaciones 1.31 y 1.32).

Nótese que una vez que se conoce los valores de cj , encontrar las constan-
tes restantes bj y dj , es sencillo (se sustituyen los valores cj en las ecuaciones
1.43 y 1.40, respectivamente), con estos datos se construyen inmediatamente
los polinomios cúbicos Sj (ecuación 1.27).

La mayor pregunta que surge en conexión con esta construcción es si


los valores de cj pueden ser encontrados utilizando el sistema de ecuaciones
1.46, y si ası́ es, si estos valores son únicos.

Los siguientes teoremas indican que, cuando cualquiera de las condiciones


de frontera dadas en la condición f ) de la definición, se imponen, la respuesta
a ambas preguntas es afirmativa.
Teorema 6.8.1 + Si f (x) es una función definida en [a, b]; entonces f (x)
tiene un único interpolante de trazador natural, o sea un único interpolante
de trazador que satisface las condiciones de frontera libre:

S 00 (a) = S 00 (b) = 0 (6.47)


Con la notación usual a = x0 y b = xn , las condiciones de frontera dadas
por la expresión 1.47 en este caso implican que la ecuación 1.39 se reescriba
de la siguiente manera:

S 00 (xn )
cn = =0 (6.48)
2

Además, haciendo que en el polinomio 1.38 xj = x0 y aplicando en éste


las condiciones dadas en la expresión 1.47, se obtenga:

S 00 (x) = 2c0 + 6d0 (x − x0 ) = 0 (6.49)


Por lo que, evaluando el polinomio 1.49 en el punto a = x0 , se llega a
que:

c0 = 0 (6.50)
286 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

Las ecuaciones 1.46, 1.48 y 1.50 producen un sistema lineal descrito por
la ecuación matricial [A] · {x} = {B}, en donde [A] es una matriz de (n + 1)
por (n + 1) dada a continuación por la expresión 1.51.
 
1 0 0 ··· ··· 0
 h0 2(h0 + h1 ) h1 
 .. 
 0 h1 2(h1 + h2 ) h2 . 
 
 
 
 .. 
 . 0 
 hn−2 2(hn−2 + hn−1 ) hn−1

0 ··· ··· 0 0 1
(6.51)
Además, {B} y {x} están dados por:
 
 0 

 


 


 


 3 3 


 (a2 − a1 ) − (a1 − a0 ) 


 h1 h0 


 


 

..
{B} = .

 


 


 


 3 3 


 (an − an−1 ) − (an−1 − an−2 ) 


 hn−1 hn−2 


 


 

 
0
Y:
 

 c0 


 


 


 

 1 
 c 
{x} =

 .. 


 . 


 


 


 

cn
Por otro lado, la matriz [A] (expresión 1.51) es Diagonal Dominante, por
lo tanto, el sistema lineal tiene una solución única para c0 , c1 , . . . , cn .
Teorema 6.8.2 Si f (x) es una función definida en el intervalo [a, b]; f (x)
tiene un único interpolante de trazador que satisface las condiciones de fron-
tera sujeta:
6.8. SPLINE CÚBICO O TRAZADOR CÚBICO 287

S 0 (a) = f 0 (a) (6.52)

Y:

S 0 (b) = f 0 (b) (6.53)

Utilizando el hecho de que a = x0 , y evaluando la ecuación 1.36 en este


punto, se tiene que:

S 0 (a) = S 0 (x0 ) = b0 (6.54)

Y sustituyendo la expresión 1.54 o para j = 0 en la ecuación 1.43, se


deduce que:

a1 − a0 h0
f 0 (a) = − (2c0 + c1 ) (6.55)
h0 3

Operando en 1.55, se obtiene:

3
2h0 c0 + h0 c1 = (a1 − a0 ) − 3f 0 (a) (6.56)
h0

Luego, utilizando el hecho de que b = xn , evaluando la ecuación 1.36 en


este punto y a su vez reemplazando esta en la ecuación 1.45, se llega a:

f 0 (b) = bn = bn−1 + hn−1 (cn−1 + cn )

Por lo que la ecuación 1.43 para j = n − 1, implica que:

an − an−1 hn−1
f 0 (b) = − (2cn−1 + cn ) + hn−1 (cn−1 + cn ) (6.57)
hn−1 3

Operando en la ecuación 1.57.

an − an−1 hn−1
f 0 (b) = + (cn−1 + 2cn ) (6.58)
hn−1 3
Ahora, ordenando de manera conveniente la ecuación 1.58, finalmente se
obtiene:
288 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

3
hn−1 cn−1 + 2hn−1 cn = 3f 0 (b) − (an − an−1 ) (6.59)
hn−1

Las ecuaciones 1.46, 1.56 y 1.59 determinan el sistema [A]{x} = {B},


en donde [A] es una matriz de (n + 1) por (n + 1) dada a continuación por
la expresión 1.60.

 
2h0 h0 0 ··· ··· 0
 h0 2(h0 + h1 ) h1 
 .. 
 0 h1 2(h1 + h2 ) h2 . 
 
 
 
 .. 
 . 0 
 hn−2 2(hn−2 + hn−1 ) hn−1

0 ··· ··· 0 hn−1 2hn−1
(6.60)
Además, {B} y {x} están dados por:

 

 c0 


 


 


 


 c1 

{x} =

 .. 


 . 


 


 


 

cn

Y:
6.8. SPLINE CÚBICO O TRAZADOR CÚBICO 289

 
 3 


 (a1 − a0 ) − 3f 0 (a) 



 h0 


 


 


 3 3 


 (a2 − a1 ) − (a1 − a0 ) 


 h1 h0 


 


 

 
..
{B} = .

 


 


 


 3 3 


 (an − an−1 ) − (an−1 − an−2 ) 


 hn−1 hn−2 


 


 


 3 


 

 3f 0 (b) − (an − an−1 ) 
hn−1

Esta matriz [A] es también Diagonal Dominante, por lo tanto el sistema


lineal tiene una solución única para c0 , c1 , . . . , cn .

Como se estudió ya, para utilizar en la aproximación de una función f ,


dada, un Trazador Cúbico de Frontera Sujeta; es necesario conocer el valor
de las derivadas de dicha función en los puntos a = x0 y xn del intervalo. En
caso de no conocer estos valores, se puede realizar una primera aproximación
de f utilizando un Trazador Cúbico de Frontera Libre, y una vez obtenidas
las funciones de aproximación proceder con el cálculo analı́tico o numérico
de las derivadas de S0 y Sn−1 evaluadas en a y b, respectivamente. Con
esto se dispone de un valor aproximado de f 0 en los puntos requeridos, a
continuación, se puede utilizar un Trazador Cúbico de Frontera Sujeta para
la aproximación de f , con el cual se obtendrá una mejor aproximación de la
función que simplemente utilizando un Trazador Cúbico de Frontera Libre.

El inconveniente que tiene la realización del proceso anteriormente de-


scrito, es que este conlleva un mayor coste computacional, que puede ser
justificado o no de acuerdo a la calidad de la aproximación requerida en
cada caso.

6.8.2. Error de la Aproximación con un Trazador Cúbico


El siguiente teorema describe un método de cálculo para el error pro-
ducido al aproximar una función cualquiera mediante un Trazador Cúbico
de Frontera Sujeta.
290 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

Teorema 6.8.3 Sea f ∈ C 4 [a, b] con valor máximo en el intervalo, |f (4) (x)| ≤
M . Si S es el único interpolante cúbico de trazador de f con respecto a los
nodos a = x0 < x1 < . . . < xn = b, que satisface las condiciones:

S 0 (a) = f 0 (a)

Y:

S 0 (b) = f 0 (b)

Entonces:

5M
máx |f (x) − S(x)| ≤ máx (xj+1 − xj )4
a≤x≤b 384 0≤j≤n−1

6.8.3. Ejemplo:
Ajustar la siguiente tabla a un trazador cúbico utilizando condiciones de
frontera libre.

j xi f (xi )
0 0 1
1 0,25 1,2840
2 0,5 1,6487
3 0,75 2,1170
4 1 2,7163

Solución

De acuerdo con la tabla, se tiene que n = 4, por lo que:

n−1=3

Y:

n+1=5

Por lo tanto, se tienen 3 trazadores cúbicos. Entonces, la matriz [A]


requerida para la aproximación de la función tabular mediante trazadores
cúbicos de frontera libre, es:
6.8. SPLINE CÚBICO O TRAZADOR CÚBICO 291

 
1 0 0 0 0
 
 
h0 2(h0 + h1 ) h1 0 0
 
 
 

[A] =  0 h1 2(h1 + h2 ) h2 0 
 
 
0 0 h2 2(h2 + h3 ) h3 
 
 
0 0 0 0 1

Y el vector {B} es:


 

 0 


 


 


 3 3 


 (a2 − a1 ) − (a1 − a0 ) 


 


 h1 h0 


 


 3 

3
{B} = (a3 − a2 ) − (a2 − a1 )

 h2 h1 


 


 


 3 3 


 (a − a3 ) − (a3 − a2 ) 


 h3 4 h2 


 


 


 

0

De la ecuación 1.32, se tiene que:

aj = f (xj )

Y de la ecuación 1.31:

hj = xj+1 − xj

En la siguiente tabla se muestran los valores obtenidos para aj y hj .

j aj hj
0 1 0,25
1 1,2840 0,25
2 1,6487 0,25
3 2,1170 0,25
4 2,7163
292 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

Sustituyendo los valores en la matriz [A] y en el vector {B}, el sistema


queda:

     
 0  1 0 0 0  0 c0 

 
  

 
   
 


 
   
 



 0, 9684 


0, 25
 1 0, 25 0 0  
 

 c1 




 
   
 

     
1, 2432 
= 0 0, 25 1 0, 25 
0 · c2

 
   
 


 
   
 


 
  0  

 1, 572 
  0 0, 25 1 0, 25



 c3 



 
   
 


 
 
 

   
0 0 0 0 0 1 c4

Resolviendo el sistema, se obtiene:

c0 = 0

c1 = 0, 794657

c2 = 0, 694971

c3 = 1, 398257

c4 = 0

En la siguiente tabla, se muestran los valores obtenidos de las ecuaciones


1.43 y 1.40, respectivamente, para bj y dj .

j hj cj bj dj aj
0 0,25 0 1,00356 1,05946 1
1 0,25 0,7946 1,4092 -0,13293 1,2840
2 0,25 0,6949 1,69807 0,7033 1,6487
3 0,25 1,3982 2,51371 -1,86426 2,1170
4 0 2,7163

Entonces las ecuaciones de los trazadores cúbicos serı́an:


6.8. SPLINE CÚBICO O TRAZADOR CÚBICO 293

S0 = 1 + 1, 00356x + 1, 05946x3

S1 = 1, 2840 + 1, 4092(x − 0, 25)

+0, 7946(x − 0, 25)2 − 0, 13293(x − 0, 25)3

S2 = 1, 6487 + 1, 69807(x − 0, 5)

+0, 6949(x − 0, 5)2 + 0, 7033(x − 0, 5)3

S3 = 2, 1170 + 2, 51371(x − 0, 75)

+1, 3982(x − 0, 75)2 − 1, 86426(x − 0, 75)3

El gráfico de la interpolación con trazadores cúbicos entre los puntos


dados en este ejemplo se muestra en la Figura 1.12.

2.8

2.6

2.4

2.2

2
f(x)

1.8

1.6

1.4

1.2

0.8
−0.2 0 0.2 0.4 0.6 0.8 1 1.2
x

Figura 6.12: Gráfico de la interpolación de los cinco puntos dados en el


ejemplo mediante el método de los trazadores cúbicos (Splines).
294 CAPÍTULO 6. APROXIMACIÓN E INTERPOLACIÓN

El gráfico de la Figura 1.12 fue obtenido mediante la realización de un


programa de Trazadores Cúbicos de Frontera Libre realizado en MATLAB,
en el que se puede analizar los detalles del comportamiento e implementación
de este poderoso método de Interpolación.

Вам также может понравиться