Skip to content

Commit b269207

Browse files
committed
Split projection timeline by when mitigation is imposed, not day 0
1 parent d247c6e commit b269207

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

src/penn_chime/models.py

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -147,17 +147,29 @@ def __init__(self, p: Parameters):
147147
self.daily_growth_rate_t = get_growth_rate(self.doubling_time_t)
148148

149149
def run_projection(self, p):
150+
if p.mitigation_date is not None:
151+
mitigation_day = (p.current_date - p.mitigation_date).days
152+
else:
153+
mitigation_day = 0
154+
155+
total_days = self.i_day + p.n_days
156+
157+
if mitigation_day < -self.i_day:
158+
mitigation_day = -self.i_day
159+
160+
pre_mitigation_days = self.i_day + mitigation_day
161+
post_mitigation_days = total_days - pre_mitigation_days
162+
150163
self.raw_df = sim_sir_df(
151164
self.susceptible,
152165
self.infected,
153166
p.recovered,
154167
self.gamma,
155168
-self.i_day,
156-
self.beta,
157-
self.i_day,
158-
self.beta_t,
159-
p.n_days
169+
self.beta, pre_mitigation_days,
170+
self.beta_t, post_mitigation_days
160171
)
172+
161173
self.dispositions_df = build_dispositions_df(self.raw_df, self.rates, p.market_share, p.current_date)
162174
self.admits_df = build_admits_df(self.dispositions_df)
163175
self.census_df = build_census_df(self.admits_df, self.days)

0 commit comments

Comments
 (0)