-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' of https://github.com/matsim-vsp/epi-net-sim
- Loading branch information
Showing
1 changed file
with
49 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,50 @@ | ||
# epi-net-sim | ||
epidemiological network-based ABM written in Julia | ||
EpiNetSim is an epidemiological network-based ABM toy model written in Julia. | ||
|
||
## Run Locally | ||
|
||
After cloning this repository and navigating into the folder on your terminal, you can run the toy model with the following command: | ||
``` bash | ||
julia src/main/julia/run_locally.jl | ||
``` | ||
|
||
You can change the input variables in run_locally.jl as needed: | ||
- seeds: number of times to run model. | ||
- iterations: number of time steps (e.g. days) to simulate. | ||
- base_susceptibilities: probability that a susceptible agent will be infected by an infectious agent given contact. Multiple values may be provided in array. | ||
- recovery rate: probality an agent will switch from the disease state "Infectious" to the disease state "Recovered". For instance, a value of 0.2 means it will take an average of 5 days for an individual to recover. | ||
- network_structures: network structure connecting agents, options include ["regular", "random", "smallworld", "smallworldreg", "preferential"] | ||
- local_global_scenarios: the risk reduction stategy that agents will apply. Options include ["base","global","local1","local2","local1_and_2","global_local1","global_local1_and_2"] | ||
- mean_degree: mean degree of network | ||
- days_until_showing_symtoms: length of "Presymptomatic" state, in which agent can transmit disease but it is not detectable in the context of risk reduction strategies. If set to 0, "Presymptomatic" State is excluded. | ||
- output_folder: custom folder name for storing output files. If missing, a folder will be generated with timestamp as name. | ||
|
||
## Run on Cluster | ||
For large parameter combinations, it may make sense to run the toy model on a computing cluster. run_on_cluster.jl is one example of a run script for this purpose. On SLURM-based cluster, the following exemplary shell script can begin the simulation: | ||
```bash | ||
#!/bin/sh | ||
|
||
#SBATCH -N 1 | ||
#SBATCH -t 01:30:00 | ||
|
||
module load julia | ||
|
||
OUTPUT_FOLDER_NAME=sensitivity_rec_0.5 | ||
|
||
mkdir $OUTPUT_FOLDER_NAME | ||
|
||
for prob in `seq 0.1 0.05 .3`; do | ||
julia run_on_cluster.jl $prob 0 $OUTPUT_FOLDER_NAME & | ||
julia run_on_cluster.jl $prob 1 $OUTPUT_FOLDER_NAME & | ||
julia run_on_cluster.jl $prob 2 $OUTPUT_FOLDER_NAME & | ||
done | ||
|
||
wait | ||
``` | ||
|
||
|
||
|
||
|
||
|
||
|
||
|