Está en la página 1de 5

Utilización del método de las diferencias finitas para la

resolución de EDOs
Ing. Daniel Omar Ciuró*
8 de diciembre de 2015

El método de las diferencias


finitas.
El objetivo de utilizar el método de las dife-
rencias finitas para resolver una ecuación dife-
rencial es transformar un problema de cálculo Figura 1: Discretización.
en un problema de álgebra. Para realizar esta
tranformación utilizamos los siguientes proce- punto de la grilla n corresponde a la ubicación
sos: xn del dominio de solución. El total de números
de la grilla se denota como N , y x denota a la
Discretización: se transforma el dominio fı́si-
variable independiente. La variable dependien-
co continuo en un dominio discreto repre-
te (y) en la grilla se escribe utilizando como
sentado por una grilla.
subindice los mismos nombres que se utilizan
Aproximación: del valor inicial exacto de la para los puntos de la grilla. Por ejemplo, la
ecuación diferencial por medio de apro- función y(x) en el punto n se escribe como:
ximaciones diferencias algebraicas finitas
(ADFs). y(xn ) = yn .

Sustitución: Se sustituyen las ADFs en la De la misma forma las derivadas se escriben


EDO para obtener una ecuación algebrai- como:
dy
ca en diferencias finitas (EDF). = y 0 (xn ) = y 0 |n .
dx
Resolución: Se resuelve la ecuación algebrai-
ca resultante o EDF. Aproximaciones por diferencias fi-
nitas (ADFs).
Discretización. Ahora que hemos especificado la grilla de
diferencias finitas podemos realizar las aproxi-
En la figura 1 se aprecia el dominio de la
maciones (ADFs) de las derivadas exactas en la
solución continuo y la grilla de diferencias fini-
ecuación diferencial ordinaria (EDO). Esto los
tas. El dominio de solución es discretizado por
hacemos con los desarrollos en series de Tay-
un conjunto unidimensional discreto de puntos
lor de las derivadas. Se pueden utilizar aproxi-
representados en la grilla de diferencias finitas.
maciones de diferentes tipos, como diferencias
La solución en diferencias finitas para la EDO
centradas, hacia adelante o hacia atrás para
se obtiene a partir de esa grilla. En principio
derivadas de diferentes órdenes, como hemos
tomaremos una grilla de puntos con separación
visto en el apunte teórico anterior (((Métodos
uniforme ∆x. Se utiliza n para denotar los pun-
numéricos))). En el desarrollo de las aproxima-
tos fı́sicos de la grilla, esto es, xn . Entonces, el
ciones por diferencias finitas de ecuaciones di-
*
ciurodaniel@gmail.com ferenciales debemos distinguir entre la solución

1
exacta de la ecuación diferencial y la solución orden de aproximación de ȳ 0 |n . El término del
de la ecuación diferencial en diferencial finitas resto, el cual es truncado para obtener la ecua-
que es una aproximación de esa solución exac- ción (4), es llamado el error por truncamiento
ta. Utilizaremos la siguiente notación: de la aproximación por diferencias finitas de
ȳ 0 |n . La ecuación (4) es una aproximación en
ȳ(x) = Solución exacta. diferencias finitas de primer orden hacia ade-
y(x) = Solución aproximada. lante de ȳ 0 en el punto n de la grilla.
Existen diferentes formas de ajustar las deriva- Una aproximación en diferencias finitas de pri-
das exactas tales como ȳ 0 a una grilla de puntos mer orden hacia adelante de ȳ 0 en el punto n+1
en términos de los valores de ȳ para esos pun- de la grilla se obtiene escribiendo la serie de
tos y puntos adyacentes en la grilla. Si escribi- Taylor para ȳn usando el punto de la grilla n+1
mos el desarrollo de Taylor para ȳn+1 usando como el punto base y resolviendo para ȳ 0 |n+1 .
el punto n como punto base tenemos Entonces,
1 1 1 00
ȳn+1 = ȳn + ȳ 0 |n ∆x + ȳ 00 |n ∆2 x + ȳ 000 |n ∆3 x 0
ȳn = ȳn+1 (−∆x) + ȳn+1 (−∆x)2 + · · · (5)
2 6 2
1 (m)
+ ··· + ȳ |n ∆m x + Rm+1 . (1)
m! ȳn+1 − ȳn 1 00
ȳ 0 |n+1 = + ȳ (ξ)∆x (6)
Donde el resto representado por Rm+1 está da- ∆x 2
do por: Eliminando el resto tenemos:
1 yn+1 − yn
Rm+1 = ȳ (m+1) (ξ)∆m+1 x, y 0 |n+1 = 0(∆x) (7)
(m + 1)! ∆x
donde x ≤ ξ ≤ x + ∆x. Es decir, el resto es
el siguiente término de la serie de Taylor eva- Podemos obtener una aproximación de diferen-
luado en x = ξ. Si la serie de Taylor se trunca cias centrales de segundo orden de ȳ 0 en el pun-
después de la m-ésima derivada para obtener to de la grilla n + 1/2 utilizando las series de
una aproximación de ȳ n+1 , el resto es el error Taylor para ȳn+1 e ȳn y utilizando el punto de
asociado con esa aproximación. En la mayorı́a la grilla n + 1/2 como el punto base, restan-
de los casos lo que más nos interesa es el orden do las dos series de Taylor, y resolviendo para
del error, que es la velocidad a la cual el error ȳ 0 |n+1/2 . A continuación se muestra este proce-
tiende a cero a medida que ∆x → 0. Resol- dimiento:
viendo la () para ȳ 0 |n , lleva a: ∆x
0
ȳn+1 = yn+1/2
¯ + ȳn+1/2 ( )+
ȳn+1 − ȳn 1 00 1 2
ȳ 0 |n = − ȳ |n ∆x − ȳ 000 |n ∆2 x − · · · 1 00 ∆x 2 1 000 ∆x 3
∆x 2 6 + ȳn+1/2 ( ) + ȳn+1/2 ( ) + ··· (8)
(2) 2 2 6 2
Si la ecuación (2) se trunca después del primer
término se convierte en:
−∆x 0
0 ȳn+1 − ȳn 1 00 ȳn = yn+1/2
¯ + ȳn+1/2
)+ (
ȳ |n = − ȳ (ξ)∆x (3) 2
∆x 2 1 00 −∆x 2 1 000 −∆x 3
0 + ȳn+1/2 ( ) + ȳn+1/2 ( ) + · · · (9)
Una aproximación en diferencias finitas de ȳ |n , 2 2 6 2
la cual escribimos como y 0 |n se obtiene de la
0
ecuación (3) eliminando el resto de la fórmula Haciendo (9)−(8) y despejando ȳ |n+1/2 obte-
de Taylor. Entonces, nemos:

yn+1 − yn ȳn+1 − ȳn 1


y 0 |n = 0(∆x) (4) ȳ 0 |n+1/2 = − ȳ 000 (ξ)∆2 x (10)
∆x ∆x 24

donde el término 0(∆x) se muestra para re- yn+1 − yn


cordar que el resto fue eliminado, el cual es el y 0 |n+1/2 = 0(∆2 x) (11)
∆x

2
Podemos notar que las ecuaciones (4), (7) y diferencial y reemplazando las derivadas exac-
(11) son idénticas expresiones algebraicas. To- tas en la ecuación diferencial por aproximacio-
das producen el mismo valor numérico. Las di- nes en diferencias finitas, tales como las ob-
ferencias en las tres aproximaciones por dife- tenidas en las ecuaciones (4), (7) y (11), para
rencias finitas está en los errores de trunca- obtener una aproximación en diferencias finitas
miento, dados por las ecuaciones (3), (6) y de la ecuación diferencial. Tales aproximacio-
(10), respectivamente. A veces se presenta una nes se llaman ecuaciones en diferencias finitas
aproximación por diferencias finitas de una de- (EDFs).
rivada sin su desarrollo. En esos casos, el error Consideremos el problema de valor inicial no
de truncamiento y el orden están determina- lineal dado por:
dos por un análisis de consistencia que utiliza
la serie de Taylor. Por ejemplo, consideremos ȳ 0 = f (x, ȳ) ȳ(0) = ȳ0 (15)
la siguiente aprosimación por diferencias fini-
Elegimos una aproximación por diferencial fi-
tas (ADF):
nitas (ADF), y 0 , para ȳ 0 . Por ejemplo, desde las
yn+1 − yn ecuaciones (4) y (7):
ADF = (12)
∆x yn+1 − yn yn+1 − yn
yn0 = 0
ó yn+1 = (16)
El desarrollo de Taylor para la solución apro- ∆x ∆x
ximada de y(x) con base en el punto n es Sustituimos la ADF por ȳ 0 en la EDO, ȳ 0 =
f (x, ȳ), y se resuelve para yn+1 :
0 1 00 2
yn+1 = yn + y |n ∆x + y |n ∆ x + · · · (13) yn+1 − yn
2 yn0 = = f (xn , yn ) = fn . (17)
∆x
Sustituyendo el desarrollo de la serie de Taylor
0 yn+1 − yn
por yn+1 en la ADF, tenemos: yn+1 = = f (xn+1 , yn+1 ) = fn+1 .
∆x
(18)
yn + y 0 |n ∆x + 1/2y 00 |n ∆2 x + · · · − yn
ADF = Resolviendo las ecuaciones (17) y (18) para
∆x yn+1 tenemos:
0 00
= y |n + 1/2y |n ∆x + · · · (14)
yn+1 = yn + ∆xf (xn , yn ) =
Analizando la ecuación (14) podemos notar
= yn + ∆xfn (19)
que a medida que ∆x → 0, ADF → y 0 |n , lo
cual demuestra que ADF es una aproximación yn+1 = yn + ∆xf (xn+1 , yn+1 ) =
de la derivada exacta Resumeny 0 en el pun- = yn + ∆xfn+1 (20)
to n de la grilla. El orden de ADF es 0(∆x).
Podemos determinar la forma exacta del error Resolviendo simultáneamente ambas ecuacio-
relativo de truncamiento para el punto n de la nes para yn+1 y fn+1 obtenemos el resultado del
grilla. Si elegimos otro punto base en la serie punto siguiente. Existen dos fuentes importan-
de Taylor encontramos el error de truncamien- tes de errores. El error por truncamiento y el
to relativo a ese punto base. error por redondeo. El primero de estos ocurre
La propiedad aquı́ ilustrada se llama consisten- en un paso simple y es causado por el trunca-
cia y es una propiedad importante de la aproxi- miento en la serie de Taylor al aproximar las
mación por diferencias finitas de las derivadas. derivadas. El error por truncamiento disminu-
ye a medida que ∆x (el paso) disminuye y es
acumulativo. El error por redondeo es causado
Ecuaciones en diferencias finitas por la aproximación que hace la computado-
(EDFs). ra del valor numérico real. Es más significativo
cuando operamos con pequeñas diferencias en-
Las soluciones en diferencias finitas de las tre grandes números. Es decir que aumenta a
ecuaciones diferenciales se obtienen discreti- medida que ∆x disminuye y también es acu-
zando el dominio de solución de la ecuación mulativo.

3
x4
Ejemplo 1. y5 = y4 + ∆x
x4 + y4
Sea el problema de valor inicial: 3
y5 = 2, 09684 + 0, 5 × =
( x 3 + 2, 09684
y0 = , y5 = 2, 39114.
x+y
y(1) = 1.
Este último es una buena aproximación al valor
Encontrar la solución para y(3), tomando un que estábamos buscando.
∆x = 0, 5.
Ejemplo 2.
Solución.
Sea un móvil cuya velocidad varı́a según la
Construimos la grilla como: ecuación v 2 − x · v = t, donde v es la veloci-
dad, t es el tiempo y x es el espacio recorrido.
x0 x1 x 2 x3 x4
Se sabe que en el primer segundo recorrió 10m
1 1,5 2 2,5 3
y se desea saber que distancia recorrerá en el
Tomamos como valor base x0 y desarrollamos siguiente segundo. Utilizar el método de las di-
la serie de Taylor de la solución en ese punto. ferencias finitas para aproximar una solución.

y1 = y0 + y∆x, Solución.
es decir: La ecuación diferencial a resolver es:
y1 − y0
=y00 ,  2
∆x dx dx
+x =t (22)
Que reemplazando en la ecuación diferencial dt dt
da
y1 − y0 x0 Vamos a tomar una grilla con x0 = 10, t0 = 1
= . (21)
∆x x0 + y0 y ∆t = 0, 25. Es decir:
De la (21) podemos despejar y calcular y1 : t0 t1 t2 t3 t4
x0 1 1,25 1,5 1,75 2
y1 = y0 + ∆x
x0 + y 0 Como buena aproximación de la derivada pri-
1 mera usamos:
y1 = 1 + 0, 5 × = 1, 25.
1+1
xn+1 − xn
De esta misma forma calculamos el resto de los x0 =
∆t
valores obteniendo:
Reemplazamos esta última en la ecuación (22)
x1
y2 = y1 + ∆x para obtener:
x1 + y1
 2
1, 5 dx dx
y2 = 1, 25 + 0, 5 × = +x −t=0 (23)
1, 5 + 1, 25 dt dt
y2 = 1, 52272.
x2 Que es la ecuación diferencial a resolver.
y3 = y2 + ∆x Si tomamos a (xn+1 − xn )/∆t como una buena
x2 + y2
2 aproximación de dx/dt y la reemplazamos en
y3 = 1, 52272 + 0, 5 × = (23) obtenemos:
2 + 1, 52272
y3 = 1, 80659. 
xn+1 − xn
2 
xn+1 − xn

x3 − xn = tn . (24)
y4 = y3 + ∆x ∆t ∆t
x3 + y3
2, 5 La cual debemos resolver para xn+1 . Para
y4 = 1, 80659 + 0, 5 × =
2, 5 + 1, 80659 resolver la (24) aplicamos el método de las
y4 = 2, 09684. sustituciones sucesivas que figura en el apunte

4
de métodos numéricos. Despejamos xn+1 como
una función de si misma.
(xn+1 − xn )2 tn ∆t
xn+1 = xn + − . (25)
xn ∆t xn
Para encontrar soluciones de la ecuación (25) le
asignamos a xn+1 en el lado derecho de la ecua-
ción el valor más cercano que conocemos (xn )
y calculamos para obtener del lado izquierdo
de la igualdad un nuevo valor de xn+1 . Este
valor lo volvemos a reemplazar del lado dere-
cho y repetimos el proceso hasta que el valor
de xn+1 a la derecha y a la izquierda coinciden
suficientemente.
Para el primer punto de la grilla tenemos:

(x1 − x0 )2 t0 ∆t
x1 = x0 + − ,
x0 ∆t x0
(10 − 10)2 1 · 0, 25
x1 = 10 + − = 9, 975,
10 · 0, 25 10
(9, 975 − 10)2 1 · 0, 25
x1 = 10 + − = 9, 97525,
10 · 0, 25 10
(9, 97525 − 10)2 1 · 0, 25
x1 = 10 + − = 9, 97525.
10 · 0, 25 10
Y el valor ya no cambia, para el resto de los
puntos tenemos:
xn 9,82738 9,78979 9,5837 9,53262
tn 1,25 1,5 1,75 2
Entonces tenemos que entre los segundos uno
y dos el móvil recorrió 9, 53262m.

También podría gustarte