Skip to content

Commit 97f3722

Browse files
incremental progress on debugging
1 parent 9ab74a7 commit 97f3722

File tree

2 files changed

+10
-21
lines changed

2 files changed

+10
-21
lines changed

src/penn_chime/models.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
import pandas as pd # type: ignore
1414

1515
from .parameters import Parameters
16-
from .utils import SimSirModelAttributes
1716

1817
class SimSirModel:
1918

@@ -98,6 +97,9 @@ def __init__(self, p: Parameters):
9897
self.admits_df = admits_df
9998
self.census_df = census_df
10099

100+
#if p.n_days_since_first_hospitalized is None:
101+
# continue
102+
101103
if p.n_days_since_first_hospitalized is not None and p.doubling_time is None:
102104
# optimize doubling_time
103105
argmin_dt = None
@@ -130,12 +132,13 @@ def __init__(self, p: Parameters):
130132
recovered,
131133
beta,
132134
gamma,
133-
p.n_days #+ p.n_days_since_first_hospitalized
135+
p.n_days # + p.n_days_since_first_hospitalized
134136
)
135137
dispositions_df = build_dispositions_df(raw_df, rates, p.market_share)
136138
admits_df = build_admits_df(dispositions_df, p.n_days_since_first_hospitalized)
137139
census_df = build_census_df(admits_df, lengths_of_stay, p.n_days_since_first_hospitalized)
138140

141+
self.population = p.population
139142
self.infected = current_infected
140143
self.intrinsic_growth_rate = intrinsic_growth_rate
141144
self.gamma = gamma
@@ -160,7 +163,7 @@ def run_projection(self, p: Parameters, doubling_time: float) -> Tuple[pd.DataFr
160163
market_share = p.market_share
161164
initial_i = 1 / p.hospitalized.rate / market_share
162165

163-
S, I, R = self.susceptible, initial_i, self.recovered
166+
S, I, R = p.population - initial_i, initial_i, self.recovered
164167

165168
# mean recovery rate (inv_recovery_days)
166169
gamma = 1 / recovery_days
@@ -203,6 +206,9 @@ def loss_dt(self, p: Parameters) -> float:
203206
# we shall optimize squared distance
204207
return (p.current_hospitalized - predicted_current_hospitalized) ** 2
205208

209+
def loss_ds(self, p: Parameters) -> float:
210+
pass
211+
206212

207213
@staticmethod
208214
def _intrinsic_growth_rate(doubling_time: Optional[float]) -> float:

src/penn_chime/utils.py

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -16,23 +16,6 @@
1616
RateLos = namedtuple("RateLos", ("rate", "length_of_stay"))
1717

1818

19-
SimSirModelAttributes = namedtuple(
20-
"SimSirModelAttributes",
21-
(
22-
"doubling_time",
23-
"intrinsic_growth_rate",
24-
"gamma",
25-
"beta",
26-
"r_t",
27-
"r_0",
28-
"doubling_time_t",
29-
"raw_df",
30-
"dispositions_df",
31-
"admits_df",
32-
"census_df"
33-
)
34-
)
35-
3619

3720

3821
def add_date_column(
@@ -72,7 +55,7 @@ def add_date_column(
7255
start = today - delta
7356
else:
7457
start = today
75-
end = start + timedelta(days=n_days + 1)
58+
end = start + timedelta(days=n_days + 1) + delta # the +delta part is a hypothesis by phil
7659
# And pick dates present in frame
7760
dates = pd.date_range(start=start, end=end, freq="D")[df.day.tolist()]
7861

0 commit comments

Comments
 (0)