Documentos de Académico
Documentos de Profesional
Documentos de Cultura
5 Diferencias finitas
Las siguientes definiciones establecen algunas relaciones simples entre los puntos dados. Estas
definiciones tienen varias aplicaciones en análisis numérico.
Suponer que se tienen los puntos (xi, fi), i=0, 1, ..., n, tales que las abscisas están espaciadas
regularmente en una distancia h:
xi+1 - xi = h, i=0, 1, ..., n-1
...
Definiciones
∆1f0 = f1 - f0
∆1f1 = f2 - f1, etc
Cada diferencia finita se obtiene restando los dos valores consecutivos de la columna anterior.
Ejemplo. Tabule las diferencias finitas correspondientes a los siguientes datos
De donde:
f1 − f 0 ∆ 1f0
=
f '(z) = , para algún z∈[x0, x1]
h h
Es el Teorema del Valor Medio. Este teorema de existencia, con alguna precaución, se usa como
una aproximación para la primera derivada en el intervalo especificado:
∆ 1f0
es una aproximación para f’ en el intervalo [x0, x1].
h
Desarrollo de la serie de Taylor de la función f, que suponemos diferenciable, alrededor del punto
x1 hacia ambos a una distancia h, con dos términos:
h2
(1) f2 = f1 + hf ’1 + f ''(z1 ) , para algún z1∈[x1, x2]
2!
h2
(2) f0 = f1 - hf ’1 + f ''(z 2 ) , para algún z2∈[x0, x1]
2!
Sumando (1) y (2), sustituyendo la suma f’’(z1) + f’’(z2) por un valor promedio 2f’’(z) y despejando:
f2 − 2f1 + f0 ∆ 2 f0
= f ''(z) = , para algún z∈[x0, x2]
h2 h2
∆ 2 f0
es una aproximación para f’’ en el intervalo [x0, x2]
h2
En general,
∆ n f0
f (n) (z) = , para algún z en el intervalo [x0, xn].
hn
∆ n f0
n
es una aproximación para f(n) en el intervalo [x0, xn].
h
Demostración:
Sea f un polinomio de grado n: f(x) = a0xn + a1xn-1 + . . . + an
Su n-ésima derivada es una constante: f(n)(x) = n! a0
Por lo tanto, la n-ésima diferencia finita también será constante: ∆nfi = hn f(n)(x) = hn n! a0
Ejemplo
Tabule las diferencias finitas de f(x) = 2x2 + x + 1, para x = -2, -1, 0, 1, 2, 3
i xi fi ∆1fi ∆2fi ∆3fi ∆4fi
0 -2 7 -5 4 0 0
1 -1 2 -1 4 0 0
2 0 1 3 4 0
3 1 4 7 4
4 2 11 11
5 3 22
Siendo f(x) una expresión algebraica, y observado que la tercera diferencia finita es constante, se
puede concluir que es un polinomio de grado tres. Para encontrar el polinomio de interpolación
podemos usar la conocida fórmula de Lagrange. También se puede obtener el polinomio de
interpolación con métodos basados en los valores tabulados de diferencias finitas.
Suponer que se tienen dos puntos (x0, f0), (x1, f1) con los cuales se debe obtener el polinomio de
primer grado, es decir, la ecuación de una recta:
p1(x) = a0 + a1(x-x0)
a0 = f0
f1 − f0 ∆ 1f0
=a1 =
x1 − x 0 h
∆ 1f0
p 1(x) =
f0 + (x − x 0 )
h
En el caso de tener tres puntos (x0, f0), (x1, f1), (x2, f2), se debe obtener el polinomio de segundo
grado. Se propone la siguiente forma para este polinomio:
Sustituyendo los tres puntos y despejando a0, a1 y a2 se obtienen, incluyendo la notación usual:
a0 = f0
f1 − f0 ∆ 1f0
=a1 =
x1 − x 0 h
f2 − f1 f −f ∆ 1f1 ∆ 1f0
− 1 0 −
x 2 − x1 x 1 − x 0 h h ∆ 1f1 − ∆ 1f0 ∆ 2 f0
=a2 = = =
x2 − x0 2h 2h2 2h2
∆ 1f0 ∆ 2 f0
p2 (x) =f0 + (x − x 0 ) + (x − x 0 )(x − x1 )
h 2h2
Se puede generalizar para un conjunto de puntos (xi, fi), i=0, 1,…, n:
∆ 1f0 ∆ 2 f0 ∆ 3 f0
pn (x) =f0 + (x − x 0 ) + (x − x 0 )(x − x 1 ) + (x − x 0 )(x − x1 )(x − x 2 ) + ...
h 2!h2 3!h3
∆ n f0
+ (x − x 0 )(x − x1 )...(x − xn−1 )
n!hn
Si las diferencias finitas están tabuladas en forma de un triángulo, los coeficientes del polinomio de
interpolación se toman directamente de la primera fila del cuadro de datos (fila sombreada):
Ejemplo. Dados los siguientes puntos: (2, 5), (3, 6), (4, 3), (5, 2), encuentre el polinomio de
interpolación que incluye a los cuatro datos usando el método de diferencias finitas
>> d1=diff(f)
d1 =
1 -3 -1
>> d2=diff(d1)
d2 =
-4 2
>> d3=diff(d2)
d3 =
6
>> syms t
>> p=5+1/1*(t-2) + (-4)/(2*1^2)*(t-2)*(t-3) + 6/(6*1^3)*(t-2)*(t-3)*(t-4)
p=
t - (2*t - 4)*(t - 3) + (t - 2)*(t - 3)*(t - 4) + 3
Simplificación algebraica
>> p=expand(p)
p=
t^3 - 11*t^2 + 37*t – 33
0
0 1 2 3 4 5 6
t
>> q=inline(p);
>> y=q(2.5)
y=
6.3750
Interpolación inversa: hallar t tal que p(t)=4, con el método de Newton
>> h=p-4;
>> g=inline(t-h/diff(h));
>> t=3.6;
>> t=g(t)
t=
3.6892
>> t=g(t)
t=
3.6889
>> t=g(t)
t=
3.6889
(x − x 0 ) (x − x1 ) (x − x 2 ) (x − xn − 2 ) (x − xn −1 )
pn (x) = f0 + ( ∆ 1f0 + ( ∆ 2 f0 + ( ∆ 3 f0 + ... + ( ∆ n −1f0 + ∆ n f0 )...)))
h 2h 3h (n − 1)h nh
Entonces, el polinomio puede expresarse mediante un algoritmo recursivo:
p0 = ∆ n f0
(x − x n − 1 )
∆ n − 1f0 +
p1 = p0
nh
(x − x n − 2 )
∆ n − 2 f0 +
p2 = p1
(n − 1)h
.
.
(x − x 1 )
pn − 1 =∆ 1f0 + pn − 2
2h
(x − x 0 )
pn = ∆ 0 f0 + pn − 1 , siendo ∆ 0 f0 =f0
h
La evaluación del polinomio con este procedimiento requiere 2n sumas y restas y 3n
multiplicaciones y divisiones: T(n) = O(n). Esto constituye una mejora significativa con respecto a
los métodos anteriores. Sin embargo, la tabulación de las diferencias finitas tiene eficiencia O(n2)
pero únicamente contiene restas y debe calcularse una sola vez para interpolar en otros puntos.
Ejemplo. Dados los siguientes puntos: (1.2, 5), (1.4, 6), (1.6, 3), (1.8, 2), use el algoritmo recursivo
anterior para evaluar en x=1.5 el polinomio de interpolación que incluye a los cuatro datos.
Si los puntos están regularmente espaciados a una distancia h, se estableció una relación entre las
derivadas de f y las diferencias finitas:
∆n f
f (n) (t) = n 0 , para algún t en el dominio de los datos dados
h
Es una aproximación para la derivada si no cambia significativamente y h es pequeño.
Si se toman n+1 puntos para construir el polinomio de interpolación de grado n, y los puntos
provienen de un polinomio de grado n, entonces el f(n+1)( ) es cero y también ∆ n f , por lo tanto En(x)
también es cero, en forma consistente con la propiedad de unicidad del polinomio de interpolación.
En la tabla puede observarse que las diferencias finitas tienden a reducir su valor, entonces un
polinomio de interpolación es una aproximación adecuada para esta función. Adicionalmente, las
diferencias finitas en cada columna tienen valores de similar magnitud, por lo tanto se pueden usar
para estimar a las derivadas.
El grado del polinomio de interpolación depende del error que toleramos y su valor está
relacionado directamente con el orden de la diferencia finita incluida.
Para comparar, calculemos el valor exacto de f(0.08) con la función de la cual fueron tomados los
datos: f(x) = x ex + 1
El error exacto es
1.083287 – 1.086554 = 0.0001089
El valor calculado con el polinomio de interpolación de segundo grado concuerda muy bien con el
valor exacto.
6.6.4 Forma estándar del polinomio de interpolación de diferencias finitas
S S S S n
S
pn (S) =f0 + ∆ 1f0 + ∆ 2 f0 + ∆ 3 f0 + ... + ∆ n f0 = ∑ i ∆i f0
1 2 3 n i= 0
∆ n+ 1f0
En (x) ≅ (x − x 0 )(x − x1 )...(x − xn )
hn+ 1(n + 1)!
x − x0
Sustituyendo la definición S = :
h
∆ n+ 1f0
En (S) ≅ S(S − 1)(S − 2)...(S − n)
(n + 1)!
Que finalmente se puede expresar de la siguiente forma
S n+ 1 x − x0
En (S) ≅ ∆=f0 , S , x ≠ xi
n + 1 h
6.7 El polinomio de interpolación de diferencias divididas
Dado un conjunto de puntos (xi, fi), i=0, 1,…, n espaciados en forma arbitraria y que provienen de
una función desconocida f(x) pero supuestamente diferenciable, se desea obtener el polinomio de
interpolación.
Una forma alternativa al método de Lagrange es el polinomio de diferencias divididas cuya fórmula
se la puede obtener mediante un procedimiento de recurrencia generalizado.
Suponer que se tienen dos puntos (x0, f0), (x1, f1) con los cuales se debe obtener el polinomio de
primer grado, es decir, la ecuación de una recta:
p1(x) = a0 + a1(x-x0)
a=
0 f=
0 f[x 0 ]
f1 − f0
=a1 = f[x 0:1 ]
x1 − x 0
p1(x) =
f[x 0 ] + f[x 0:1 ](x − x 0 )
f1 − f0
La notación f[x 0:1 ] = denota la diferencia dividida en el rango [x0, x1]
x1 − x 0
La diferencia dividida f[x 0:1 ] es una aproximación para f’( ) en el intervalo [x0, x1]
En el caso de tener tres puntos (x0, f0), (x1, f1), (x2, f2), se debe obtener un polinomio de segundo
grado. Se propone la siguiente forma para este polinomio:
a=
0 f=
0 f[x 0 ]
f1 − f0 f[x 0 ] − f[x1 ]
=a1 = = f[x 0:1 ]
x1 − x 0 x1 − x 0
f2 − f1 f −f
− 1 0
x 2 − x1 x 1− x 0 f[x1:2 ] − f[x 0:1 ]
=a2 = = f[x 0:2 ]
x2 − x0 x2 − x0
p2 (x)= f[x 0 ] + f[x 0:1 ](x − x 0 ) + f[x 0:2 ](x − x 0 )(x − x1 )
pn (x)= f[x 0 ] + f[x 0:1 ](x − x 0 ) + f[x 0:2 ](x − x 0 )(x − x1 ) + f[x 0:3 ](x − x 0 )(x − x1 )(x − x 2 ) + ...
+ f[x 0:n ](x − x 0 )(x − x1 )...(x − xn−1 )
Es conveniente tabular las diferencias divididas en forma de un triángulo en el que cada columna a
la derecha se obtiene de la resta de los dos valores inmediatos de la columna anterior. Este
resultado debe dividirse para la longitud del rango de los datos incluidos.
Los coeficientes del polinomio de interpolación serán los valores resultantes colocados en la
primera fila del cuadro tabulado (fila sombreada):
Ejemplo. Dados los siguientes puntos: (2, 5), (4, 6), (5, 3), (7, 2), encuentre y grafique el polinomio
de interpolación que incluye a los cuatro datos, usando el método de diferencias divididas:
5 / 6 − (−7 / 6) 2
6−5 1 −3 − 1/ 2 7 =
0 2 5 = = − 7−2 5
4−2 2 5−2 6
3−6 −1/ 2 − (−3) 5
1 4 6 = −3 =
5−4 7−4 6
2−3 1
2 5 3 = −
7−5 2
3 7 2
Polinomio de tercer grado de diferencias divididas:
pn (x) = f[x 0 ] + f[x 0:1 ](x − x 0 ) + f[x 0:2 ](x − x 0 )(x − x1 ) + f[x 0:3 ](x − x 0 )(x − x1 )(x − x 2 )
p3 (x) =+
5 (1/ 2)(x − 2) + (−7 / 6)(x − 2)(x − 4) + (2 / 5)(x − 2)(x − 4)(x − 5)
2 167 2 227 64
= x3 − x + x−
5 30 10 3
0
0 1 2 3 4 5 6 7 8
x
En el polinomio de diferencias divididas, h sería el cociente promedio de las n distancias entre las
abscisas de los datos.
Fórmula de Lagrange
1. Los siguientes datos son observaciones de los ingresos f en base al monto de inversión x
realizada en cierto negocio, en miles de dólares: (5.5, 83.0), (8.2, 94.5), (12.4, 105.0), (19.0, 92.0).
a) Encuentre el polinomio de interpolación de tercer grado con la fórmula de Lagrange
Con este polinomio determine:
b) La ganancia que se obtiene si la inversión fuese 15.0
c) Cuanto habría que invertir si se desea una ganancia de 100.0
d) Para que valor de inversión se obtiene la máxima ganancia.
3. Los siguientes datos pertenecen a la curva de Lorentz, la cual relaciona el porcentaje de ingreso
económico global de la población en función del porcentaje de la población:
a) Use los cuatro datos para construir un polinomio para expresar esta relación
b) Con el polinomio determine el porcentaje de ingreso económico que le corresponde al 60% de la
población
c) Con el polinomio determine a que porcentaje de la población le corresponde el 60% de ingreso
económico global. Resuelva la ecuación resultante con el método de Newton
Error en la Interpolación
También se había hecho una interpolación lineal con el polinomio de diferencias finitas en x = 1.4
obteniéndose como resultado de la interpolación el valor 4.0755
a) Reconstruya la tabla de diferencias finitas
b) Encuentre el valor de f(1.62) con un polinomio de interpolación de Diferencias Finitas
Hacia adelante de tercer grado, y estime el error en la interpolación.
c) Encuentre el valor de x tal que f(x) = 5.4 con un polinomio de interpolación de diferencias
finitas hacia adelante de tercer grado. Para obtener la respuesta debe resolver una
ecuación cúbica. Use el Método de Newton y obtenga el resultado con cuatro decimales
exactos. Previamente encuentre un intervalo de convergencia.
Fertilizante 2
Fert. 1 1.2 1.4 1.6 1.8
1.0 7.2 7.8 7.5 7.3
1.5 8.2 8.6 9.2 9.0
2.0 9.5 9.6 9.3 8.6
Use todos los datos dados para determinar mediante una interpolación polinomial con el método de
Lagrange, la cantidad de producto que se obtendría si se usaran 1.2 de fertilizante 1 y 1.5 de
fertilizante 2.
2. Una empresa que vende cierto producto ha observado que su demanda depende del precio al
que lo vende (P en $/unidad) y también del precio al que la competencia vende un producto de
similares características (Q en $/unidad). Recopilando información histórica respecto a lo que ha
sucedido en el pasado se observó que la demanda diaria (unidades vendidas por día) de este
producto fueron de:
P
1 1.1 1.2
1 100 91 83
1.1 110 100 92
Q 1.2 120 109 100
1.3 130 118 108
Use todos los datos dados y el polinomio de interpolación de Lagrange para estimar los ingresos
mensuales de la empresa por la venta de este producto si decide venderlo a $1.15 por unidad y
conoce que la competencia estableció un precio de $1.25 por unidad.