El modelo SIR es un modelo matemático simplificado que describe cómo se propaga una enfermedad infecciosa en una población. El modelo se basa en un sistema de tres ecuaciones diferenciales que describen las tasas de cambio de las poblaciones Susceptible (S), Infectado (I) y Recuperado (R) con respecto al tiempo. Estas poblaciones se definen de la siguiente manera:
- Susceptible (S): Individuos que no han sido infectados y que, por lo tanto, pueden contraer la enfermedad.
- Infectado (I): Individuos que actualmente tienen la enfermedad y pueden transmitirla a individuos susceptibles.
- Recuperado (R): Individuos que se han recuperado de la enfermedad y, por lo tanto, no pueden volver a infectarse ni transmitir la enfermedad.
El modelo utiliza dos parámetros principales:
- Tasa de infección (beta): La probabilidad de que un individuo susceptible se infecte al entrar en contacto con un individuo infectado.
- Tasa de recuperación (gamma): La proporción de individuos infectados que se recupera por unidad de tiempo.
Al resolver este sistema de ecuaciones, se puede estudiar la dinámica de la propagación de la enfermedad y evaluar el impacto de diferentes parámetros en la evolución de la epidemia.
- Importar las funciones necesarias desde el script de utilidades:
dudt
ycreate_time_array
. - Definir la función
sir_eq
que representa el sistema de ecuaciones diferenciales del modelo SIR. Esta función toma las variables de estado (SusceptibleS
, InfectadoI
y RecuperadoR
), el tiempot
y los parámetros del modelo (beta
ygamma
), y devuelve las derivadas dS/dt, dI/dt y dR/dt. - Especificar las condiciones iniciales para las poblaciones de Susceptible, Infectado y Recuperado, y almacenarlas en la lista
u0
. - Definir los parámetros del modelo SIR: la tasa de infección
beta
y la tasa de recuperacióngamma
. - Crear un array de puntos de tiempo utilizando la función
create_time_array
. - Resolver el sistema de ecuaciones diferenciales utilizando la función
dudt
, que toma como argumentos la función que representa el sistema de ecuaciones (sir_eq
), las condiciones iniciales (u0
), el array de puntos de tiempo (t
) y los parámetros del modelo (params
). - La función
dudt
devuelve la solución numérica del sistema de ecuaciones diferenciales como un array de valores paraS
,I
yR
en cada punto de tiempo. - Utilizar Matplotlib para visualizar la evolución de las poblaciones de Susceptible, Infectado y Recuperado a lo largo del tiempo.