Skip to content

thomasvilches/multiple_strains

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

COVID-19 Agent Based Model

Quantifying the potential dominance of immune-evading SARS-CoV-2 variants in the United States

Pratha Sah et al

  • The branch NYC uses NYC specific data. You can clone the repository and use git checkout NYC to change the branch.

  • The branch us_states uses specific data for all states in US and calibrate it for all of them. You can clone the repository and use git checkout us_states to change the branch.

  • The branch rapid_vaccination uses data for US and run 2 counterfactual scenarios (no vaccination and half daily vaccination rate). You can clone the repository and use git checkout rapid_vaccination to change the branch.

Model details:

A stochastic, age-stratified agent-based computational model for the transmission dynamics of COVID-19. The computational model simulates autonomous agents (representing individuals in a human population) and their interactions within a constrained virtual environment. Agents follow the natural history of disease, including epidemiological stages of susceptible, infected and incubating, asymptomatic, presymptomatic, and symptomatic with either mild, severe, or critical illness, recovered, and dead.

Model features include:

  • Age structured with realistic contact dynamics
  • Asymptomatic, Presymptomatic transmission
  • Isolation of mild/severe cases
  • Isolation of symptomatic individuals
  • The average number of daily contacts can be changed to fit to data
  • Four strains, corresponding to when they were identified in the United States

How to download and run

Prerequisites: Julia 1.0.4, access to a cluster or a high-compute workstation.

  1. Download or clone the entire repository and navigate to the folder.
  2. Launch Julia and cctivate the project by: julia --project=.. Double check if the project environment is set correct by entering Pkg mode by typing ].
  3. Instantiate the project by typing ] instantiate.
  4. Include the file simulations_cluster.jl using the command
include("simulations_cluster.jl")

Note, that in our version of this file we connect to our compute cluster using the Slurm cluster software. The user may want to simply use addprocs to run locally on their computer, run everything in a serial manner (takes long), or use a compute cluster with the help of ClusterManagers. The simulations/scenarios can be launched by executing

run_param_scen(b,h,init,fm,fs,trans3,trans4,vaccination,r,index,day,status,days_after)

to run the scenarios. The arguments are

  • b: Float64 - probability of transmission for presymptomatic cases.
  • h: Int64 - previous herd immunity in the population (either 5, 10, 20, 30 or 50%).
  • init: Int64 - number of initial infected for third strain.
  • fm and fs: Float64 - probability of isolation for symptomatic cases (mild and severe).
  • trans3: Float64 - third strain transmissibility.
  • trans4: Float64 - third strain transmissibility.
  • vaccination: Bool - apply vaccination?.
  • r: Float64 - vaccine effectiveness reduction for third strain.
  • index: Int64 - index to differ different files (see Model output).
  • day: Int64 - after this time of simulation, every individual is allowed to go back to normal contacts.
  • status: Integer - On April 3, vaccinated individuals are allowed to go back to the normal number of contacts. This argument controls if they need to have first or second dosis (set it to '1' or '2'). If you do not want to allow them to go back to normal, set it to '3'.
  • days_after: Int64 - how many days after the desire dosis the individuals are allowed to go back to normal behavior.

All the scenarios presented in the paper can be run adding the file 'scen.jl'

include("scen.jl")

WARNING: this file runs several scenarios (572) which may take a lot of time if one does not have a cluster.

Model output

First, make sure that the address 'main_folder' inside function 'create_folder' in file simulations_cluster points to a valid directory in your system.

The model is parameterized to fit to data from US from Octuber to May. The incidence data was taken from NY times. The function 'run_param_scen' will generate a folder, inside the pointed directory, named results_b_herd_immu_h_vaccine_trans4_r_index in which all the variables are the ones cited in the previous section. b is the probability, but the '.' is replaced by '_'.

Inside this folder, one will find different data files. The most important ones are the ones named simlevel_*_inc_**.dat in which

  • * stands for lat, lat2, lat3, lat4, hos, hos2, hos3, hos4, icu, icu2, icu3, icu4, ded , ded2, ded3, ded4. Which are the number of infections, Non-ICU hospitalizations, ICU hospitalizations and deaths generated by each one of the strains.

  • ** stands for all, ag1, ag2, ag3, ag4, ag5, ag6. Which are the data for the entire population or each one of the six age groups in the model.

The files contain a modeltime x number of simulations (by default 500x500) matrix. The first row is the heading of the file and the first column of it is the timeline. The other columns are the incidence of a given outcome in the given day of simulation.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages