Está en la página 1de 13

Unidad 1 / Módulo: Ecuaciones Diferenciales

Lectura Fundamental

Métodos Numéricos

Contenido

1 Método de Euler

2 Método de Runge Kutta

3 Ejercicios

Referencias

Palabras clave: campo de pendientes, iteraciones, aproximación


1. Método de Euler

Dado el problema de valor inicial

y 0 = f (x, y) y(x0 ) = x0 (1)

Como f (x, y(x)) es la pendiente y 0 (x) de la solución deseada y(x) de (1), se obtiene la siguiente aproximación para
h 6= 0

y(x + h) − y(x)
≈ f (x, y(x))
h
y(x + h) ≈ y(x) + hf (x, y(x))

Una vez se escoge la longitud del paso h 6= 0, se inicia con x0 obteniéndose puntos equidistantes xk = x0 + kh, k =
1, 2, . . . y aproximaciones yk = y(xk ) de la solución exacta y(x) como sigue:

yk+1 = yk + hf (xk , yk )

Ejemplo 1. Dada la ecuación diferencial y 0 = −2xy 2 , con condición inicial y(0) = 1

1.0

0.8

0.6

0.4

0.2

0.0

0.0 0.5 1.0 1.5 2.0 2.5

Campo de pendientes y 0 = −2xy 2

Aproximar por el método de Euler y(2), con h = 0.5

Solución:

1
k xk yk
0 0.00000000 1.00000000
1 0.50000000 1.00000000
2 1.00000000 0.50000000
3 1.50000000 0.25000000
4 2.00000000 0.15625000

1.0

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1
0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0

2. Método de Runge Kutta

Para calcular el valor de yk+1 a partir de yk , empleamos 4 pendientes dadas por la función f (x, y) que define la
ecuación diferencial. Estas pendientes de denominan mk , nk , pk y qk . Empezamos describiendo una iteración del
algoritmo y luego ilustraremos su implementación.

1. La primera pendiente m se calcula igual que en el


método de Euler, es decir,

m = f (x, y)

2
2. Usamos m para ir solo hasta la mitad del camino a lo
largo del eje x hasta x+h/2, donde ŷ = y +m h2 . Una vez
hemos determinado este punto usamos la función f (x, y)
para determinar la segunda pendiente

h
n = f (x + , ŷ)
2

3. Ahora repetimos el paso previo del algoritmo emplean-


do la pendiente n en lugar de m. Obtenemos un nuevo
ỹ = y + n h2 . Calculamos la tercera pendiente

h
p = f (x + , ỹ)
2

4. Finalmente obtenemos nuestra cuarta pendiente a


partir de p, para producir ȳ = y + ph. Una vez que
tenemos este cuarto punto, calculamos

q = f (x + h, ȳ)

5. Ahora que tenemos las 4 pendientes tomamos un pro-


medio ponderado y con éste calculamos el siguiente paso

m + 2n + 2p + q
6

3
Por lo tanto el paso que realmente tomamos es
 
mk + 2nk + 2pk + qk
yk+1 = yk + h
6

Ejemplo 2. Ilustramos la primera iteración del algoritmo RK4 (Runge-Kutta de orden 4) para

y 0 = −2xy 2 , y(0) = 1

con longitud del paso h = 0.1

Solución:

1. Comenzamos con la pendiente inicial

m0 = f (x0 , y0 ) = f (0, 1) = 0

2. Esta pendiente m0 determina ŷ0 = y0 + m0 h2 = 1 + 0 0.1


2 = 1. Ası́ obtenemos la segunda pendiente

h 0.1
n0 = f (x0 + , ŷ0 ) = f (0 + , 1) = f (0.05, 1) = −0.1
2 2

3. A su vez, n0 determina el valor ỹ por medio de ỹ0 = y0 + n0 h2 = 1 + (−0.1)0.05 = 0.995. Aplicando f al


punto (x0 + h2 , ỹ), determinamos la tercera pendiente

p0 = f (0.05, 0.995) = −0.0990025

4. y con p0 obtenemos el cuarto punto por medio de ȳ0 = y0 + p0 h = 1 − 0.0990025(0.05) = 0.9901. Dado este
cuarto punto, calculamos ahı́ la pendiente

q0 = f (0.1, 0.9901) = −0.19606

5. Ahora que tenemos estas cuatro pendientes, podemos estimar el promedio ponderado que nos permitirá
calcular la pendiente que determina el primer paso. Tenemos

m0 + 2n0 + 2p0 + q0 0 + 2(−0.1) + 2(−0.0990025) − 0.19606


= = −0.0990108
6 6

Este promedio ponderado da el primer paso y1 = y0 + (−0.0990108)h = 1.0 − 0.0990108(0.1) = 0.990099

Ejemplo 3. Comparar la aproximación obtenida con el método de Euler en el ejemplo 1, con la aproximación por
el método de Runge Kutta usando el mismo valor de h = 0.5

4
k xk yk
0 0.00000000 1.00000000
1 0.50000000 0.79837926
2 1.00000000 0.49970152
3 1.50000000 0.30816691
4 2.00000000 0.20040567

1.0

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2
0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0

3. Ejercicios

1. Relacione cada ecuación diferencial con su campo direccional. De razones para sus respuestas

a) y 0 = 2 − y
b) y 0 = x(2 − y)
c) y 0 = x + y − 1
d ) y 0 = sin x sin y

5
2. Una paracaidista salta desde una gran altura. Su velocidad v está modelada por la ecuación diferencial

dv
m = mg − kv 2 ,
dt
donde m = 54 kg es la masa, g = 9.8 m/s2 es la gravedad y k = 0.18 kg/m es la constante de rozamiento
(resistencia del aire) antes de abrir el paracaı́das.

a) Halle la solución de equilibrio de la ecuación diferencial (la cual corresponde a la velocidad terminal v∞
para k = 0.18).
b) Si la mujer debe abrir su paracaı́das cuando alcance el 80 % de la velocidad v∞ del inciso a), utilice
el método de Euler con h = 0.5 para estimar el tiempo en el que debe abrir su paracaı́das después de
saltar.

3. Un proyectil de masa m =0.11 kg que es lanzado verticalmente hacia arriba con una velocidad inicial v(0) = 8
m/s, disminuye su velocidad por efecto de la fuerza de gravedad y por la resistencia del aire. La ecuación
diferencial de la velocidad v está dada por

mv 0 = −mg − kv|v|

donde g =9.8m/s2 y k =0.002 kg/m.

a) Utilice el método de Euler para calcular la velocidad y la posición después de 0.1, 0.2, 0.3, . . ., 1.2 s.
b) Determine cuándo alcanzará el proyectil su altura máxima y calcule la altura máxima.

4. Considere el modelo de Ermentrout-Kopell para el impulso eléctrico de una neurona.


= 1 − cos θ + (1 + cos θ)I(t)
dt
Está bien establecido que una sola neurona puede disparar impulsos electricos periódicos cuando se les da
un estı́mulo I(t) (corriente de entrada) constante y por lo tanto, en algunas circunstancias, es considerado
como un oscilador. Tales osciladores son idealizaciones de neuronas individuales (sus conexiones aproximan

6
procesos en redes neuronales, de los cuales el más grande es un cerebro completo). Una simplificación que
se hace a menudo al estudiar las redes de osciladores es representar el estado de un oscilador por una sola
variable angular θ, su fase.
Asuma que I es constante igual a −0.1. Use el método de Euler con h = 0.5. Grafique la solución para el
PVI θ(0) = 1 sobre el intervalo 0 ≤ t ≤ 5.
dy
5. Considere el problema de valor inicial dx = y 2 − x2 , y(0) = α donde α es una constante. Dado su campo de
direcciones:

Observe que hay un valor crı́tico de α en el intervalo 0 < α < 1 que separa las soluciones cuando t → ∞.
Sea α = 0.7

a) Calcule y(2.5) utilizando el método de Euler con h = 0.5


b) Calcule y(2.25) utilizando el método de Euler con h = 0.15

Compare las soluciones y describa por qué falla el método de Euler

dy
6. Considere el problema de valor inicial dx = −xy + 0.1y 3 , y(0) = α donde α es una constante. Dado su campo
de direcciones:

7
Observe que hay un valor crı́tico de α en el intervalo 2 < α < 3 que separa las soluciones cuando t → ∞.
Sea α = 2.37

a) Calcule y(3) utilizando el método de Euler con h = 0.2


b) Calcule y(3) utilizando el método de Euler con h = 0.1

Compare las soluciones y describa por qué falla el método de Euler

7. Dado el PVI y 0 = −20y + 20x + 21, y(0) = 0.6, obtenga la tabla de aproximaciones hasta y(1) aplicando el
método de Euler y después use un programa de solución numérica para el método RK4; establezca h = 0.1
en cada caso.
(La gráfica del lado izquierdo corresponde al método de Euler y la del lado derecho a RK4. La curva de color
azul corresponde a la solución exacta y la morada a la correspondiente aproximación).

8
8. Dado el PVI y 0 = y(10 − 2y), y(0) = 1, obtenga la tabla de aproximaciones hasta y(4) aplicando el método
de Euler y después use un programa de solución numérica para el método RK4; establezca h = 1/4 en cada
caso.
(La gráfica del lado izquierdo corresponde al método de Euler y la del lado derecho a RK4. La curva de color
azul corresponde a la solución exacta y la morada a la correspondiente aproximación).

9. Dado el PVI y 0 = 2y cos x, y(0) = 1, obtenga la tabla de aproximaciones hasta y(8) aplicando el método de
Euler y después use un programa de solución numérica para el método RK4; establezca h = 1/2 en cada
caso.
(La gráfica del lado izquierdo corresponde al método de Euler y la del lado derecho a RK4. La curva de color
azul corresponde a la solución exacta y la morada a la correspondiente aproximación).

9
10. En la teorı́a de la propagación de enfermedades contagiosas (véase [Bal ] o [Ba2]), podemos utilizar una
ecuación diferencial relativamente elemental para predecir el número de individuos de la población infectados
en un tiempo dado, siempre y cuando realicemos las suposiciones de simplificación adecuadas. En particular,
supongamos que todos los individuos de una población fija tienen la misma probabilidad de infectarse y que,
una vez infectados, permanecen en ese estado. Si con x(t) denotamos al número de individuos susceptibles de
contraer la enfermedad en el tiempo t y si con y(t) denotamos al número de los infectados, podemos suponer,
razonablemente, que la rapidez con que él número de los infectados cambia es proporcional al producto de
x(t) y y(t), porque la rapidez depende del número de contactos entre individuos infectados susceptibles que
existen en ese tiempo. Ası́ podemos expresar el problema como

dy
= kxy (2)
dt
donde k es una constante. Si la población total también es constante x(t) + y(t) = N , la ecuación (2) se
puede reescribir como:

dy
= k(N − y)y (3)
dt
Suponiendo que N = 100000, y(0) = 1000, k = 2 × 10−6 , y que el tiempo se mide en dı́as, utilice el método
de RK4 con h = 0.25 para encontrar una aproximación al número de individuos infectados al cabo de 30
dı́as.

11. En el ejercicio anterior, todos los individuos infectados permanecieron en la población y propagaron la
enfermedad. Una propuesta más realista consiste en introducir una tercera variable z(t), que representa el
número de las personas a quienes en un tiempo dado t se les separa de la población infectada por aislamiento,
recuperación y la subsecuente inmunidad o fallecimiento. Naturalmente esto viene a complicar el problema,
pero podemos demostrar (véase (Bailey, 1975)) que se puede obtener una solución aproximada en la forma
x(t) = x0 e−(k1 /k2 )z(t) y y(t) = N − x(t) − z(t)
donde k1 es la rapidez de la infección, k2 es la rapidez del aislamiento, x0 es la población inicial de susceptibles
y z(t) se obtiene de la ecuación diferencial

dz
= k2 (N − z − x0 e−(k1 /k2 )z )
dt
Los autores no conocen método alguno para resolver directamente este problema y, por lo mismo, es necesario
aplicar un procedimiento numérico. Utilice el método de RK4 con h = 0.25 para obtener una aproximación
de z(30), x(30) y y(30), suponiendo de N = 100000, x0 = 99000, k1 = 2 × 10−6 y k2 = 10−4 .

10
Referencias

Bailey, N. (1975). The mathematical theory of infectious diseases and its applications. London: Griffin.
Bedford, H. (2019, 08 de 04). ¿por qué están aumentando los casos de sarampión en el mundo si la enfermedad es-
taba prácticamente erradicada? BBC . Recuperado de https://www.bbc.com/mundo/noticias-47837152
Blanchard, P., Devaney, R., Hall, G., y de la Cera Alonso, J. (1999). Ecuaciones diferenciales. Thomson.
Brauer, F. (2017, 02). Mathematical epidemiology: Past, present, and future. Infectious Disease Modelling, 2 .
doi: 10.1016/j.idm.2017.02.001
Chasnov, J. R., Jeffrey, C., y Chasnov, R. (s.f.). Mathematical biology lecture notes for math 4333 (formerly math
365).
Martcheva, M. (2015). An introduction to mathematical epidemiology. Springer US.
Zill, D. (2012). A first course in differential equations with modeling applications. Cengage Learning.

11
INFORMACIÓN TÉCNICA

Autor: Marı́a Isabel David

12

También podría gustarte