epidemiology

SkillAI & models

Disease modeling and epidemiological analysis: SIR/SEIR compartmental models, R0 estimation, outbreak simulation, incidence/prevalence forecasting, and intervention impact modeling.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the epidemiology skill

What this skill tells your AI

The instructions your AI receives, as published by mkurman/zorai in skills/scientific-skills/epidemiology/SKILL.md and read by ahel’s review.

Overview

Epidemiological disease modeling with compartmental models (SIR, SEIR), R0 estimation, outbreak simulation, incidence/prevalence forecasting, and intervention impact analysis. Covers the core ODE-based approach used in public health and infectious disease research.

Installation

uv pip install scipy numpy matplotlib

SIR Model

import numpy as np
from scipy.integrate import solve_ivp

def sir(t, y, beta, gamma):
    S, I, R = y
    dS = -beta * S * I
    dI = beta * S * I - gamma * I
    dR = gamma * I
    return [dS, dI, dR]

beta, gamma = 0.3, 0.1
R0 = beta / gamma
print(f"R0 = {R0:.2f}")

sol = solve_ivp(sir, [0, 160], [0.99, 0.01, 0], args=(beta, gamma), dense_output=True)

SEIR Model

def seir(t, y, beta, sigma, gamma):
    S, E, I, R = y
    dS = -beta * S * I
    dE = beta * S * I - sigma * E
    dI = sigma * E - gamma * I
    dR = gamma * I
    return [dS, dE, dI, dR]

sol = solve_ivp(seir, [0, 200], [0.99, 0.005, 0.005, 0], args=(0.3, 0.2, 0.1))

Key Parameters

  • R0 (basic reproduction number): average secondary cases from one infected in a naive population
  • Beta: transmission rate (contacts * probability of infection per contact)
  • Gamma: recovery rate (1 / infectious period)
  • Sigma: incubation rate (1 / incubation period)

Workflow

  1. Estimate parameters from literature or case data
  2. Define compartment equations (SIR, SEIR, extended with age/risk strata)
  3. Solve ODE with solve_ivp
  4. Plot S, I, R curves vs time
  5. Run sensitivity: change beta/gamma and observe peak timing, total cases
  6. Add interventions by reducing beta over time (lockdown, masking, vaccination)
  7. Compare scenarios: no intervention vs vaccination vs NPIs

References

Signals

GitHub stars
324
Forks
26
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
epidemiology
Source
github.com/mkurman/zorai