Skip to content


class SIRModel = MarkovModel<SIRState, SIRParameter>

SIR (susceptible-infectious-recovered) model for infectious disease outbreaks in epidemiology.


Run with:

birch sample \
  --model SIRModel \
  --input-file input/russian_influenza.json \
  --output-file output/russian_influenza.json \
  --ncheckpoints 14 \
  --nparticles 100 \
  --nsamples 10

The data set is of an outbreak of Russian influenza at a boy's boarding school in northern England (Anonymous, 1978). The model on which this is based is described in Murray et. al. (2018).

Any of the parameters and the initial conditions can be clamped by modifying the input file, input/russian_influenza.json.


The parameter model is given by: where is a rate of interaction in the population, the probability of infection when a susceptible individual interacts with an infectious individual, and the daily recovery probability.

The initial model for time is:

The transition model for time is: where is the number of interactions between infectious and susceptible individuals, the number of newly infected individuals, and the number of newly recovered individuals.

Population counts are then updated: