From bad2ba9c6aac817505934d74c348d560fe77b84c Mon Sep 17 00:00:00 2001 From: markus Date: Mon, 1 Mar 2021 14:44:52 +0100 Subject: [PATCH] add print_qd_info --- cara/mc-output.py | 13 +++++++------ cara/montecarlo.py | 18 ++++++++++++++++-- 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/cara/mc-output.py b/cara/mc-output.py index e31b7d19..28ecc9b0 100644 --- a/cara/mc-output.py +++ b/cara/mc-output.py @@ -11,6 +11,7 @@ from cara.model_scenarios import * #print(np.quantile(chorale_model.infection_probability(),0.90)) #print(np.quantile(chorale_model.infection_probability(),0.1)) +print_qd_info(large_population_baselines[0]) #print(np.mean(shared_office_model[1].infection_probability())) @@ -31,12 +32,12 @@ from cara.model_scenarios import * # title='Classroom scenario' # ) -compare_concentration_curves([waiting_room_model[1], waiting_room_model_full_summer[1], - waiting_room_model_full_winter[1], waiting_room_model_periodic_winter[1]], - labels=['Baseline:(windows closed)', 'Windows open (summer)', 'Windows open (winter)', 'Windows open 5min/20min (winter)'], - colors=['#1f77b4', 'darkorange', 'deepskyblue', 'lightskyblue'], - title='Waiting room scenario' - ) +# compare_concentration_curves([waiting_room_model[1], waiting_room_model_full_summer[1], +# waiting_room_model_full_winter[1], waiting_room_model_periodic_winter[1]], +# labels=['Baseline:(windows closed)', 'Windows open (summer)', 'Windows open (winter)', 'Windows open 5min/20min (winter)'], +# colors=['#1f77b4', 'darkorange', 'deepskyblue', 'lightskyblue'], +# title='Waiting room scenario' +# ) #plot_pi_vs_viral_load([shared_office_model[1]], labels=['Baseline'],title='') diff --git a/cara/montecarlo.py b/cara/montecarlo.py index 65642c6d..8d5dfd94 100644 --- a/cara/montecarlo.py +++ b/cara/montecarlo.py @@ -538,7 +538,7 @@ def plot_pi_vs_viral_load(baselines: typing.Union[MCExposureModel, typing.List[M number=infected.number, presence=infected.presence, masked=infected.masked, - expiratory_activity=infected.expiratory_activity, + expiratory_activity=infected.exquantapiratory_activity, breathing_category=infected.breathing_category, virus=infected.virus, samples=samples_per_vl, @@ -1094,4 +1094,18 @@ def compare_concentration_curves(exp_models: typing.List[MCExposureModel], label plt.tight_layout() plt.hlines([60], colors=['lightgrey'], linestyles=['dashed'], xmin=start, xmax=stop) plt.text(7, 65, "$qID = 60$", color='lightgrey') - plt.show() \ No newline at end of file + plt.show() + + +def print_qd_info(model: MCExposureModel) -> None: + qds = model.exposed.activity.inhalation_rate * (1 - model.exposed.mask.η_inhale) * model.quanta_exposure() * 0.6 + print(f"----- qD distribution -----\n" + f"Mean:\t{np.mean(qds)}\n" + f"Median:\t{np.median(qds)}\n\n" + f"Percentiles\n" + f"1st:\t{np.percentile(qds, 1)}\n" + f"5th:\t{np.percentile(qds, 5)}\n" + f"10th:\t{np.percentile(qds, 10)}\n" + f"90th:\t{np.percentile(qds, 90)}\n" + f"95th:\t{np.percentile(qds, 95)}\n" + f"99th:\t{np.percentile(qds, 99)}\n")