Disease, Social Distancing, Economic Impact
Model was written in NetLogo 6.1.1
•
Viewed 445 times
•
Downloaded 27 times
•
Run 0 times
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
Comments and Questions
Please start the discussion about this model!
(You'll first need to log in.)
Click to Run Model
globals [max-infected cumulative-output] turtles-own[ infected? immune? distanced? dead? ] to setup clear-all setup-turtles setup-infected setup-distancers set max-infected (count turtles with [infected?]) set cumulative-output (0) reset-ticks end to setup-turtles create-turtles num-people [ set color white set shape "person" set size 2 set infected? false set immune? false set distanced? false set dead? false setxy random-pxcor random-pycor ] end to setup-distancers ask n-of num-people-distancing turtles [ set color blue set distanced? true ] end to setup-infected ask n-of init-infected turtles [ set color red set infected? true ] end to go ;;stop if everyone or noone is infected ;;if (count turtles with [infected? and not dead?] = 0) ;;or (count turtles with [infected?] = num-people) if (ticks > 365) [stop] infect-susceptibles recover-infected death recolor move-normal move-distancers calculate-max-infected calculalate-cumulative-output tick ;; sociability-of-non-distancers / Sociability-of-Distancers repeat ( 1 ) [ infect-susceptibles recover-infected death recolor move-normal calculate-max-infected calculalate-cumulative-output tick ] end to infect-susceptibles ;; S -> I ask turtles [ let infected-neighbors (count other turtles with [color = red] in-radius 2) if (random-float 1 < 1 - (((1 - transmissibility) ^ infected-neighbors)) and not immune?) [set infected? true] ] end to recolor ask turtles with [infected? and not dead?] [ set color red] end to move-normal ask turtles with [not dead? and not distanced?] [ right random 360 ;;get a new random heading forward sociability-of-non-distancers ] end to move-distancers ask turtles with [distanced? and not dead?][ right random 360 forward Sociability-of-Distancers ] ask turtles with [dead?][ forward 0 ] end to recover-infected ;;I -> R ;;avg case length is 2 weeks. ;;should have 50% chance of becoming immune at 2 weeks ;;if we are saying each tick equals 1 day, ;;daily odds of recovering should be (1-x)^14=.5, x= 0.0483 ask turtles with [infected? and not dead?] [ if random-float 1 < 0.0483 [ set infected? false ifelse are-survivors-immune? [ set immune? true set color gray set distanced? false ] [ set color white ] ] ] end to death ;;avg case length is 2 weeks. ;;2% of infected die, ;;if we are saying each tick equals 1 day, ;;and 2% of sick patients should be dead at 2 weeks ;;daily mortality should be (1-x)^14=.98, x= 0.00144201 ask turtles with [infected?] [ if random-float 1 < 0.00144201 [set dead? true set color pink ] ] end to calculate-max-infected let x (count turtles with [infected? and not dead?]) if x > max-infected [set max-infected x] if x = 0 [ask turtles with [distanced?][ set distanced? false set color white ] ] end to calculalate-cumulative-output let y ((count turtles with [infected? and not dead?] * .5) + (count turtles with [not infected? and not distanced?] * 2) + (count turtles with [not infected? and distanced?])) set cumulative-output (cumulative-output + y) end to-report total-adjusted-output report cumulative-output / (num-people * 2 * (ticks + 1)) end to-report calculate-daily-output report (((count turtles with [infected? and not dead?] * -1) + (count turtles with [dead?] * -5) + (count turtles with [not infected? and not distanced?] * 2) + (count turtles with [not infected? and distanced?] * 1.5)) / (num-people * 2)) end to-report max-infected-prop report max-infected / num-people end to-report prop-dead let y (count turtles with [dead?]) report y / num-people end to-report prop-uninfected report (count turtles with [not infected? and not immune?]) / num-people end
There are 2 versions of this model.
Attached files
File | Type | Description | Last updated | |
---|---|---|---|---|
Disease, Social Distancing, Economic Impact.png | preview | The Curve | over 4 years ago, by Alex Brown | Download |
This model does not have any ancestors.
This model does not have any descendants.