Mobility-Based SEAIR Epidemic Models

Tools for simulating, analysing, and fitting mobility-based SEAIR (Susceptible-Exposed-Asymptomatic-Infectious-Recovered) compartmental epidemic models with heterogeneous individual mobility. Each individual carries a fixed mobility trait that scales susceptibility and infectiousness through a rank-one kernel, extending the mobility-based compartmental framework of Jiang et al. (2025) by adding a latent stage and a behavioural split between asymptomatic and symptomatic infectiousness. Provides a numerical solver for the underlying partial differential equation system, closed-form computation of the basic reproduction number R0 and the final epidemic size, and a parametric least-squares routine for recovering the mobility distribution from an observed aggregate symptomatic time series.


seairmobility

Mobility-Based SEAIR Epidemic Models

seairmobility provides tools for simulating, analysing, and fitting mobility-based SEAIR (Susceptible–Exposed–Asymptomatic–Infectious– Recovered) compartmental epidemic models with heterogeneous individual mobility.

Each individual in the population carries a fixed mobility trait m ∈ (0, 1) that scales both susceptibility and infectiousness via a rank-one kernel. The infectious period is split into an asymptomatic stage with relative infectiousness α and a symptomatic stage with mobility-reduction factor δ.

The package extends the mobility-based SIR framework of Jiang, Chu, and Li (2025, SIAM J. Appl. Math. 85(5), 2355–2375, doi:10.1137/24M1691557).

Features

  • seair_solve() — numerical solver for the mobility-based SEAIR PDE system (method-of-lines discretisation + deSolve).
  • R0_seair() — closed-form basic reproduction number.
  • final_size() / final_size_general() — final epidemic size via the scalar fixed-point equation.
  • fit_mobility() — parametric (Beta-mixture) least-squares fit of the mobility distribution from an observed symptomatic time series.

Minimal example

library(seairmobility)

pars <- seair_params(beta = 1.5, sigma = 0.3, kappa = 0.2,
                     gamma_A = 0.1, gamma_I = 0.13,
                     alpha = 0.5, delta = 0.3)

m    <- seq(0, 1, length.out = 101)
f    <- dbeta(m, 2, 2)
init <- seair_init(m, f, I_seed = 1e-4)

sol  <- seair_solve(init, pars, times = seq(0, 80, by = 1))
plot_seair(sol, which = c("S", "I", "R"))

R0_seair(pars, f, m_grid = m)
final_size(pars, f, m_grid = m)

License

MIT

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("seairmobility")

0.1.0 by Weinan Wang, 6 months ago


Browse source code at https://github.com/cran/seairmobility


Authors: Weinan Wang [aut, cre]


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports deSolve, stats, graphics

Suggests testthat


See at CRAN