The model has been implemented in ramp.xds. See the vignette..
The Model
Malaria is complex, but a good starting point is a simple model, called the SIS compartment model. A population is subdivided into susceptible (\(S\)) and infected and infectious (\(I\)) individuals, where the total population is \(H = S+I.\)
We let \(h\) denote the force of infection (FoI).
We let \(r\) denote the clearance rate for infections.
We assume that individuals become susceptible after recovering (See Fig. 1).
Fig 1: A diagram of the SIS Compartment Model
The dynamics are described by a pair of equations:
\[
\begin{array}{rl}
\dot{I} &= h S - rI \\
\dot{S} &= -hS + rI
\end{array}
\]
If we know \(H\), then one of these equations is redundant. Here, we compute:
\[
\dot{I} = h (H-I) - rI
\]
Steady States
Let the variable \(x\) denote the fraction infected, \((x = I/H)\). Substituting, we get:
\[
\dot{x} = h (1-x) - rx
\]
If \(h\) is constant, then we can easily compute prevalence at the steady state (denoted \(\bar x\)):
\[\bar x = \frac{h}{h+r}\]
At the steady state, the odds of infection are:
\[ \frac{\bar x}{1- \bar x} = \frac {h}{r}\]
Solutions
We can solve the equation above. Assuming no one is initially infected at time \(t=0,\) (i.e.\(x(0) = 0\)), the prevalence of infection increases dynamics with respect to age are given by the function:
For example, in a population where the FoI is one infection per year (\(h=1/365\)), and infections last around 200 days (\(r=1/200\)), we can plot the prevalence of infection over time in a cohort that was initially fully susceptible:
One advantage of the numerical approach is that it is not constrained by the need to find closed form solutions. For example, suppose that the FoI has a seasonal pattern:
mod <-last_to_inits(mod)mod$EIR_obj$season_par <-makepar_F_sin(bottom =0.1, pw=2)mod$EIR_obj$F_season <-make_function(mod$EIR_obj$season_par)show_season(mod)
mod <-xds_solve(mod, Tmax=730, dt=5)xds_plot_PR(mod)