Added correct types on short range for model generator and expert app
This commit is contained in:
parent
d8d3c0e383
commit
3e87c6cc19
3 changed files with 10 additions and 15 deletions
|
|
@ -246,13 +246,8 @@ class FormData:
|
||||||
humidity = 0.5
|
humidity = 0.5
|
||||||
room = models.Room(volume=volume, humidity=humidity)
|
room = models.Room(volume=volume, humidity=humidity)
|
||||||
|
|
||||||
if self.short_range_option == "short_range_no":
|
|
||||||
sr_presence=[]
|
|
||||||
sr_activities=[]
|
|
||||||
else:
|
|
||||||
sr_presence=self.short_range_intervals()
|
sr_presence=self.short_range_intervals()
|
||||||
sr_activities=self.short_range_activities()
|
sr_activities=self.short_range_activities()
|
||||||
|
|
||||||
short_range_expirations = tuple(short_range_expiration_distributions[activity] for activity in sr_activities)
|
short_range_expirations = tuple(short_range_expiration_distributions[activity] for activity in sr_activities)
|
||||||
|
|
||||||
# Initializes and returns a model with the attributes defined above
|
# Initializes and returns a model with the attributes defined above
|
||||||
|
|
@ -643,14 +638,14 @@ class FormData:
|
||||||
breaks=self.infected_lunch_break_times() + self.infected_coffee_break_times(),
|
breaks=self.infected_lunch_break_times() + self.infected_coffee_break_times(),
|
||||||
)
|
)
|
||||||
|
|
||||||
def short_range_intervals(self) -> typing.Tuple[models.SpecificInterval]:
|
def short_range_intervals(self) -> typing.Tuple[models.SpecificInterval, ...]:
|
||||||
if (self.short_range_interactions):
|
if (self.short_range_interactions):
|
||||||
short_range_intervals = []
|
short_range_intervals = []
|
||||||
for interaction in self.short_range_interactions:
|
for interaction in self.short_range_interactions:
|
||||||
start_time = time_string_to_minutes(interaction['start_time'])
|
start_time = time_string_to_minutes(interaction['start_time'])
|
||||||
duration = float(interaction['duration'])
|
duration = float(interaction['duration'])
|
||||||
short_range_intervals.append(models.SpecificInterval((start_time/60, (start_time + duration)/60)))
|
short_range_intervals.append(models.SpecificInterval((start_time/60, (start_time + duration)/60)))
|
||||||
return list(short_range_intervals)
|
return tuple(short_range_intervals)
|
||||||
else:
|
else:
|
||||||
return ()
|
return ()
|
||||||
|
|
||||||
|
|
@ -674,7 +669,7 @@ def build_expiration(expiration_definition) -> mc._ExpirationBase:
|
||||||
np.array(expiration_BLO_factors[exp_type]) * weight/total_weight
|
np.array(expiration_BLO_factors[exp_type]) * weight/total_weight
|
||||||
for exp_type, weight in expiration_definition.items()
|
for exp_type, weight in expiration_definition.items()
|
||||||
], axis=0)
|
], axis=0)
|
||||||
return expiration_distribution(tuple(BLO_factors))
|
return expiration_distribution(BLO_factors=tuple(BLO_factors))
|
||||||
|
|
||||||
|
|
||||||
def baseline_raw_form_data():
|
def baseline_raw_form_data():
|
||||||
|
|
|
||||||
|
|
@ -504,9 +504,9 @@ baseline_model = models.ExposureModel(
|
||||||
evaporation_factor=0.3,
|
evaporation_factor=0.3,
|
||||||
),
|
),
|
||||||
short_range=models.ShortRangeModel(
|
short_range=models.ShortRangeModel(
|
||||||
presence=[],
|
presence=(),
|
||||||
expirations=[],
|
expirations=(),
|
||||||
dilutions=[],
|
dilutions=(),
|
||||||
),
|
),
|
||||||
exposed=models.Population(
|
exposed=models.Population(
|
||||||
number=10,
|
number=10,
|
||||||
|
|
|
||||||
|
|
@ -159,7 +159,7 @@ mask_distributions = {
|
||||||
|
|
||||||
|
|
||||||
def expiration_distribution(
|
def expiration_distribution(
|
||||||
BLO_factors: typing.Tuple[float, float, float],
|
BLO_factors,
|
||||||
d_max=30.,
|
d_max=30.,
|
||||||
) -> mc.Expiration:
|
) -> mc.Expiration:
|
||||||
"""
|
"""
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue