Mixtures and convexity

A population made of many places, each with its own transmission rate: early growth is dominated by the fastest places, each place turns over on its own, and two convexity adjustments separate the growth from the turnover.

This is the argument of Cotton (2020), first set out in May 2020. It treats the places as evolving independently.

Independent places

Divide a city into neighbourhoods. The quantities that matter for policy are totals: the number infected, the growth of that number, and the number still susceptible when infections peak. Relabelling the neighbourhoods does not change them.

To isolate the effect of heterogeneous local rates, the neighbourhoods are taken to be independent, each a standard SIR epidemic with its own transmission rate and an equal seed. This is an assumption: real neighbourhoods interact, and dependence between them can change the totals.

The model

Neighbourhood transmission rates are $\beta = \bar\beta\,\eta$, where $\eta$ varies across neighbourhoods with mean 1. Recovery happens at rate $\gamma$. Write $\bar R = \bar\beta/\gamma$ for the reproduction number at the average rate.

The growth convexity

Early on nearly everyone is susceptible, and the total number infected grows like

$$\frac{i(t)}{i(0)} = e^{-\gamma t}\,\mathbb E\big[e^{t\bar\beta\eta}\big] .$$

By Jensen's inequality the average of the exponentials exceeds the exponential of the average. The fastest neighbourhoods dominate the total, and the growth rate read from it corresponds to a transmission rate

$$\beta_g = \frac1t\,\log\mathbb E\big[e^{t\bar\beta\eta}\big] = G\,\bar\beta, \qquad G > 1 .$$

For normally distributed $\eta$ with variance $\sigma^2$ this is

$$\beta_g = \bar\beta\Big(1 + \frac{t\,\bar\beta\,\sigma^2}{2}\Big) .$$

A model fitted to early growth therefore reads $R_g = G\,\bar R$, larger than the average reproduction number.

The herd convexity

A neighbourhood with rate $\beta$ turns over when its susceptible share falls to $\gamma/\beta$. Averaged over neighbourhoods, the susceptible share at the turnover is

$$s^* \approx \mathbb E\Big[\frac{\gamma}{\beta}\Big] = \frac{J}{\bar R}, \qquad J = \mathbb E\Big[\frac1\eta\Big] \ge 1,$$

the ratio of the arithmetic mean of the transmission rate to its harmonic mean.

Together

Combining the two,

$$s^* \approx \frac{J\,G}{R_g} .$$

The susceptible share at the turnover exceeds the textbook $1/R_g$ by the product of two convexity adjustments, one from Jensen's inequality on growth and one on the turnover. Peaks in different neighbourhoods also fall at different times, which adds a third factor $F$.

For a transmission rate that follows an Ornstein–Uhlenbeck process, the growth convexity is Vasicek's bond-price formula with the sign of the rate reversed.

A switching instance

Let each place's rate switch between $\bar\beta + \delta$ and $\bar\beta - \delta$ at rate $\nu$ in each direction, independently across places. A single place grows at the typical rate $\bar\beta - \gamma$. The total over many places grows at the mean rate, the top eigenvalue of the switching generator plus the diagonal of growth rates:

$$r_{\text{mean}} = \bar\beta - \gamma - \nu + \sqrt{\nu^2 + \delta^2} \;\approx\; \bar\beta - \gamma + K, \qquad K = \frac{\delta^2}{2\nu},$$

where $K$ is the Green–Kubo number of the transmission rate, the integral of its autocovariance. The growth convexity is then $G = 1 + K/\bar\beta$.

A simulation of 4,000 independent places, each starting with an equal seed and with $\bar R = 1.5$, reads these from the national total:

$\delta$, $\nu$ (per day)$R$ from national growthtextbook threshold $1 - 1/R$infected at the national peakfinal
0 (no switching)1.5033%34%58%
0.1, 0.11.6941%27%63%
0.2, 0.12.1153%20%72%
0.2, 0.032.3457%13%78%
0.25, 0.052.4960%10%80%

Recovery rate $\gamma = 0.2$ per day. National growth matched the eigenvalue, for example 0.221 per day simulated against 0.224 predicted.

Early growth reads $R$ between 1.7 and 2.5 while the average is 1.5. The national curve peaks with 10-27% infected, long before the threshold that the growth implies, and infection continues afterwards.

Code: 01_communities.py.