@@ -126,22 +126,22 @@ end
126126 critical_offset = Int16 (15 ), severeness_offset = Int16 (16 ), recovery = Int16 (20 ))
127127 inf_crit = InfectionState (Int8 (1 ), Int32 (- 1 ), dp_crit)
128128 # death is set well after the care ladder resolves
129- cc = CriticalHealthProfile (hospital_probability = 1.0 , critical_onset_to_hospital_admission = 0 ,
130- hospital_to_icu_probability = 1.0 , hospital_admission_to_icu_admission = 0 ,
129+ cc = CriticalHealthProfile (hospital_probability = 1.0 , severeness_onset_to_hospital_admission = 0 ,
130+ hospital_to_icu_probability = 1.0 , critical_onset_to_icu_admission = 0 ,
131131 icu_admission_to_icu_discharge = 5 , icu_discharge_to_hospital_discharge = 3 ,
132132 death_probability = 1.0 , critical_onset_to_death = 20 )
133133 care2, outcome2 = calculate_health_profile (cc, ind, inf_crit, rng)
134- @test care2. hospital_admission == 8
135- @test care2. icu_admission == 8
134+ @test care2. hospital_admission == 5
135+ @test care2. icu_admission == 8
136136 @test care2. icu_discharge == 13
137137 @test care2. hospital_discharge == 16
138138 @test outcome2. death == 28
139139 @test care2. ventilation_admission == - 1
140140
141141 # full critical ladder: guaranteed ventilation nests inside ICU which nests inside the ward.
142142 # discharges chain inward-out, so ventilation ends first, then ICU, then hospital.
143- cc_vent = CriticalHealthProfile (hospital_probability = 1.0 , critical_onset_to_hospital_admission = 0 ,
144- hospital_to_icu_probability = 1.0 , hospital_admission_to_icu_admission = 0 ,
143+ cc_vent = CriticalHealthProfile (hospital_probability = 1.0 , severeness_onset_to_hospital_admission = 0 ,
144+ hospital_to_icu_probability = 1.0 , critical_onset_to_icu_admission = 0 ,
145145 icu_to_ventilation_probability = 1.0 , icu_admission_to_ventilation_admission = 0 ,
146146 ventilation_admission_to_ventilation_discharge = 4 , ventilation_discharge_to_icu_discharge = 2 ,
147147 icu_discharge_to_hospital_discharge = 3 )
154154
155155 # cascading-off caveat: hospital_to_icu_probability set without hospital_probability is a no-op,
156156 # since ICU is gated behind a hospital admission that never happens
157- cc2 = CriticalHealthProfile (hospital_to_icu_probability = 1.0 , hospital_admission_to_icu_admission = 0 ,
157+ cc2 = CriticalHealthProfile (hospital_to_icu_probability = 1.0 , critical_onset_to_icu_admission = 0 ,
158158 icu_admission_to_icu_discharge = 5 )
159159 care3, _ = calculate_health_profile (cc2, ind, inf_crit, rng)
160160 @test care3. hospital_admission == - 1
232232 @testset " DefaultHealthProgression folds across a host's infections" begin
233233 rng = Xoshiro (1 )
234234 cc = CriticalHealthProfile (hospital_probability = 1.0 , hospital_to_icu_probability = 1.0 , death_probability = 1.0 ,
235- critical_onset_to_hospital_admission = 0 , hospital_admission_to_icu_admission = 0 ,
235+ severeness_onset_to_hospital_admission = 0 , critical_onset_to_icu_admission = 0 ,
236236 icu_admission_to_icu_discharge = 5 , icu_discharge_to_hospital_discharge = 3 ,
237237 critical_onset_to_death = 9 )
238238 hp = DefaultHealthProgression ()
256256 filed = _filed (sched, 1 )
257257 # two stays: hospital+ICU in, ICU+hospital out, twice over
258258 @test length (filed) == 8
259- @test (Int16 (4 ), CARE_HOSPITAL, true ) in filed # pathogen 1, critical_onset 4
260- @test (Int16 (20 ), CARE_HOSPITAL, true ) in filed # pathogen 2, critical_onset 20
259+ # the ward is entered at severeness onset, the ICU at critical onset
260+ @test (Int16 (3 ), CARE_HOSPITAL, true ) in filed # pathogen 1, severeness_onset 3
261+ @test (Int16 (4 ), CARE_ICU, true ) in filed # pathogen 1, critical_onset 4
262+ @test (Int16 (6 ), CARE_HOSPITAL, true ) in filed # pathogen 2, severeness_onset 6
263+ @test (Int16 (20 ), CARE_ICU, true ) in filed # pathogen 2, critical_onset 20
261264 @test count (f -> f[2 ] === CARE_HOSPITAL && f[3 ], filed) == 2
262265
263266 # earliest death wins
402405 hp = DefaultHealthProgression ()
403406 # only pathogen 1 carries a profile; pathogen 2 misses the index entirely
404407 index = _idx ((1 , 0 ) => CriticalHealthProfile (hospital_probability = 0.4 ,
405- critical_onset_to_hospital_admission = 1 , hospital_admission_to_hospital_discharge = 3 ))
408+ severeness_onset_to_hospital_admission = 1 , hospital_admission_to_hospital_discharge = 3 ))
406409
407410 function stays (n, coinfect:: Bool )
408411 rng = Xoshiro (1234 ); episodes = 0
436439 critical_onset_to_critical_offset = Poisson (5 ), critical_offset_to_severeness_offset = Poisson (3 ),
437440 severeness_offset_to_recovery = Poisson (10 ))
438441 crit = Critical (; dkw... , health = CriticalHealthProfile (
439- hospital_probability = 0.4 , critical_onset_to_hospital_admission = Poisson (1 ),
442+ hospital_probability = 0.4 , severeness_onset_to_hospital_admission = Poisson (1 ),
440443 hospital_admission_to_hospital_discharge = Poisson (8 ),
441- hospital_to_icu_probability = 0.3 , hospital_admission_to_icu_admission = Poisson (1 ),
444+ hospital_to_icu_probability = 0.3 , critical_onset_to_icu_admission = Poisson (1 ),
442445 icu_admission_to_icu_discharge = Poisson (5 ), icu_discharge_to_hospital_discharge = Poisson (2 ),
443446 death_probability = 0.15 , critical_onset_to_death = Poisson (6 )))
444447 pA = Pathogen (id = 1 , name = " A" , progressions = [crit],
713716 " hospital_admission_to_hospital_discharge" => Dict (" distribution" => " Poisson" , " parameters" => [10 ])),
714717 " critical" => Dict (
715718 " hospital_probability" => 0.9 , " hospital_to_icu_probability" => 0.6 , " death_probability" => 0.3 ,
716- " critical_onset_to_hospital_admission " => Dict (" distribution" => " Poisson" , " parameters" => [1 ]),
719+ " severeness_onset_to_hospital_admission " => Dict (" distribution" => " Poisson" , " parameters" => [1 ]),
717720 " hospital_admission_to_hospital_discharge" => Dict (" distribution" => " Poisson" , " parameters" => [10 ]),
718- " hospital_admission_to_icu_admission " => Dict (" distribution" => " Poisson" , " parameters" => [1 ]),
721+ " critical_onset_to_icu_admission " => Dict (" distribution" => " Poisson" , " parameters" => [1 ]),
719722 " icu_admission_to_icu_discharge" => Dict (" distribution" => " Poisson" , " parameters" => [8 ]),
720723 " icu_discharge_to_hospital_discharge" => Dict (" distribution" => " Poisson" , " parameters" => [5 ]),
721724 " critical_onset_to_death" => Dict (" distribution" => " Poisson" , " parameters" => [7 ])))
0 commit comments