Cold Model / inside the airway
Day {{day.toFixed(1)}}
{{stage[0]}}Infection and response
Relative activity · 0–100 illustrative units| Process | Selected day | Default at same day |
|---|---|---|
| {{value(current[item.key])}} | {{value(baseline[index][item.key])}} |
{{selectedSeries.description}}
What is a cold, and what does this model leave out?
A cold is a syndrome: a cluster of upper-airway symptoms caused by several kinds of virus. Rhinoviruses are the most frequent cause. Feeling a cold coming on does not identify which virus you have. CDC: rhinoviruses.
In a typical rhinovirus cold, replication is concentrated in airway lining cells. Nearby cells release immune signals; these recruit immune cells and alter local tissue. Swelling, secretions and irritation contribute to symptoms. This is not the virus spreading uniformly through the whole body. Lower-airway illness can occur, especially in susceptible people.
In a small experimental study of 22 people with allergic rhinitis or asthma, nasal IL-8 and G-CSF rose alongside neutrophils. That supports local recruitment, but is not a universal quantitative recipe. Gern et al., 2000. Cell experiments also distinguish inflammatory signaling from direct antiviral defense: Piper et al., 2013.
The simulation is a teaching model with invented coefficients, not fitted clinical data. It combines many cell types and signals into six variables, assumes one well-mixed airway patch, and omits transmission, individual symptoms, fever, lung disease, immune history and reinfection. The timeline begins at exposure, not at your first symptoms. “Targeted response starts” is an intentionally simplified delay; real immune responses overlap.
Cold-like symptoms can also occur with flu or COVID-19; this app cannot diagnose them. CDC: cold versus flu.
Model equations, units and reproducibility
V = virus; I = infected lining fraction; F = antiviral signal; N = recruited cells; A = targeted response; S = symptom proxy. All except I are arbitrary model quantities. The displayed activity is 100x / (x + 0.35), a fixed saturating scale, not a percentage of cells or a probability.
dI/dt = 3.2V(1 − I) / (1 + 3F) − (0.65 + 5A)I
dF/dt = 3 × signaling × I − 1.1F
dN/dt = recruitment × (1.5I + 0.9F) − 0.85N
dA/dt = 2(I + 0.04)(1 − A) − 0.08A, after chosen delay; 0 before
dS/dt = 0.85N + 0.15I − 0.65S
Initial values: V = 0.025, I = 0.006, all others zero. Forward Euler integration: step 0.005 days, sampled every 0.1 days for 14 days. Negative numerical values are clamped to zero. Adaptive priming is implicit in the delay. No treatment effects can be inferred from these equations. The stage labels describe a broad sequence, not detected clinical milestones.
Everything runs in your browser. Assumptions and the selected day are kept in the URL so a copied link reproduces the view; no health information is requested or stored. Standard site analytics records page visits.