MRC Centre for Global Infectious Disease Analysis, Imperial College London
2025-02-13
odin
created to integrate ODEs (e.g. for compartmental models) in R with a domain-specific language (DSL)mcstate
and dust
emerged during the COVID-19 pandemicdust
and mcstate
odin
Design of a new architecture, rewiring data, model and parameters
Design of a new interface
Development of automatic differentiation algorithms
monty
models can be built from
odin
and datamonty
modelmonty
monty
: A framework to handle statistical models (defined by their domain and density)odin
and monty
“collaborate” but remain independentdt <- 1.0 / freq
p_IR <- 1 - exp(-(gamma) * dt)
S0 <- 1000
freq <- user(4)
N <- S + I + R
p_inf <- beta * I / N * dt
p_SI <- 1 - exp(-(p_inf))
n_SI <- S * p_SI
n_IR <- I * p_IR
update(time) <- (step + 1) * dt
update(S) <- S - n_SI
update(I) <- I + n_SI - n_IR
update(R) <- R + n_IR
update(cases_cumul) <- cases_cumul + n_SI
update(cases_inc) <- if (step %% freq == 0) n_SI else cases_inc + n_SI
initial(time) <- 0
initial(S) <- S0
initial(R) <- 0
initial(I) <- I0
initial(cases_cumul) <- 0
initial(cases_inc) <- 0
beta <- user(0.2)
gamma <- user(0.1)
I0 <- user(10)
odin
DSL is smallGoal: a large class of odin
models and the DSL monty
models can autodifferentiate
monty
visionodin2
+monty
)dust2
)monty
)(switch to RStudio and Ed here)
mcstate
/dust
and original odin
odin
& monty
bookodin
-monty
Workshop📅 24–25 March 2025 📍 White City, Imperial College London
✅ Hybrid participation available ✅ Travel grants available ✅ Lightning talk slots!
🔗 Register now here!
⚠️ Deadline: 19/02 – Don’t miss out!