Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Interpolación
Con frecuencia se encontrará con que tiene que estimar valores intermedios entre datos
definidos por puntos. El método más común que se usa para este propósito es la interpola-
ción polinomial. Recuerde que la fórmula general para un polinomio de n-ésimo grado es
f(x) = a0 + a1x + a2x2 + · · · + anxn (18.1)
Dados n + 1 puntos, hay uno y sólo un polinomio de grado* n que pasa a través de todos
los puntos. Por ejemplo, hay sólo una línea recta (es decir, un polinomio de primer gra-
do) que une dos puntos (figura 18.1a). De manera similar, únicamente una parábola une
un conjunto de tres puntos (figura 18.1b). La interpolación polinomial consiste en de-
terminar el polinomio único de n-ésimo grado que se ajuste a n + 1 puntos. Este polino-
mio, entonces, proporciona una fórmula para calcular valores intermedios.
Aunque hay uno y sólo un polinomio de n-ésimo grado que se ajusta a n + 1 puntos,
existe una gran variedad de formas matemáticas en las cuales puede expresarse este
polinomio. En este capítulo describiremos dos alternativas que son muy adecuadas para
implementarse en computadora: los polinomios de Newton y de Lagrange.
FIGURA 18.1
Ejemplos de interpolación polinomial: a) de primer grado (lineal) que une dos puntos, b) de
segundo grado (cuadrática o parabólica) que une tres puntos y c) de tercer grado (cúbica)
que une cuatro puntos.
a) b) c)
* De hecho se puede probar que dados n + 1 puntos, con abscisas distintas entre sí, existe uno y sólo un poli-
nomio de grado a lo más n que pasa por estos puntos.
vididas es una de las formas más populares y útiles. Antes de presentar la ecuación
general, estudiaremos las versiones de primero y segundo grados por su sencilla inter-
pretación visual.
La forma más simple de interpolación consiste en unir dos puntos con una línea recta.
Dicha técnica, llamada interpolación lineal, se ilustra de manera gráfica en la figura
18.2. Utilizando triángulos semejantes,
ƒ1 ( x ) – ƒ( x 0 ) ƒ( x1 ) – ƒ( x 0 )
=
x – x0 x1 – x 0
reordenándose se tiene
ƒ( x1 ) – ƒ( x 0 )
ƒ1 ( x ) = ƒ( x 0 ) + ( x – x0 ) (18.2)
x1 – x 0
que es una fórmula de interpolación lineal. La notación f1(x) designa que éste es un
polinomio de interpolación de primer grado. Observe que además de representar la
pendiente de la línea que une los puntos, el término [f(x1) – f(x0)]/(x1 – x0) es una aproxi-
mación en diferencia dividida finita a la primer derivada [ecuación (4.17)]. En general,
FIGURA 18.2
Esquema gráfico de la interpolación lineal. Las áreas sombreadas indican los triángulos
semejantes usados para obtener la fórmula de la interpolación lineal [ecuación(18.2)].
f (x)
f (x1)
f1(x)
f (x0)
x0 x x1 x
cuanto menor sea el intervalo entre los datos, mejor será la aproximación. Esto se debe al
hecho de que, conforme el intervalo disminuye, una función continua estará mejor aproxi-
mada por una línea recta. Esta característica se demuestra en el siguiente ejemplo.
Solución. Usamos la ecuación (18.2) y una interpolación lineal para ln(2) desde x0 =
1 hasta x1 = 6 para obtener
1.791759 − 0
ƒ 1 (2) = 0 + (2 – 1) = 0.3583519
6 −1
que representa un error: et = 48.3%. Con el intervalo menor desde x0 = 1 hasta x1 = 4 se
obtiene
1.386294 − 0
ƒ 1 (2) = 0 + (2 – 1) = 0.4620981
4 −1
Así, usando el intervalo más corto el error relativo porcentual se reduce a et = 33.3%.
Ambas interpolaciones se muestran en la figura 18.3, junto con la función verdadera.
FIGURA 18.3
Dos interpolaciones lineales para estimar ln 2. Observe cómo el intervalo menor
proporciona una mejor estimación.
f (x)
f (x) = ln x
2
Valor
1 verdadero f1(x)
Estimaciones lineales
0
0 5 x
En el ejemplo 18.1 el error resulta de nuestra aproximación a una curva mediante una
línea recta. En consecuencia, una estrategia para mejorar la estimación consiste en intro-
ducir alguna curvatura a la línea que une los puntos. Si se tienen tres puntos como datos,
éstos pueden ajustarse en un polinomio de segundo grado (también conocido como poli-
nomio cuadrático o parábola). Una forma particularmente conveniente para ello es
f2(x) = b0 + b1(x – x0) + b2(x – x0)(x – x1) (18.3)
Observe que aunque la ecuación (18.3) parece diferir del polinomio general [ecuación
(18.1)], las dos ecuaciones son equivalentes. Lo anterior se demuestra al multiplicar los
términos de la ecuación (18.3):
o, agrupando términos,
donde
a0 = b0 – blx0 + b2x0x1
a1 = b1 – b2x0 – b2x1
a2 = b2
Así, las ecuaciones (18.1) y (18.3) son formas alternativas, equivalentes del único poli-
nomio de segundo grado que une los tres puntos.
Un procedimiento simple puede usarse para determinar los valores de los coeficien-
tes. Para encontrar b 0, en la ecuación (18.3) se evalúa con x = x0 para obtener
b0 = f(x0) (18.4)
ƒ( x1 ) – ƒ( x 0 )
b1 = (18.5)
x1 – x 0
Por último, las ecuaciones (18.4) y (18.5) se sustituyen en la (18.3), después se evalúa en
x = x2 y (luego de algunas manipulaciones algebraicas) se resuelve para
ƒ( x 2 ) – ƒ( x1 ) ƒ( x1 ) – ƒ( x 0 )
−
x 2 – x1 x1 – x 0
b2 = (18.6)
x2 – x0
Antes de ilustrar cómo utilizar la ecuación (18.3), debemos examinar la forma del co-
eficiente b2. Es muy similar a la aproximación en diferencias divididas finitas de la segunda
derivada, que se presentó antes en la ecuación (4.24). Así, la ecuación (18.3) comienza a
manifestar una estructura semejante a la expansión de la serie de Taylor. Esta observación
será objeto de una mayor exploración cuando relacionemos los polinomios de interpolación
de Newton con la serie de Taylor en la sección 18.1.4. Aunque, primero, mostraremos un
ejemplo que indique cómo se utiliza la ecuación (18.3) para interpolar entre tres puntos.
x0 = 1 f(x0) = 0
x1 = 4 f(x1) = 1.386294
x2 = 6 f(x2) = 1.791759
b0 = 0
La ecuación (18.5) da
1.386294 − 0
b1 = = 0.4620981
4 −1
FIGURA 18.4
El uso de la interpolación cuadrática para estimar ln 2. Para comparación se presenta
también la interpolación lineal desde x = 1 hasta 4.
f (x)
2 f (x) = ln x
f2(x)
Valor
1 verdadero
Estimación cuadrática
Estimación lineal
0
0 5 x
Como se hizo antes con las interpolaciones lineales y cuadráticas, los puntos asociados
con datos se utilizan para evaluar los coeficientes b 0, b1,..., bn. Para un polinomio de
n-ésimo grado se requieren n + 1 puntos: [x0, f(x0)], [x1, f(x1)],..., [xn, f(xn)]. Usamos
estos datos y las siguientes ecuaciones para evaluar los coeficientes:
b0 = f(x0) (18.8)
b1 = f[x1, x0] (18.9)
b2 = f[x2, x1, x0] (18.10)
·
·
·
bn = f[xn, xn–1, · · ·, x1, x0] (18.11)
donde las evaluaciones de la función colocadas entre paréntesis son diferencias divididas
finitas. Por ejemplo, la primera diferencia dividida finita en forma general se representa
como
ƒ( xi ) – ƒ( x j )
ƒ[ xi , x j ] = (18.12)
xi – x j
La segunda diferencia dividida finita, que representa la diferencia de las dos primeras
diferencias divididas, se expresa en forma general como
ƒ[ xi , x j ] − ƒ[ x j , x k ]
ƒ[ xi , x j , x k ] = (18.13)
xi – x k
0 x0 ƒ(x0) ƒ[x1, x0] ƒ[x2, x1, x0] ƒ[x3, x2, x1, x0]
1 x1 ƒ(x1) ƒ[x2, x1] ƒ[x3, x2, x1]
2 x2 ƒ(x2) ƒ[x3, x2]
3 x3 ƒ(x3)
FIGURA 18.5
Representación gráfica de la naturaleza recursiva de las diferencias divididas finitas.
fn(x) = f(x0) + (x – x0) f[x1, x0] + (x – x0)(x – x1) f[x2, x1, x0]
+ · · · + (x – x0)(x – x1)· · ·(x – xn–1) f[xn, xn–1,· · ·, x0] (18.15)
f3(x) = b0 + b1(x – x0) + b2(x – x0)(x – x1) + b3(x – x0)(x – x1)(x – x2)
f (x)
f3(x)
2
f (x) = ln x
Valor
1 real
Estimación
cúbica
0
0 5 x
FIGURA 18.6
Uso de la interpolación cúbica para estimar ln 2.
1.609438 − 1.791759
ƒ[ x3 , x 2 ] = = 0.1823216
5−6
0.2027326 − 0.4620981
ƒ[ x 2 , x1 , x 0 ] = = −0.05187311
6 −1
0.1823216 − 0.2027326
ƒ[ x3 , x 2 , x1 ] = = −0.02041100
5−4
−0.02041100 − ( −0.05187311)
ƒ[ x3 , x 2 , x1 , x 0 ] = = 0.007865529
5 −1
Los resultados de f[x1, x0], f[x2 , x1, x0] y f[x3, x2, x1, x0] representan los coeficientes b1, b2 y
b3 de la ecuación (18.7), respectivamente. Junto con b0 = f(x0) = 0.0, la ecuación (18.7) es
la cual sirve para evaluar f 3 (2) = 0.6287686, que representa un error relativo: et = 9.3%.
La gráfica del polinomio cúbico se muestra en la figura 18.6.
donde ƒ[x, xn, xn–1,. . . , x0] es la (n + 1)-ésima diferencia dividida finita. Debido a que
la ecuación (18.17) contiene la incógnita f(x), no permite obtener el error. Sin embargo,
si se tiene un dato más, f(xn+1), la ecuación (18.17) puede usarse para estimar el error
como sigue:
Rn ⬵ ƒ[xn+1, xn, xn–1, . . . ,x0](x – x0)(x – x1)· · ·(x – xn) (18.18)
donde el valor de la diferencia dividida finita de tercer orden es como se calculó antes
en el ejemplo 18.3. Esta expresión se evalúa en x = 2 para obtener
Con el ejemplo anterior y la ecuación (18.18), debe resultar claro que el error esti-
mado para el polinomio de n-ésimo grado es equivalente a la diferencia entre las pre-
dicciones de orden (n + 1) y de orden n. Es decir,
En otras palabras, el incremento que se agrega al caso de orden n para crear el caso de
orden (n + 1) [es decir, la ecuación (18.18)] se interpreta como un estimado del error
de orden n. Esto se percibe con claridad al reordenar la ecuación (18.19):
fn+1(x) = fn(x) + Rn
FIGURA 18.7
Un algoritmo para el polinomio de interpolación de Newton escrito en seudocódigo.
EJEMPLO 18.5 Estimaciones del error para determinar el grado de interpolación adecuado
x ƒ(x) = ln x
0 1
4 1.3862944
6 1.7917595
5 1.6094379
3 1.0986123
1.5 0.4054641
2.5 0.9162907
3.5 1.2527630
Solución. Los resultados de emplear el algoritmo de la figura 18.7 para obtener una
solución se muestran en la figura 18.8. El error estimado, junto con el error verdadero
(basándose en el hecho de que ln 2 = 0.6931472), se ilustran en la figura 18.9. Observe
que el error estimado y el error verdadero son similares y que su concordancia mejora
conforme aumenta el grado. A partir de estos resultados se concluye que la versión de
quinto grado da una buena estimación y que los términos de grado superior no mejoran
significativamente la predicción.
NUMERO DE PUNTOS? 8
X( 0 ), y( 0 ) = ? 1,0
X( 1 ), y( 1 ) = ? 4,1.3862944
X( 2 ), y( 2 ) = ? 6,1.7917595
X( 3 ), y( 3 ) = ? 5,1.6094379
X( 4 ), y( 4 ) = ? 3,1.0986123
X( 5 ), y( 5 ) = ? 1.5,0.40546411
X( 6 ), y( 6 ) = ? 2.5,0.91629073
X( 7 ), y( 7 ) = ? 3.5,1.2527630
INTERPOLACION EN X = 2
GRADO F(X) ERROR
0 0.000000 0.462098
1 0.462098 0.103746
2 0.565844 0.062924
3 0.628769 0.046953
4 0.675722 0.021792
5 0.697514 –0.003616
6 0.693898 –0.000459
7 0.693439
FIGURA 18.8
Resultados de un programa, basado en el algoritmo de la figura 18.7, para evaluar ln 2.
FIGURA 18.9
Errores relativos porcentuales para la predicción de ln 2 como función del orden del
polinomio de interpolación.
Error
0
5 Grado
– 0.5
n
ƒ n ( x) = ∑ L ( x )ƒ( x )
i=0
i i (18.20)
donde
Πx –x
n x – xj
Li ( x ) = (18.21)
j =0 i j
j ≠i
x – x1 x – x0
ƒ1 ( x ) = ƒ( x 0 ) + ƒ( x1 ) (18.22)
x 0 – x1 x1 – x 0
( x – x1 )( x – x 2 ) ( x – x 0 )( x – x 2 )
ƒ 2 ( x) = ƒ( x 0 ) + ƒ( x1 )
( x 0 – x1 )( x 0 – x 2 ) ( x1 – x 0 )( x1 – x 2 )
( x – x 0 )( x – x1 )
+ ƒ( x 2 ) (18.23)
( x 2 – x 0 )( x 2 – x1 )
x0 = 1 f(x0) = 0
x1 = 4 f(x1) = 1.386294
x2 = 6 f(x2) = 1.791760
2−4 2 −1
ƒ 1 (2) = 0+ 1.386294 = 0.4620981
1− 4 4 −1
(2 − 4)(2 − 6) (2 − 1)(2 − 6)
ƒ 2 (2) = 0+ 1.386294
(1 − 4)(1 − 6) ( 4 − 1)( 4 − 6)
(2 − 1)(2 − 4)
+ 1.791760 = 0.5658444
(6 − 1)(6 − 4)
Como se esperaba, ambos resultados concuerdan con los que se obtuvieron antes al usar
el polinomio de interpolación de Newton.
El polinomio de interpolación de Lagrange se obtiene de mane- conocida como la forma simétrica. Al sustituir la ecuación
ra directa a partir de la formulación del polinomio de Newton. (B18.1.2) en la (18.2) se obtiene
Haremos esto únicamente en el caso del polinomio de primer
grado [ecuación (18.2)]. Para obtener la forma de Lagrange, x − x0 x − x0
f1 ( x ) = f ( x 0 ) + f ( x1 ) + f ( x0 )
reformulamos las diferencias divididas. Por ejemplo, la primera x1 − x 0 x 0 − x1
diferencia dividida,
f ( x1 ) – f ( x 0 ) Por último, al agrupar términos semejantes y simplificar se ob-
f [ x1 , x 0 ] = (B18.1.1) tiene la forma del polinomio de Lagrange,
x1 – x 0
x − x1 x − x0
se reformula como f1 ( x ) = f ( x0 ) + f ( x1 )
x 0 − x1 x1 − x 0
f ( x1 ) f ( x0 )
ƒ[ x1 , x 0 ] = + (B18.1.2)
x1 – x 0 x 0 – x1
150
Tercer término
100 Sumatoria
de los tres
términos = f2(x)
50
Primer término
0
15 20 25 30
– 50
Segundo término
– 100
– 150
FIGURA 18.10
Descripción visual del razonamiento detrás del polinomio de Lagrange. Esta figura muestra
un caso de segundo grado. Cada uno de los tres términos en la ecuación (18.23) pasa a
través de uno de los puntos que se tienen como datos y es cero en los otros dos. La suma de
los tres términos, por lo tanto, debe ser el único polinomio de segundo grado f2(x) que pasa
exactamente a través de los tres puntos.
FIGURA 18.11
Seudocódigo para la interpolación de Lagrange. Este algoritmo se establece para calcular
una sola predicción de grado n-ésimo, donde n + 1 es el número de datos.
FUNCTION Lagrng(x, y, n, x)
sum = 0
DOFOR i = 0, n
product = yi
DOFOR j = 0, n
IF i ≠ j THEN
product = product*(x – xj)/(xi – xj)
ENDIF
END DO
sum = sum + product
END DO
Lagrng = sum
END Lagrng
Π (x − x )
n
Rn = ƒ[ x, x n , x n−1 , …, x 0 ] i
i=0
De este modo, si se tiene un punto adicional en x = xn+1, se puede obtener un error esti-
mado. Sin embargo, como no se emplean las diferencias divididas finitas como parte del
algoritmo de Lagrange, esto se hace rara vez.
Las ecuaciones (18.20) y (18.21) se programan de manera muy simple para imple-
mentarse en una computadora. La figura 18.11 muestra el seudocódigo que sirve para
tal propósito.
En resumen, en los casos donde se desconoce el grado del polinomio, el método de
Newton tiene ventajas debido a la comprensión que proporciona respecto al comporta-
miento de las fórmulas de diferente grado. Además, el estimado del error representado
por la ecuación (18.18) se agrega usualmente en el cálculo del polinomio de Newton
debido a que el estimado emplea una diferencia finita (ejemplo 18.5). De esta manera,
para cálculos exploratorios, a menudo se prefiere el método de Newton.
Cuando se va a ejecutar sólo una interpolación, las formulaciones de Lagrange y de
Newton requieren un trabajo computacional semejante. No obstante, la versión de La-
grange es un poco más fácil de programar. Debido a que no requiere del cálculo ni del
almacenaje de diferencias divididas, la forma de Lagrange a menudo se utiliza cuando
el grado del polinomio se conoce a priori.
1 800
3 2 310
5 3 090
7 3 940
13 4 755
6 000 a) 6 000 b)
v, cm/s
3 000 3 000
0 0
0 5 10 15 0 5 10 15
6 000 c) 6 000 d)
v, cm/s
3 000 3 000
0 0
0 5 10 15 0 5 10 15
t(s) t(s)
FIGURA 18.12
Gráficas que muestran interpolaciones de a) cuarto grado, b) tercer grado, c) segundo
grado y d) primer grado.
El ejemplo anterior ilustró que los polinomios de grado superior tienden a estar mal
condicionados; es decir, tienden a ser altamente susceptibles a los errores de redondeo.
El mismo problema se presenta en la regresión con polinomios de grado superior. La
aritmética de doble precisión ayuda algunas veces a disminuir el problema. Sin embargo,
conforme el grado aumente, habrá un punto donde el error de redondeo interferirá con la
habilidad para interpolar usando los procedimientos simples estudiados hasta ahora.
Se requiere de tres puntos: [x0, f(x0)], [x1, f(x1)] y [x2, f(x2)]. Cada uno se sustituye en la
ecuación (18.25):
f(x0) = a0 + a1x0 + a2x02
f(x1) = a0 + a1x1 + a2x21 (18.26)
De esta manera, las x son los puntos conocidos, y las a las incógnitas. Como hay el
mismo número de ecuaciones que de incógnitas, la ecuación (18.26) se podría resolver
con uno de los métodos de eliminación de la parte tres.
Debe observarse que el procedimiento anterior no es el método de interpolación
más eficiente para determinar los coeficientes de un polinomio. Press et al. (1992) ofre-
cen un análisis y códigos para computadora de los procedimientos más eficientes.
Cualquiera que sea la técnica empleada, se debe hacer una advertencia. Sistemas como
los de la ecuación (18.26) están notoriamente mal condicionados. Ya sea que se resuelvan
con un método de eliminación o con un algoritmo más eficiente, los coeficientes resul-
tantes pueden ser bastante inexactos, en particular para n grandes. Si se usan para una
interpolación subsecuente, a menudo dan resultados erróneos.
En resumen, si usted se interesa en determinar un punto intermedio, emplee la in-
terpolación de Newton o de Lagrange. Si tiene que determinar una ecuación de la forma
de la (18.24), limítese a polinomios de grado menor y verifique cuidadosamente sus
resultados.
Ahora suponga que usted debe usar los mismos datos, pero que se le ha dado un
valor de f(x) y debe determinar el valor correspondiente de x. Por ejemplo, para los datos
anteriores, suponga que se le pide determinar el valor de x que corresponda a f(x) = 0.3.
En tal caso, como se tiene la función y es fácil de manipular, la respuesta correcta se
determina directamente, x = 1/0.3 = 3.3333.
A ese problema se le conoce como interpolación inversa. En un caso más compli-
cado, usted puede sentirse tentado a intercambiar los valores f(x) y x [es decir, tan sólo
x 7 6 5 4 3 2 1
Así, la segunda raíz, 3.296, es una buena aproximación al valor verdadero: 3.333. Si se
desea una exactitud adicional, entonces podría emplear un polinomio de tercer o cuar-
to grado junto con uno de los métodos para la localización de raíces analizado en la
parte dos.
Antes de proceder con la siguiente sección, se deben mencionar dos temas adicionales:
la interpolación y extrapolación con datos igualmente espaciados.
Como ambos polinomios, el de Newton y el de Lagrange, son compatibles con
datos espaciados en forma arbitraria, usted se preguntará por qué nos ocupamos del caso
especial de datos igualmente espaciados (cuadro 18.2). Antes de la llegada de las
computadoras digitales, dichas técnicas tenían gran utilidad para interpolación a partir
de tablas con datos igualmente espaciados. De hecho, se desarrolló una estructura compu-
tacional, conocida como tabla de diferencias divididas, para facilitar la implementación
de dichas técnicas. (La figura 18.5 es un ejemplo de esa tabla.)
Sin embargo, como las fórmulas dadas son subconjuntos de los esquemas de Newton
y Lagrange compatibles con una computadora y debido a las muchas funciones tabulares
existentes, como subrutinas de bibliotecas, ha disminuido la necesidad de tener versiones
para datos igualmente espaciados. A pesar de ello, las hemos incluido en este tema por
su relevancia en las últimas partes de este libro. En especial, son necesarias para obtener
fórmulas de integración numérica que por lo común utilizan datos igualmente espaciados
(capítulo 21). Como las fórmulas de integración numérica son importantes en la solución
de ecuaciones diferenciales ordinarias, el análisis del cuadro 18.2 adquiere también
significado para la parte siete.
Extrapolación es el proceso de estimar un valor de f(x) que se encuentra fuera del
dominio de los valores conocidos, x0, x1,..., xn (figura 18.13). En una sección anterior,
mencionamos que la interpolación más exacta se obtiene cuando las incógnitas están
cerca de los puntos. En efecto, éste no es el caso cuando la incógnita se encuentra fuera
del intervalo y, en consecuencia, el error en la extrapolación puede ser muy grande. Como
se ilustra en la figura 18.13, la naturaleza de la extrapolación de extremos abiertos re-
presenta un paso a lo desconocido, ya que el proceso extiende la curva más allá de la
región conocida. Como tal, la curva real podrá fácilmente diverger de la predicción.
Por lo tanto, se debe tener mucho cuidado cuando aparezca un problema donde se deba
extrapolar.
FIGURA 18.13
Ilustración de la posible divergencia de una predicción extrapolada. La extrapolación se
basa en ajustar una parábola con los primeros tres puntos conocidos.
f (x)
Interpolación Extrapolación
Curva
real
Extrapolación
del polinomio
de interpolación
x0 x1 x2 x
Si los datos están igualmente espaciados y en orden ascendente, donde el residuo es el mismo que en la ecuación (18.16). Esta
entonces la variable independiente tiene los valores de ecuación se conoce como fórmula de Newton o la fórmula hacia
adelante de Newton-Gregory, que se puede simplificar más al
x1 = x0 + h definir una nueva cantidad, a:
x2 = x0 + 2h
x − x0
· α=
· h
· Esta definición se utiliza para desarrollar las siguientes expre-
xn = x0 + nh siones simplificadas de los términos en la ecuación (C18.2.3):
∆ ƒ( x 0 )
ƒ n ( x ) = ƒ( x 0 ) + ( x − x0 )
h
∆2 ƒ( x 0 )
+ ( x − x 0 )( x − x 0 − h)
2! h 2
∆n ƒ( x 0 )
+ + ( x − x 0 )( x − x 0 − h)
n! h n
[ x − x 0 − (n − 1)h] + Rn (C18.2.3)
La unión más simple entre dos puntos es una línea recta. Los trazadores de primer gra-
do para un grupo de datos ordenados pueden definirse como un conjunto de funciones
lineales,
FIGURA 18.14
Una representación visual de una situación en la que los trazadores son mejores que los
polinomios de interpolación de grado superior. La función que se ajusta presenta un incremento
súbito en x = 0. Los incisos a) a c) indican que el cambio abrupto induce oscilaciones en
los polinomios de interpolación. En contraste, como se limitan a curvas de tercer grado con
transiciones suaves, un trazador lineal d) ofrece una aproximación mucho más aceptable.
f (x)
0 x
a)
f (x)
0 x
b)
f (x)
0 x
c)
f (x)
0 x
d)
FIGURA 18. 15
La técnica de dibujo que usa una cinta delgada y flexible para dibujar curvas suaves
a través de una serie de puntos. Observe cómo en los puntos extremos, el trazador
tiende a volverse recto. Esto se conoce como un trazador “natural”.
ƒ( xi +1 ) – ƒ( xi )
mi = (18.27)
xi +1 – xi
Estas ecuaciones se pueden usar para evaluar la función en cualquier punto entre x0
y xn localizando primero el intervalo dentro del cual está el punto. Después se usa la
ecuación adecuada para determinar el valor de la función dentro del intervalo. El méto-
do es obviamente idéntico al de la interpolación lineal.
Planteamiento del problema. Ajuste los datos de la tabla 18.1 con trazadores de
primer grado. Evalúe la función en x = 5.
Solución. Se utilizan los datos para determinar las pendientes entre los puntos. Por
ejemplo, en el intervalo de x = 4.5 a x = 7 la pendiente se calcula con la ecuación (18.27):
2.5 − 1
m= = 0.60
7 − 4.5
Se calculan las pendientes en los otros intervalos y los trazadores de primer grado ob-
tenidos se grafican en la figura 18.16a. El valor en x = 5 es 1.3.
TABLA 18.1
Datos para ajustarse
con trazadores.
x f (x)
3.0 2.5
4.5 1.0
7.0 2.5
9.0 0.5
Una inspección visual a la figura 18.16a indica que la principal desventaja de los
trazadores de primer grado es que no son suaves. En esencia, en los puntos donde se
encuentran dos trazadores (llamado nodo), la pendiente cambia de forma abrupta. For-
malmente, la primer derivada de la función es discontinua en esos puntos. Esta deficien-
cia se resuelve usando trazadores polinomiales de grado superior, que aseguren suavidad
en los nodos al igualar las derivadas en esos puntos, como se analiza en la siguiente
sección.
Para asegurar que las derivadas m-ésimas sean continuas en los nodos, se debe emplear
un trazador de un grado de, al menos, m + 1. En la práctica se usan con más frecuencia
polinomios de tercer grado o trazadores cúbicos que aseguran primera y segunda deri-
vadas continuas. Aunque las derivadas de tercer orden y mayores podrían ser discontinuas
cuando se usan trazadores cúbicos, por lo común no pueden detectarse en forma visual
y, en consecuencia, se ignoran.
Debido a que la deducción de trazadores cúbicos es algo complicada, la hemos in-
cluido en una sección subsecuente. Decidimos ilustrar primero el concepto de interpo-
lación mediante trazadores usando polinomios de segundo grado. Esos “trazadores
cuadráticos” tienen primeras derivadas continuas en los nodos. Aunque los trazadores cua-
dráticos no aseguran segundas derivadas iguales en los nodos, sirven muy bien para de-
mostrar el procedimiento general en el desarrollo de trazadores de grado superior.
El objetivo de los trazadores cuadráticos es obtener un polinomio de segundo grado
para cada intervalo entre los datos. De manera general, el polinomio en cada intervalo
se representa como
fi(x) = ai x2 + bi x + ci (18.28)
La figura 18.17 servirá para aclarar la notación. Para n + 1 datos (i = 0, 1, 2,..., n) existen
n intervalos y, en consecuencia, 3n constantes desconocidas (las a, b y c) por evaluar. Por
lo tanto, se requieren 3n ecuaciones o condiciones para evaluar las incógnitas. Éstas son:
1. Los valores de la función de polinomios adyacentes deben ser iguales en los nodos
interiores. Esta condición se representa como
f (x)
Trazador de
primer orden
2
0
2 4 6 8 10 x
a)
f (x)
Trazador de
segundo orden
2
0
x
b)
f (x)
Trazador
cúbico Interpolación
2 cúbica
0
x
c)
FIGURA 18.16
Ajuste mediante trazadores de un conjunto de cuatro puntos. a) Trazador lineal,
b) Trazador cuadrático y c) trazador cúbico; se grafica también un polinomio
de interpolación cúbico.
f (x1)
f (x0) f (x2)
x0 x1 x2 x3 x
i=0 i=1 i=2 i=3
FIGURA 18.17
Notación utilizada para obtener trazadores cuadráticos. Observe que hay n intervalos
y n + 1 datos. El ejemplo mostrado es para n = 3.
3. Las primeras derivadas en los nodos interiores deben ser iguales. La primera deri-
vada de la ecuación 18.28 es
ƒ′(x) = 2ax + b
La interpretación visual de esta condición es que los dos primeros puntos se unirán
con una línea recta.
Evaluando a la primera y la última función con los valores inicial y final, se agregan 2
ecuaciones más [ecuación (10.31)]:
y [ecuación (18.32)]
9a1 + b1 = 9a2 + b2
14a2 + b2 = 14a3 + b3
Por último, la ecuación (18.34) determina que a1 = 0. Como esta ecuación especifica a1
de manera exacta, el problema se reduce a la solución de ocho ecuaciones simultáneas.
Estas condiciones se expresan en forma matricial como
⎡4.5 1 0 0 0 0 0 0 ⎤ ⎧ b1 ⎫ ⎧ 1 ⎫
⎢0 0 20.25 4.5 1 0 0 0 ⎥ ⎪ c1 ⎪ ⎪ 1 ⎪
⎢ ⎥⎪ ⎪ ⎪ ⎪
⎢0 0 49 7 1 0 0 0 ⎥ ⎪a2 ⎪ ⎪2.5⎪
⎢ ⎥⎪ ⎪ ⎪ ⎪
⎢0 0 0 0 0 49 7 1 ⎥ ⎪b2 ⎪ ⎪2.5⎪
⎢3 ⎨ ⎬=⎨ ⎬
1 0 0 0 0 0 0 ⎥ ⎪c2 ⎪ ⎪2.5⎪
⎢ ⎥
⎢0 0 0 0 0 81 9 1 ⎥ ⎪a3 ⎪ ⎪0.5⎪
⎢1 ⎪ ⎪ ⎪ ⎪
0 −9 −1 0 0 0 0 ⎥ ⎪ b3 ⎪ ⎪ 0 ⎪
⎢ ⎥
⎢⎣ 0 0 14 1 0 −14 −1 0 ⎥⎦ ⎪⎩ c3 ⎪⎭ ⎪⎩ 0 ⎪⎭
Estas ecuaciones se pueden resolver utilizando las técnicas de la parte tres, con los re-
sultados:
a1 = 0 b1 = –1 c1 = 5.5
a2 = 0.64 b2 = –6.76 c2 = 18.46
a3 = –1.6 b3 = 24.6 c3 = –91.3
que se sustituyen en las ecuaciones cuadráticas originales para obtener la siguiente re-
lación para cada intervalo:
El ajuste total por trazadores se ilustra en la figura 18.16b. Observe que hay dos
desventajas que se alejan del ajuste: 1. la línea recta que une los dos primeros puntos y
2. el trazador para el último intervalo parece oscilar demasiado. Los trazadores cúbicos
de la siguiente sección no presentan estas desventajas y, en consecuencia, son mejo-
res métodos para la interpolación mediante trazadores.
El objetivo en los trazadores cúbicos es obtener un polinomio de tercer grado para cada
intervalo entre los nodos:
fi(x) = aix3 + bix2 + cix + di (18.35)
1. Los valores de la función deben ser iguales en los nodos interiores (2n – 2 condi-
ciones).
2. La primera y última función deben pasar a través de los puntos extremos (2 condi-
ciones).
3. Las primeras derivadas en los nodos interiores deben ser iguales (n – 1 condicio-
nes).
4. Las segundas derivadas en los nodos interiores deben ser iguales (n – 1 condicio-
nes).
5. Las segundas derivadas en los nodos extremos son cero (2 condiciones).
El primer paso en la obtención (Cheney y Kincaid, 1985) se digamos, la ecuación (18.35). Sin embargo, observe que contie-
considera la observación de cómo cada par de nodos está unida ne sólo dos “coeficientes” desconocidos; es decir, las segundas
por una cúbica; la segunda derivada dentro de cada intervalo es derivadas al inicio y al final del intervalo: ƒ″(xi–1) y ƒ″(xi). De
una línea recta. La ecuación (18.35) se puede derivar dos veces esta forma, si podemos determinar la segunda derivada en cada
para verificar esta observación. Con esta base, la segunda deri- nodo, la ecuación (C18.3.2) es un polinomio de tercer grado que
vada se representa mediante un polinomio de interpolación de se utiliza para interpolar dentro del intervalo.
Lagrange de primer grado [ecuación (18.22)]: Las segundas derivadas se evalúan tomando la condición de
que las primeras derivadas deben ser continuas en los nodos:
x – xi x − x i −1
ƒ ′′i ( x ) = ƒ ′′i ( x i −1 ) + ƒ ′′i ( x i ) (C18.3.1)
x i −1 – x i x i – x i −1 f ′i–1(xi) = f ′i(xi) (C18.3.3)
Esta ecuación contiene sólo dos incógnitas (las segundas derivadas en los extremos de
cada intervalo). Las incógnitas se evalúan empleando la siguiente ecuación:
Si se escribe esta ecuación para todos los nodos interiores, resultan n – 1 ecuaciones
simultáneas con n – 1 incógnitas. (Recuerde que las segundas derivadas en los nodos
extremos son cero.) La aplicación de estas ecuaciones se ilustra con el siguiente
ejemplo.
Planteamiento del problema. Ajuste trazadores cúbicos a los mismos datos que se
usaron en los ejemplos 18.8 y 18.9 (tabla 18.1). Utilice los resultados para estimar el
valor en x = 5.
Solución. El primer paso consiste en usar la ecuación (18.37) para generar el conjunto
de ecuaciones simultáneas que se utilizarán para determinar las segundas derivadas en
los nodos. Por ejemplo, para el primer nodo interior se emplean los siguientes datos:
x0 = 3 f(x0) = 2.5
x1 = 4.5 f(x1) = 1
x2 = 7 f(x2) = 2.5
En una forma similar, la ecuación (18.37) se aplica al segundo punto interior con el si-
guiente resultado:
f ′′(4.5) = 1.67909
f ′′(7) = –1.53308
Estos valores se sustituyen después en la ecuación (18.36), junto con los valores de
las x y las f(x), para dar
1.67909 2.5
ƒ1 ( x ) = ( x – 3)3 + ( 4.5 − x )
6( 4.5 − 3) 4.5 − 3
1.67909( 4.5 − 3) ⎤
+ ⎡⎢
1
− ⎥⎦ ( x − 3)
⎣ 4.5 − 3 6
Las tres ecuaciones se pueden utilizar para calcular los valores dentro de cada intervalo.
Por ejemplo, el valor en x = 5, que está dentro del segundo intervalo, se calcula como
sigue
Los resultados de los ejemplos 18.8 a 18.10 se resumen en la figura 18.16. Observe
cómo mejora progresivamente el ajuste conforme pasamos de trazadores lineales, a
cuadráticos y cúbicos. También hemos sobrepuesto un polinomio de interpolación cúbi-
ca en la figura 18.16c. Aunque el trazador cúbico consiste de una serie de curvas de
tercer grado, el ajuste resultante difiere del obtenido al usar un polinomio de tercer
grado. Esto se debe al hecho de que el trazador natural requiere segundas derivadas
iguales a cero en los nodos extremos; mientras que el polinomio cúbico no tiene tal
restricción.
El método para calcular trazadores cúbicos, descrito en la sección anterior, es ideal para
implementarse en una computadora. Recuerde que, con algunas manipulaciones inteli-
gentes, el método se reduce a la solución de n – 1 ecuaciones simultáneas. Un beneficio
más de la derivación es que, como lo especifica la ecuación (18.37), el sistema de ecua-
ciones es tridiagonal. Como se describió en la sección 11.1, existen algoritmos para re-
solver tales sistemas de una manera extremadamente eficiente. La figura 18.18 muestra
una estructura computacional que incorpora esas características.
Observe que la subrutina de la figura 18.18 da sólo un valor interpolado, yu, para
un valor dado de la variable dependiente, xu. Ésta es sólo una forma en la cual se puede
implementar la interpolación mediante trazadores. Por ejemplo, a usted deseará deter-
minar los coeficientes una sola vez y, después, realizar muchas interpolaciones. Además,
la rutina da tanto la primera (dy) como la segunda derivadas (dy2) en xu. Aunque no es
necesario calcular esas cantidades, son útiles en muchas aplicaciones de la interpolación
mediante trazadores.
FIGURA 18.18
Algoritmo para la interpolación mediante trazadores cúbicos.
PROBLEMAS
18.1 Estime Estime el logaritmo natural de 10 por medio de Observe que los valores de la tabla se generaron con la función
interpolación lineal. f(x) = x2/(1 + x2).
a) Interpole entre log 8 = 0.9030900 y log 12 = 1.0791812. a) Determine en forma analítica el valor correcto.
b) Interpole entre log 9 = 0.9542425 y log 11 = 1.0413927. b) Use interpolación cúbica de x versus y.
Para cada una de las interpolaciones calcule el error relativo c) Utilice interpolación inversa con interpolación cuadrática
porcentual con base en el valor verdadero. y la fórmula cuadrática.
d) Emplee interpolación inversa con interpolación cúbica y
18.2 Ajuste un polinomio de interpolación de Newton de segun-
bisección. Para los incisos b) a d) calcule el error relativo
do orden para estimar el log 10, con los datos del problema 18.1
porcentual verdadero.
en x = 8, 9 y 11. Calcule el error relativo porcentual verdadero.
18.10 Desarrolle trazadores cuadráticos para los cinco primeros
18.3 Ajuste un polinomio de interpolación de Newton de tercer
datos del problema 18.4, y pronostique f(3.4) y f(2.2).
orden para estimar log 10 con los datos del problema 18.1.
18.11 Obtenga trazadores cúbicos para los datos del problema
18.4 Dados los datos
18.5, y a) pronostique f(4) y f(2.5), y b) verifique que f2(3) y
f3(3) = 19.
x 1.6 2 2.5 3.2 4 4.5 18.12 Determine los coeficientes de la parábola que pasa por los
f (x) 2 8 14 15 8 2 últimos tres puntos del problema 18.4.
18.13 Determine los coeficientes de la ecuación cúbica que pasa
a) Calcule f(2.8) con el uso de polinomios de interpolación de por los primeros cuatro puntos del problema 18.5.
Newton de órdenes 1 a 3. Elija la secuencia de puntos más 18.14 Desarrolle, depure y pruebe un programa en cualquier
apropiada para alcanzar la mayor exactitud posible para sus lenguaje de alto nivel o de macros que elija, para implantar la
estimaciones. interpolación de polinomios de Newton, con base en la figura
b) Utilice la ecuación (18.18) para estimar el error de cada 18.7.
predicción. 18.15 Pruebe el programa que desarrolló en el problema 18.14
18.5 Dados los datos con la duplicación del cálculo del ejemplo 18.5.
18.16 Use el programa que desarrolló en el problema 18.14 para
x 1 2 3 5 7 8 resolver los problemas 18.1 a 18.3.
18.7 Utilice el programa que desarrolló en el problema 18.14
f (x) 3 6 19 99 291 444
para solucionar los problemas 18.4 y 18.5. En el problema 18.4
utilice todos los datos para desarrollar polinomios de primero a
Calcule f(4) con el uso de polinomios de interpolación de Newton
quinto grado. Para ambos problemas, haga la gráfica del error
de órdenes 1 a 4. Elija los puntos base para obtener una buena
estimado versus el orden.
exactitud. ¿Qué indican los resultados en relación con el orden
18.18 Desarrolle, depure y pruebe un programa en el lenguaje
del polinomio que se emplea para generar los datos de la tabla?
de alto nivel o macros que elija, para implantar la interpolación de
18.6 Repita los problemas 18.1 a 18.3, con el empleo del poli-
Lagrange. Haga que se base en el seudocódigo de la figura 18.11.
nomio de Lagrange.
Pruébelo con la duplicación del ejemplo 18.7.
18.7 Vuelva a hacer el problema 18.5 con el uso de polinomios
18.19 Una aplicación útil de la interpolación de Lagrange se
de Lagrange de órdenes 1 a 3.
denomina búsqueda en la tabla. Como el nombre lo indica, in-
18.8 Emplee interpolación inversa con el uso de un polinomio de
volucra “buscar” un valor intermedio en una tabla. Para desarro-
interpolación cúbico y de bisección, para determinar el valor de x
llar dicho algoritmo, en primer lugar se almacena la tabla de los
que corresponde a f(x) = 0.23, para los datos tabulados que siguen:
valores de x y f(x) en un par de arreglos unidimensionales. Des-
pués, dichos valores se pasan a una función junto con el valor de
x 2 3 4 5 6 7
x que se desea evaluar. La función hace luego dos tareas. En
f (x) 0.5 0.3333 0.25 0.2 0.1667 1.1429 primer lugar, hace un ciclo hacia abajo de la tabla hasta que
encuentra el intervalo en el que se localiza la incógnita. Después
18.9 Utilice interpolación inversa para determinar el valor de x que aplica una técnica como la interpolación de Lagrange para de-
corresponde a f(x) = 0.85, para los datos tabulados siguientes: terminar el valor apropiado de f(x). Desarrolle una función así
con el uso de un polinomio cúbico de Lagrange para ejecutar la
x 0 1 2 3 4 5 interpolación. Para intervalos intermedios ésta es una buena
f (x) 0 0.5 0.8 0.9 0.941176 0.961538 elección porque la incógnita se localiza en e intervalo a la mitad
de los cuatro puntos necesarios para generar la expresión cúbica. 18.22 Emplee la porción de la tabla de vapor que se da para el
Para los intervalos primero y último, use un polinomio cuadrá- H2O supercalentada a 200 MPa, para a) encontrar la entropía
tico de Lagrange. Asimismo, haga que el código detecte cuando correspondiente s para un volumen específico v de 0.108 m3/kg
el usuario pida un valor fuera del rango de las x. Para esos casos, con interpolación lineal, b) encontrar la misma entropía corres-
la función debe desplegar un mensaje de error. Pruebe su progra- pondiente con el uso de interpolación cuadrática, y c) hallar el
ma para f(x) = ln x con los datos x = 1, 2, …, 10. volumen correspondiente a una entropía de 6.6 con el empleo de
18.20 Desarrolle, depure y pruebe un programa en cualquier interpolación inversa.
lenguaje de alto nivel o de macros de su elección, para implantar
la interpolación con segmentaria cúbica con base en la figura v (m3/kg) 0.10377 0.11144 0.1254
18.18. Pruebe el programa con la repetición del ejemplo 18.10. s (kJ/kg · K) 6.4147 6.5453 6.7664
18.21 Emplee el software desarrollado en el problema 18.20
para ajustar trazadores cúbicos para los datos de los problemas
18.4 y 18.5. Para ambos casos, pronostique f(2.25).