Modelos epidemiológicos (Grupo 3A)
De MateWiki
Revisión del 18:30 27 abr 2016 de Trabajocampos (Discusión | contribuciones)
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Modelos Epidemológicos (Grupo 3A) |
| Asignatura | Ecuaciones Diferenciales |
| Curso | Curso 2015-16 |
| Autores | Ignacio Mollá Carcaño, Pablo Revuelta Aragón, David González Hernández, Jose María García Rodríguez, Alejandro Martínez Gamonal |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
Contenido
1 Introducción y planteamiento del problema
2 Resolución del problema con una sola ecuación diferencial
3 Resolución del problema completo
Vamos a resolver el problema completo para ver como evolucionarían las poblaciones en un periodo de 40 días. Primero supongamos una población infectada inicial de 20 individuos y una población en riesgo de contagio de 800. Después supondremos el caso de 40 individuos enfermos y 10000 en riesgo de contagio. Para resolverlo usaremos el método de Euler con distintas discretizaciones y así ver la influencia de estas.
3.1 Situación inicial de /I_{0}=20 y S_{0}=800/)
%Euler
clear all
%Datos
%Introducimos los valores de las constantes
a=0.003;
b=0.3;
c=0.01;
h=input('Introducir valores de h:');
t0=0;
y0=input('Introducir vector [So,Io]:');
tN=40;
% calculamos los subintervalos
t=t0:h:tN;
N=(tN-t0)/h;
y=zeros(2,length(t));
y(:,1)=y0';
for i= 1:N;
y(:,i+1)=y(:,i)+h*[-a*y(1,i).*y(2,i);a*y(1,i).*y(2,i)-b*y(2,i)-c*y(2,i)];
end
% grafico
plot(t,y)
% vector que contiene la variación de la población de infectados con el tiempo
I=y(2,:);
% Días de máximos infectados.
[fila,col]=find(I==max(max(I)));
% Valor máximo de infectados.
Diademaximo=(col-1)*h
legend('Euler','Location','best'); %Lo ultimo es para que la legenda no interfieraY en este programa, sustituyendo las h para 0.1 0.01 0.001 y 0.0001 obtendremos los siguientes resultados.