Diferencia entre revisiones de «Modelos epidemiológicos. (Grupo A4)»

De MateWiki
Saltar a: navegación, buscar

Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/mat/public_html/w/includes/diff/DairikiDiff.php on line 434
Línea 5: Línea 5:
 
= Exposición del problema =
 
= Exposición del problema =
  
En el desarrollo de una epidemia se distinguen dos tipos de individuos: los que ya han contraído la enfermedad o infectados '''I''', y los que son susceptibles de contraerla por encontrarse en zona de riesgo ''''S''''. Supongamos que se dan las siguientes hipótesis:
+
En el desarrollo de una epidemia se distinguen dos tipos de individuos: los que ya han contraído la enfermedad o infectados ''"I"'', y los que son susceptibles de contraerla por encontrarse en zona de riesgo ''"S"''. Supongamos que se dan las siguientes hipótesis:
  
 
1.'' La población de personas infectadas se altera por el fallecimiento o la cura de las mismas.En ambos casos, la tasa de cambio depende del número de personas infectadas.''
 
1.'' La población de personas infectadas se altera por el fallecimiento o la cura de las mismas.En ambos casos, la tasa de cambio depende del número de personas infectadas.''
Línea 25: Línea 25:
 
2. Tomamos los mismos valores de los parámetros que en el apartado anterior: a = 0.003, b = 0.3 y c = 0.01
 
2. Tomamos los mismos valores de los parámetros que en el apartado anterior: a = 0.003, b = 0.3 y c = 0.01
  
3. Los datos de poblaciones iniciales los nombraremos como '''S0''' para los individuos susceptibles e '''I0''' para los infectados. El tiempo de estudio lo indica la variable '''tN''' y el paso la variable '''h'''.
+
3. Los datos de poblaciones iniciales los nombraremos como ''"S0"'' para los individuos susceptibles e ''"I0"'' para los infectados. El tiempo de estudio lo indica la variable ''"tN"'' y el paso la variable ''"h"''.
  
  
Línea 86: Línea 86:
 
-------gráfica arreglada + otros h-------
 
-------gráfica arreglada + otros h-------
 
----------------
 
----------------
Hacemos un tercer análisis variando de nuevo las poblaciones y el tiempo de estudio. En los casos anteriores toda la población susceptible acababa infectada y posteriormente la población infectada también llegaba a 0. En este caso vemos que el parámetro ''a'' que es el de contagio, junto con los datos de las poblaciones iniciales no consiguen que toda la población susceptible sea infectada antes de que la población infectada desaparezca; por lo que cuando esta desaparece la población de susceptibles se mantiene constante.
+
Hacemos un tercer análisis variando de nuevo las poblaciones y el tiempo de estudio. En los casos anteriores toda la población susceptible acababa infectada y posteriormente la población infectada también llegaba a 0. En este caso vemos que el parámetro ''"a"'' que es el de contagio, junto con los datos de las poblaciones iniciales no consiguen que toda la población susceptible sea infectada antes de que la población infectada desaparezca; por lo que cuando esta desaparece la población de susceptibles se mantiene constante.
 
--------------------
 
--------------------
 
-------grafica con gente salvada----------
 
-------grafica con gente salvada----------
Línea 97: Línea 97:
  
  
Utilizamos los métodos de Euler y Runge-Kutta porque son métodos explícitos, es decir, que para calcular el valor del termino '''i+i''' solo se necesitan los valores de los términos '''i''' anteriores. por el contrario, en los métodos implícitos para calcular el valor '''i+1''' se necesitan los propios valores '''i+1''' lo que conlleva a despejar manualmente los parámetros que se buscan, lo que en muchos casos es complicado o incluso imposible.
+
Utilizamos los métodos de Euler y Runge-Kutta porque son métodos explícitos, es decir, que para calcular el valor del termino ''"i+i"'' solo se necesitan los valores de los términos ''"i"'' anteriores. por el contrario, en los métodos implícitos para calcular el valor ''"i+1"'' se necesitan los propios valores ''"i+1"'' lo que conlleva a despejar manualmente los parámetros que se buscan, lo que en muchos casos es complicado o incluso imposible.
  
 
=Análisis con parámetros variables=
 
=Análisis con parámetros variables=
Línea 107: Línea 107:
 
2. El parámetro de contagio 'a' será variable con el tiempo con valor:
 
2. El parámetro de contagio 'a' será variable con el tiempo con valor:
 
<math>a=0.003/1+t</math>
 
<math>a=0.003/1+t</math>
Esto significa que para el momento inicial tendrá un valor de 0.003; pero al ser el denominador negativo según avance el tiempo se ira haciendo cada vez mas pequeño; es decir, que cuanto mas avance el tiempo se tendrán menos posibilidades de ser infectado en el contacto de las dos poblaciones. Matemáticamente esto significa que el primer sumando de ambas ecuaciones, que es en el que interviene '''a''', se hará cada vez menor, por lo que '''S''' decrecerá mas lentamente (al tener signo negativo) e '''I''' crecerá mas lentamente (al tener signo positivo).  
+
Esto significa que para el momento inicial tendrá un valor de 0.003; pero al ser el denominador negativo según avance el tiempo se ira haciendo cada vez mas pequeño; es decir, que cuanto mas avance el tiempo se tendrán menos posibilidades de ser infectado en el contacto de las dos poblaciones. Matemáticamente esto significa que el primer sumando de ambas ecuaciones, que es en el que interviene ''"a"'', se hará cada vez menor, por lo que ''"S"'' decrecerá mas lentamente (al tener signo negativo) e ''"I"'' crecerá mas lentamente (al tener signo positivo).  
  
 
El código utilizado y los resultados obtenidos son los siguientes.
 
El código utilizado y los resultados obtenidos son los siguientes.
Línea 160: Línea 160:
 
-----------------------
 
-----------------------
  
Como vemos, al disminuir el ratio de contagio conseguimos que parte de la población sana no se infecte; y cuando esta desaparece por culpa de los terminos '-bI' y '-cI', l apoblacion sana se mantiene constante.
+
Como vemos, al disminuir el ratio de contagio conseguimos que parte de la población sana no se infecte; y cuando esta desaparece por culpa de los términos ''"-bI"'' y ''"-cI"'', la población sana se mantiene constante.
Si al contrario de esto el parametro 'a' tuviera un denominador menor que 1, cada vez el riesgo de contagio seria mayor y la disminucion de poblacion sana y aumento de los infectados sería mucho mas rápido.
+
Si al contrario de esto el parámetro ''"a"'' tuviera un denominador menor que 1, cada vez el riesgo de contagio seria mayor y la disminución de población sana y aumento de los infectados sería mucho mas rápido.
  
 
[[Categoría:Ecuaciones Diferenciales]]
 
[[Categoría:Ecuaciones Diferenciales]]
 
  [[Categoría:ED14/15]]
 
  [[Categoría:ED14/15]]
 
  [[Categoría:Trabajos 2014-15]]
 
  [[Categoría:Trabajos 2014-15]]

Revisión del 17:59 26 feb 2015

Trabajo realizado por estudiantes
Título Modelos epidemiológicos. Grupo A11
Asignatura Ecuaciones Diferenciales
Curso Curso 2014-15
Autores Nuestros nombres
Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura


1 PÁGINA EN CONSTRUCCIÓN

2 Exposición del problema

En el desarrollo de una epidemia se distinguen dos tipos de individuos: los que ya han contraído la enfermedad o infectados "I", y los que son susceptibles de contraerla por encontrarse en zona de riesgo "S". Supongamos que se dan las siguientes hipótesis:

1. La población de personas infectadas se altera por el fallecimiento o la cura de las mismas.En ambos casos, la tasa de cambio depende del número de personas infectadas.

2. La tasa de individuos que pasan de ser susceptibles a contraer la enfermedad a estar infectados es proporcional a la interacción entre el número de individuos en ambas clases.

Consideramos las variables: t tiempo, S(t) población de individuos susceptibles a contraer la enfermedad, I(t) población de individuos infectados; y el sistema:


[math] dS/dt=-aSI[/math]

[math]dI/dt=aSI-bI-cI [/math]

Donde: a, b y c son parámetros.

3 Estudio de poblaciones mediante el método de Runge-Kutta

1.Realizaremos varias simulaciones con diferentes valores de las poblaciones iniciales de infectados y susceptibles, el tiempo del estudio y el numero de intervalos. 2. Tomamos los mismos valores de los parámetros que en el apartado anterior: a = 0.003, b = 0.3 y c = 0.01

3. Los datos de poblaciones iniciales los nombraremos como "S0" para los individuos susceptibles e "I0" para los infectados. El tiempo de estudio lo indica la variable "tN" y el paso la variable "h".


4.Aplicamos el método Runge-Kutta y lo programamos en Octave UPM. Escribimos el código una sola vez. Para sacar todas las gráficas de los diferentes modelos solo hay que cambiar los valores de las poblaciones iniciales, tiempo y paso.


clear all

%Valores del tiempo
t0 = 0;
tN = 40;
h = 0.1;
N = round((tN-t0)/h); 
t = t0:h:tN;

%Vectores que contendrán la solución
S = zeros(1,N+1);
I = zeros(1,N+1);

%Valores iniciales
S(1) = 800;
I(1) = 20;

%Valores de los parámetros
a = 0.003;
b = 0.3;
c = 0.01;

%Bucle para sacar la componente i+1 de cada vector desde la primera hasta la N
for i = 1:N

 K1 = -a*S(i)*I(i);  
 K2 = -a*S(i)*I(i) + 1/2*K1*h;
 K3 = -a*S(i)*I(i) + 1/2*K2*h;
 K4 = -a*S(i)*I(i) + K3*h;
 S(i+1) = S(i) + h/6*(K1+2*K2+2*K3+K4); 

 L1 = (a*S(i)*I(i)) -I(i)*(b+c);
 L2 = (a*S(i)*I(i)) -I(i)*(b+c) + 1/2*L1*h;
 L3 = (a*S(i)*I(i)) -I(i)*(b+c) + 1/2*L2*h;
 L4 = (a*S(i)*I(i)) -I(i)*(b+c) + L3*h;
 I(i+1) = I(i) + h/6*(L1+2*L2+2*L3+L4);

end

%Gráficas
hold on
plot (t,S,'-')
plot (t,I,'-r')
hold off


grafica del codigo de arriba-------

grafica con poblaciones 10000,40--------

En esta gráfica se observa que al aumentar mucho los valores de la población el método no funciona. Es obvio, por ejemplo, que no puede haber poblaciones negativas ni existir las variaciones que se muestran en la gráfica. Esto es debido a que el paso es demasiado grande y en el bucle al haber números grandes también en la operaciones dan un error que provoca resultados incorrectos. Para solucionar esto simplemente disminuimos el paso a h=0.01 para analizar una mayor cantidad de intervalos y la nueva gráfica sale con la forma correcta. Añadimos también las gráficas con pasos h=0.001 y h=0.0001 en --colores-- y vemos que no hay mucha variación entre ellas.



gráfica arreglada + otros h-------

Hacemos un tercer análisis variando de nuevo las poblaciones y el tiempo de estudio. En los casos anteriores toda la población susceptible acababa infectada y posteriormente la población infectada también llegaba a 0. En este caso vemos que el parámetro "a" que es el de contagio, junto con los datos de las poblaciones iniciales no consiguen que toda la población susceptible sea infectada antes de que la población infectada desaparezca; por lo que cuando esta desaparece la población de susceptibles se mantiene constante.



grafica con gente salvada----------


Utilizamos los métodos de Euler y Runge-Kutta porque son métodos explícitos, es decir, que para calcular el valor del termino "i+i" solo se necesitan los valores de los términos "i" anteriores. por el contrario, en los métodos implícitos para calcular el valor "i+1" se necesitan los propios valores "i+1" lo que conlleva a despejar manualmente los parámetros que se buscan, lo que en muchos casos es complicado o incluso imposible.

4 Análisis con parámetros variables

En este apartado utilizaremos el método de Heun para solucionar el mismo problema, pero le añadiremos unas pequeñas variaciones.

1. Cambiamos los valores de las poblaciones iniciales haciendo que en inicio los susceptibles sean 1600 y los infectados 40.

2. El parámetro de contagio 'a' será variable con el tiempo con valor: [math]a=0.003/1+t[/math] Esto significa que para el momento inicial tendrá un valor de 0.003; pero al ser el denominador negativo según avance el tiempo se ira haciendo cada vez mas pequeño; es decir, que cuanto mas avance el tiempo se tendrán menos posibilidades de ser infectado en el contacto de las dos poblaciones. Matemáticamente esto significa que el primer sumando de ambas ecuaciones, que es en el que interviene "a", se hará cada vez menor, por lo que "S" decrecerá mas lentamente (al tener signo negativo) e "I" crecerá mas lentamente (al tener signo positivo).

El código utilizado y los resultados obtenidos son los siguientes.

clear all

%Valores del tiempo
t0 = 0;
tN = 40;
h = 0.1;
N = round((tN-t0)/h); 
t = t0:h:tN;

%Vectores que contendrán la solución
S = zeros(1,N+1);
I = zeros(1,N+1);
a = zeros(1,N+1);
%Valores iniciales
S(1) = 1600;
I(1) = 40;

%Valores de los parámetros
a(1) = 0.003/(1+t0);
b = 0.3;
c = 0.01;

%Bucle para sacar la componente i+1 de cada vector desde la primera hasta la N
for i = 1:N
 
 a(i+1) = 0.003/(1+t(i));
 
 K1 = -a(i)*S(i)*I(i);  
 K2 = -a(i)*S(i)*I(i) + K1*h;
 S(i+1) = S(i) + h/2*(K1+K2); 
 
 L1 = (a(i)*S(i)*I(i)) -I(i)*(b+c);
 L2 = (a(i)*S(i)*I(i)) -I(i)*(b+c) + L1*h;
 I(i+1) = I(i) + h/2*(L1+L2);
 
end

%Gráficas
hold on
plot (t,S,'-')
plot (t,I,'-r')
hold off




grafica------

Como vemos, al disminuir el ratio de contagio conseguimos que parte de la población sana no se infecte; y cuando esta desaparece por culpa de los términos "-bI" y "-cI", la población sana se mantiene constante. Si al contrario de esto el parámetro "a" tuviera un denominador menor que 1, cada vez el riesgo de contagio seria mayor y la disminución de población sana y aumento de los infectados sería mucho mas rápido.