Matlab - Modelo de epidemias SIR con ecuaciones diferenciales

 
Vista:

Modelo de epidemias SIR con ecuaciones diferenciales

Publicado por Martha B. (3 intervenciones) el 02/11/2015 03:47:45
Buenas noches, no se mucho de programacion, y necesito obtener un codigo que me grafique curva epidemiologica del modelo SIR. Aqui adjunto un archivo de dicho tema. De los valores dados, pueden ser aleatorios (poblacion inicial, probabilidad de contagio, etc.)
Liga: http://www.uantof.cl/facultades/csbasicas/Matematicas/academicos/emartinez/Dinamica/epidemia/epi1.html
Muchas gracias por su atencion
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Daniel
Val: 269
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Modelo de epidemias SIR con ecuaciones diferenciales

Publicado por Daniel (264 intervenciones) el 02/11/2015 18:20:16
Primero, las ecuaciones diferenciales que representan una epidemia están mal escritas en la pagina que citas.
Las ecuaciones del modelo SIR la pueden encontrar en https://es.wikipedia.org/wiki/Modelaje_matem%C3%A1tico_de_epidemias, o directamente en el paper de Kermack y McKendrick http://www.math.utah.edu/~bkohler/Journalclub/kermack1927.pdf

El código que puedes usar para resolver el sistema es el siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function epidemia
 
beta=.03;
gamma=2;
x0=100;
y0=10;
z0=0;
tmax=6;
[t,x]=ode45(@epi,[0 tmax],[x0,y0,z0]);
 
subplot(3,1,1),plot(t,x(:,1)),title('Susceptibles')
subplot(3,1,2),plot(t,x(:,2)),title('Infectados')
subplot(3,1,3),plot(t,x(:,3)),title('Recobrados')
 
    function dx = epi(~,x)
        dx = zeros(3,1);
        dx(1) = -beta*x(1)*x(2);
        dx(2) = +beta*x(1)*x(2)-gamma*x(2);
        dx(3) = +gamma*x(2);
    end
end


Comentanos como te fue

Saludos

Daniel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Miguel Angel

Modelo de epidemias SIR con ecuaciones diferenciales

Publicado por Miguel Angel (4 intervenciones) el 03/11/2015 18:19:42
Buen aporte Daniel, alguien sabe como hacer lo mismo pero el Visual Basic... Gracias de Antemano
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Modelo de epidemias SIR con ecuaciones diferenciales

Publicado por Martha B. (3 intervenciones) el 27/11/2015 08:35:51
Hola Daniel , me hiciste mucha ayuda con el codigo, y me fue bien, ahora solo tengo que jugar con la tasa de contagio, y tambien anadir muertes y nacimientos al modelo me podrias ayudar con las muertes y nacimientos? De antemano muchas gracias! la proxima semana expongo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Modelo de epidemias SIR con ecuaciones diferenciales

Publicado por Marcela Judith Mantilla (1 intervención) el 08/04/2018 15:41:40
Hola Daniel

Gran ayuda con el código, ahora solo tengo una duda en funtion, matlab no me permite correr. Me puedes indicar que esta pasando?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar