Diferencia entre revisiones de «Modelo para epidemias (Grupo 17C)»
(→Demostraciones realizadas) |
(→Demostraciones realizadas) |
||
| Línea 222: | Línea 222: | ||
A continuación vamos a demostrar como cuando <math> S_0 \le \displaystyle\frac{a}{r} </math>, no hay epidemia ya que <math> I(t) \le I_0 </math>. Es decir, el número de infectados no aumenta y tienden a desaparecer de forma breve.<br /> | A continuación vamos a demostrar como cuando <math> S_0 \le \displaystyle\frac{a}{r} </math>, no hay epidemia ya que <math> I(t) \le I_0 </math>. Es decir, el número de infectados no aumenta y tienden a desaparecer de forma breve.<br /> | ||
: Empezando por el lado derecho de la inecuación:<br /> | : Empezando por el lado derecho de la inecuación:<br /> | ||
| − | : Si <math> I(t) \le I_0 </math>, derivando respecto del tiempo y sabiendo que <math> I(0)=I_0 </math> constante, vemos que <math> I' | + | : Si <math> I(t) \le I_0 </math>, derivando respecto del tiempo y sabiendo que <math> I(0)=I_0 </math> constante, vemos que <math> I'(t) \le 0 </math><br /> |
| + | : De la ec. 3 <math> r \cdot S(t) \cdot I(t)-a \cdot I(t) \le 0 \longrightarrow </math> | ||
De (3): r*S(t)*I(t)-a*I(t)<=0; r*S(t)*I(t)<=a*I(t); S(t)<=a/r, por tanto, al cumplirse esta inecuación para todo t, queda demostrada la desigualdad. | De (3): r*S(t)*I(t)-a*I(t)<=0; r*S(t)*I(t)<=a*I(t); S(t)<=a/r, por tanto, al cumplirse esta inecuación para todo t, queda demostrada la desigualdad. | ||
Revisión del 14:22 6 mar 2015
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Modelo para epidemias (Grupo 17-C) |
| Asignatura | Ecuaciones Diferenciales |
| Curso | Curso 2014-15 |
| Autores | Alejandro Calleja Ortega, Álvaro Pintor Sousa, Juan Antonio Rebollo Parada, Santiago Santillana Prados, Marcos Torre Escapa, José Luis Peñaranda Ezpondaburu |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
1 Introducción y consideraciones iniciales
Se va a proceder al estudio del comportamiento temporal de una enfermedad infecciosa sin extensión espacial.
El crecimiento de una epidemia podrá asimilarse al modelo logístico.
1.1 Hipótesis iniciales
1. La población es un número fijo y cada miembro de la población es susceptible a la enfermedad.
2. La duración de la enfermedad es larga, de manera que no se cura durante el periodo de estudio.
3. Todos los individuos infectados son contagiosos y circulan libremente entre la población.
4. Cada contacto de una persona infectada con una persona no infectada redunda en la transmisión de la enfermedad.
1.2 Valores iniciales
- La ciudad de estudio posee 500.000 habitantes.
- Al inicio de la primera semana de registro se contabilizaron 200 casos.
- Durante la primera semana aparecieron 300 nuevos casos.
1.3 Variables
- t: Periodo de tiempo de análisis (en semanas).
- N: Población.
- c: Número de contactos con otros individuos de cada persona infectada por unidad de tiempo.
2 Modelo EDO de primer orden
Se llamará I(t) al número de infectados al tiempo t.
El problema vendrá dada por la ecuación logística: [math] I'(t)=\frac{c}{N} \cdot I(t) \cdot (N-I(t)) [/math]
2.1 Número de contactos de una persona infectada
Utilizaremos un método numérico para calcular mediante Euler el número de contactos de una persona infectada con otros individuos por semanas.
Elegiremos el valor c aquel que minimice los valores calculados, mediante la siguiente fórmula:
- [math] \vert I (primera semana) − 500 \vert [/math]
h=0.01;
c0=0.01;
cN=0.99;
c=c0:h:cN;
k=length(c);
y0=200;
y(1)=y0;
N=500000;
for i=1:99;
c(i)=i/100;
m(i)=N*y0/(y0+(N-y0).*exp(-c(i)));
z(i)=abs(500-m(i));
end
plot(c,z)
2.2 Evolución de la epidemia
Deseamos conocer la evolución del número de infectados a lo largo de las semanas, para ello emplearemos los métodos de Heun y Runge-Kutta de orden 4.
N=500000;
h=0.01;
I=[];
I0=200;
I(1)=I0;
c=0.92;
n=1;
t0=0;
while I<400000
% Método de Heun
K1=I(n)*(c/N)*(N-I(n));
K2=(I(n)+K1*h)*(c/N)*(N-I(n)+K1*h);
I(n+1)=I(n)+(h/2)*(K1+K2);
n = n+1;
end
tNI=h*(length(I)-1);
tI=t0:h:tNI;
plot(tI,I)
valor6semanasheun= I(6/h)
tiempo400000infectados=round(n/100)
N=500000;
h=0.01;
s0=200;
s(1)=s0;
c=0.92;
k=1;
t0=0;
% Método Runge-Kutta
while s<400000
C1=s(k)*(c/N)*(N-s(k));
C2=(s(k)+1/2*C1*h)*(c/N)*(N-(s(k)+1/2*C1*h));
C3=(s(k)+1/2*C2*h)*(c/N)*(N-(s(k)+1/2*C2*h));
C4=(s(k)+C3*h)*(c/N)*(N-(s(k)+h*C3));
s(k+1)=s(k)+(h/6)*(C1+2*C2+2*C3+C4);
k=k+1;
end
tNS=h*(length(s)-1);
tS=t0:h:tNS;
plot(tS,s,'g')
Valor6semanasrungekutta= s(6/h)
tiempo400000infectados=round(k/100)
Comprobamos que en las gráficas el número de infectados es siempre creciente.
No podemos definir un intervalo de máxima infección ya que las gráficas crecen de forma exponencial, es decir el número de infectados seguirá incrementándose hasta que el total de la población haya sido infectada.
Además de las gráficas, el código nos devuelve el número de infectados para 6 semanas y el tiempo que se tarda en llegar a 400.000 infectados.
- Método de Heun: A las 6 semanas hay 45.065 infectados. Se llega a los 400.000 infectados a las 10 semanas.
- Método de Runge-Kutta: A las 6 semanas hay 45.032 infectados. Se llega a los 400.000 infectados a las 10 semanas.
N= 500000; % población total
M= 10000; % umbral de población que asigna tasas de infección decrecientes ara valores inferiores
c=0.92; % contagio que optimiza el error(apartado 1)
ti=0; tf=4*3; % calcularemos la gráfica para un período de 3 meses de propagación (4 semanas por 12 meses)
h=0.01;
t= ti:h:tf;
k=(tf-ti)/h;
I1=zeros(1,k+1);
I10=9700;
I1(1)=I10;
for i=1:k
K1 = (c*I1(i))/N*(N-I1(i))*((I1(i)/M)-1);
K2 = (c*(I1(i)+K1*h))/N*(N-(I1(i)+K1*h))*(((I1(i)+K1*h)/M)-1);
I1(i+1) = I1(i) + (h/2)*(K1+K2);
end
I2=zeros(1,k+1);
I20=10200;
I2(1)=I20;
for j=1:k
L1 = (c*I2(j))/N*(N-I2(j))*((I2(j)/M)-1);
L2 = (c*(I2(j)+L1*h))/N*(N-(I2(j)+L1*h))*(((I2(j)+L1*h)/M)-1);
I2(j+1) = I2(j) + (h/2)*(L1+L2);
end
I3=zeros(1,k+1);
I30=30000;
I3(1)=I30;
for l=1:k
P1 = (c*I3(l))/N*(N-I3(l))*((I3(l)/M)-1);
P2 = (c*(I3(l)+K1*h))/N*(N-(I3(l)+P1*h))*(((I3(l)+P1*h)/M)-1);
I3(l+1) = I3(l) + (h/2)*(P1+P2);
end
hold on
plot(t,I1)
plot(t,I2,'m')
plot(t,I3,'g')
legend('Io=9700','Io=10200','Io=30000','location','best')
hold off
Los infectados solo tienden a desaparecer en el caso de [math] I_0=9.700 [/math], pues [math] I_0\ltM [/math]. En los otros dos casos la infección crece por ser [math] I_0\gtM [/math].
La evolución de los infectados en el caso en los que Io sea igual a 10.200, alcanza su máximo aproximadamente en la semana 4. y en el caso en que [math] I_0=30.000 [/math], alcanza su máximo aproximadamente en la
semana 1.
En el caso de [math] I_0=9.700 [/math], al ser una evolución decreciente el máximo se sitúa al inicio del estudio.
3 Modelo SIR
Vamos a considerar la utilización del modelo SIR para poder abarcar un estudio más general.
Para ello supondremos una población total constante de N individuos, así como la introducción de un grupo de infectados que es introducido en la población.
Plantearemos así la descripción temporal del grupo de individuos infectados.
3.1 Clases de población
Impondremos en el estudio que los individuos que se recuperen de la enfermedad, se vuelven inmunes a ella, resultando tres clases de población:
- Individuos susceptibles de infectarse: S
- Individuos ya infectados con capacidad de infectar a individuos sanos: I
- Grupo de individuos recuperados, inmunes, aislados y muertos: R
- [math] S \rightarrow I \rightarrow R [/math]
Llamaremos S(t), I(t) y R(t) a la cantidad de individuos susceptibles de infectarse, ya infectados y del grupo de recuperados, inmunes, aislados y muertos respectivamente; al cabo de t unidades de tiempo.
3.2 Suposiciones sobre el desarrollo de la enfermedad
- El número de infectados crece proporcionalmente al número de infectados y susceptibles, denominaremos a esta tasa de infección r. El número de individuos susceptibles de infectarse decrece con esta misma tasa r.
- La tasa de miembros infectados que pasan a la clase de removidos es proporcional al número de infectados solamente. El número de individuos recuperados crece con una tasa a, que denominaremos tasa de remoción.
- El tiempo de incubación es despreciable, es decir un individuo que siendo susceptible de padecer la infección, se infecta, automáticamente se vuelve individuo infeccioso.
3.3 Demostraciones realizadas
El sistema que gobierna el modelo SIR planteado será:
[math] \begin{cases} S'=-rSI, \text{ para } t\gt0\\ I'=rSI-aI,\\ R'=I,\\ S(0)=S_0, I(0)=I_0, R(0)=0 \end{cases} [/math]
Vamos a demostrar que [math] S(t)+I(t)+R(t)=S_0 +I_0 =N [/math], para un tiempo mayor o igual a 0.
- A la izquierda de la igualdad tenemos la suma de tres funciones que dependen del tiempo, mientras que a la derecha tenemos la suma de dos valores constantes.
- Como consecuencia de esto, si derivamos en ambos lados respecto del tiempo, tendremos que la suma de las derivadas de las funciones tendrá que ser nula:
- [math] S’(t)+I’(t)+R’(t)=0 : (Ec. 1) [/math]
- Según las ecuaciones planteadas en el sistema indicado:
- [math] S’(t)= -r \cdot S(t) \cdot I(t) : (Ec.2) [/math]
- [math] I’(t)=r \cdot S(t) \cdot I(t)-a \cdot I(t) : (Ec.3) [/math]
- [math] R’(t)=a \cdot I(t) : (Ec.4) [/math]
- Sustituyendo en la Ec. 1:
- [math] S’(t)+I’(t)+R’(t)= -r \cdot S(t) \cdot I(t)+r \cdot S(t) \cdot I(t)-a \cdot I(t)+a \cdot I(t)=0 [/math]
- Quedando demostrada la igualdad.
A continuación vamos a demostrar como cuando [math] S_0 \le \displaystyle\frac{a}{r} [/math], no hay epidemia ya que [math] I(t) \le I_0 [/math]. Es decir, el número de infectados no aumenta y tienden a desaparecer de forma breve.
- Empezando por el lado derecho de la inecuación:
- Si [math] I(t) \le I_0 [/math], derivando respecto del tiempo y sabiendo que [math] I(0)=I_0 [/math] constante, vemos que [math] I'(t) \le 0 [/math]
- De la ec. 3 [math] r \cdot S(t) \cdot I(t)-a \cdot I(t) \le 0 \longrightarrow [/math]
De (3): r*S(t)*I(t)-a*I(t)<=0; r*S(t)*I(t)<=a*I(t); S(t)<=a/r, por tanto, al cumplirse esta inecuación para todo t, queda demostrada la desigualdad.