COVID-19 A Laycat's US Outbreak Model

This is a non-expert's simple extrapolation of the past 11 days' COVID-19 experience within the US, projecting both further likely spread of the COVID-19 outbreak and the possible actual extent of infected individuals based on a presumed testing lag.

As with my earlier China extrapolation: The real message here is how quickly experience deviates below the projection here, suggesting containment efforts are effective. In the case of China, that began about two weeks after my initial post. I am a space alien cat on the Internet, not an expert.

I've probably fucked up all kinds of things. Cluebats welcomed.

How this model works

I'm using a simple exponential growth formula, and basing the expected number of cases (and deaths) from the 5 March 2020 case and death counts, based on what appears to be native community spread rates through the US from 20 February 2020 through 5 March (the period of visible community spread). This is a short window though one showing rapid growth.

It is overwhelmingly evident that the US does NOT have a solid handle on monitoring, and likely won't for at least another week, possible several. This both makes the data presented and model based on them more uncertain, and means that as monitoring improves, apparent case counts will likely increase rapidly. Again, this reflects experience in China.

Virus behaviour, population behaviour, public health measures, weather changes, sunspots, and timelords could all change things markedly.

Exponential growth function

The fomula for exponential growth is:

y(t) = a * e^(k * t)

See: https://www.mathsisfun.com/algebra/exponential-growth.html

Where:

  • y(t): quantity at time t
  • a: initial quantity
  • e: the natural log constant, about 2.7183
  • k: the grow rate per period.
  • t: the number of periods.

"Period" here is "days".

We can solve for k:

k = ln(y(t)/a)/t

This gives us the growth rate given two measurements t periods apart.

We can solve for t:

t = ln(y(t)/a)/k

In particular, if we solve for y(t) = 2 and a = 1, we get the doubling time.

I've written a simple gawk script which computes for k and doubling rate, and also projects the weekly (7 day) and fortnightly (14 day) growth rates.

Detection lag

A huge problem within the US is that confirmed cases are lagging actual infection dates by a substantial amount. How long that is is ... not entirely clear, though I'm going to assume a 14 day (two week) lag based on:

  • Initial infection is followed by a non-symptomatic period of about a week on average.
  • Seeking medical assistance has seen a further lag of several days in getting an appointment / performing a test.
  • Test results themselves take 4 days based on information I've seen.

The total lag is about 2 weeks.

I'd suggested that this could lead to as much as a 100-fold understatement of actual cases. Based on current data, that seems pessimistic: it's "only" about 47x greater than the published confirmed cases count -- a number that's moved around considerably, by the way, so don't put too much faith in that either. But it gives an indication.

We also get a doubling time of about 2.2 days, which means that however bad the situation is now, it's going to be twice as bad in a little over 48 hours. When you hear statements that the situation is "rapidly evolving" this is what is being referenced. Things are changing very quickly. Locations which may have low risk today may have a high risk in a day or two.

You should be finalising preparations and supplies runs about now, if not already.

Again: non-expert extrapolation based on early data, a simple model, and many uncertainties. I expect we'll likely see following trend, if not overshooting it, for a week or two, mostly as monitoring catches up to reality. I'm very much hoping we'll start to see a low-side numbers starting about two weeks out (18-22 March), as containment efforts begin to be effective. The caveat is that I don't see effective containment measures being enacted, certainly not on the scale that China performed starting ~22 January. In which case the projection here could well fit actual experience for longer.

As before, I'm posting this as a line in the sand of what my projection was. I hope and expect to be proved wrong on this within a couple of weeks. I'm dying to see how well this matches reality.

The professionals are apparently doing this as well

Dr. Messonier of the CDC mentioned 5 March in an NPR interview that there were numerous groups doing epidemic modelling to try to estimate the actual spread of SARS-CoV-2 within the US, though she pointedly refused to give any numbers herself. I have yet to find any published projections, but would be interested in seeing any.

The script

Hardcoded in (edit to modify) are the initial and current case counts. You'll need to supply days between these measures as well. Data are taken from Wikipedia's 2020 Coronavirus Outbreak in the United States article.

The script calcuates the growth rate, with an arbitrary high and low bound (basically assuming one day more or less error in the reported range -- it's kind of weak sauce but gives some idea of sensitivity), the doubling time, the weekly growth rate, and the 14-day growth rate.

It then produces two reports, one every day for 29 days, the other every seven days for 200 days. Both cut off if the infected population exceeds total US population, given as 330.4 million. Shown are projected deaths, cases, cases at a low or high growth rate, and as "w/ 14 day lag" the possible ground truth of total cases from which confirmed cases are drawn. I'll note that this presently exceeds 10,000 cases, and ... doubles ever 2.2 days or so. A rate which will hit 1,000,000 by 18 March.

By April 25, if present rates continue, the entire US is infected. At the WHO's 3.4% fatality rate, 11.2 million die, and given economic modelling, your retirement fund is trash.

(And then the disease may return in the fall....)

For Rest-of-world, you can substitute in values for that outbreak for a simiilar model. (I've got a separate script for this.) As values are hardcoded, it's a tad inflexible.

## Program Output

Minor reformatting aside, this is output as currently stands.

COVID-19 US Outbreak Model

Assumptions:
- init cases (2020-4-26): 14
- cases (2020-3-5): 175
- deaths (2020-3-5): 11
- daily growth rate: 1.316
- doubling time (days): 2.195
- 7 day growth: 6.83x
- 14 day growth/mon. lag: 46.59x

day date deaths cases @ lo dbl @ hi dbl w/ 14d lag
1 Mar 06, 2020 14 230 224 238 10,726
2 Mar 07, 2020 19 302 287 324 14,113
3 Mar 08, 2020 25 398 367 440 18,569
4 Mar 09, 2020 32 524 470 600 24,431
5 Mar 10, 2020 43 689 602 816 32,145
6 Mar 11, 2020 57 907 771 1,111 42,294
7 Mar 12, 2020 75 1,194 988 1,512 55,647
8 Mar 13, 2020 98 1,571 1,266 2,057 73,216
9 Mar 14, 2020 129 2,067 1,621 2,800 96,331
10 Mar 15, 2020 171 2,720 2,076 3,811 126,744
11 Mar 16, 2020 224 3,579 2,659 5,186 166,760
12 Mar 17, 2020 296 4,709 3,405 7,057 219,409
13 Mar 18, 2020 389 6,196 4,360 9,603 288,680
14 Mar 19, 2020 512 8,152 5,584 13,068 379,821
15 Mar 20, 2020 674 10,726 7,151 17,784 499,736
16 Mar 21, 2020 887 14,113 9,159 24,201 657,511
17 Mar 22, 2020 1,167 18,569 11,729 32,933 865,098
18 Mar 23, 2020 1,535 24,431 15,021 44,816 1,138,224
19 Mar 24, 2020 2,020 32,145 19,236 60,987 1,497,580
20 Mar 25, 2020 2,658 42,294 24,635 82,992 1,970,390
21 Mar 26, 2020 3,497 55,647 31,548 112,938 2,592,474
22 Mar 27, 2020 4,602 73,216 40,402 153,688 3,410,959
23 Mar 28, 2020 6,055 96,331 51,740 209,142 4,487,854
24 Mar 29, 2020 7,966 126,744 66,261 284,604 5,904,742
25 Mar 30, 2020 10,482 166,760 84,856 387,295 7,768,965
26 Mar 31, 2020 13,791 219,409 108,670 527,038 10,221,752
27 Apr 01, 2020 18,145 288,680 139,167 717,203 13,448,923
28 Apr 02, 2020 23,874 379,821 178,222 975,983 17,694,965
29 Apr 03, 2020 31,412 499,736 228,238 1,328,136 23,281,550
day date deaths cases @ lo dbl @ hi dbl w/ 14d lag
1 Mar 06, 2020 14 230 224 238 10,726
8 Mar 13, 2020 98 1,571 1,266 2,057 73,216
15 Mar 20, 2020 674 10,726 7,151 17,784 499,736
22 Mar 27, 2020 4,602 73,216 40,402 153,688 3,410,959
29 Apr 03, 2020 31,412 499,736 228,238 1,328,136 23,281,550
36 Apr 10, 2020 214,403 3,410,959 1,289,346 11,477,413 158,908,518
43 Apr 17, 2020 1,463,411 23,281,550 7,283,681 99,184,812 1,084,632,112
50 Apr 24, 2020 9,988,535 158,908,518 41,146,424 857,129,291 7,403,170,243

Source Code

https://pastebin.com/raw/Sn2jrG5f

Please note any observed errors / corrections.

Earlier

#coronavirus #covid-19 #covid19 #ncov2019 #epidemiology #epidemics #exponentialGrowth #IHopeIAmWrong #awk

1