cosmetics in pi vs vl plot

This commit is contained in:
Andrejh 2021-02-24 09:52:54 +01:00
parent 9decf9afd1
commit 758afafbcf
3 changed files with 36 additions and 17 deletions

View file

@ -11,9 +11,12 @@ from cara.model_scenarios import *
#print(np.mean(exposure_models_2[1].infection_probability()))
composite_plot_pi_vs_viral_load([exposure_models[1], exposure_models_2[1]], labels=['B.1.1.7 - Guideline', 'B.1.1.7 - w/o masks', 'label'], colors=['red', 'green', 'yellow'])
# plot_pi_vs_viral_load([shared_office_model[1]], labels=['Baseline, qID=60', 'HEPA, qID=60', 'No mask + windows closed, qID=60'],title='$P(I|qID)$ - Shared office scenario')
#print(np.mean(classroom_model_with_hepa.infection_probability()))
composite_plot_pi_vs_viral_load([shared_office_worst_model[1], shared_office_model[1],shared_office_better_model[1]],
labels=['No mask &\nwindows closed', 'Baseline', 'Baseline +\nHEPA filter'],
colors=['tomato', '#1f77b4', 'limegreen'],
title='$P(I|qID)$ vs $vl$ - Shared office scenario')
#plot_pi_vs_viral_load([shared_office_model[1]], labels=['Baseline, qID=60', 'HEPA, qID=60', 'No mask + windows closed, qID=60'],title='$P(I|qID)$ - Shared office scenario')
#generate_cdf_curves_vs_qr(masked=False,qid=1000)

View file

@ -188,7 +188,7 @@ shared_office_model = [MCExposureModel(
number=1,
presence=models.SpecificInterval(((0, 2), (2.1, 4), (5, 7), (7.1, 9))),
masked=True,
virus=MCVirus(halflife=1.35, qID=qid),
virus=MCVirus(halflife=3.8, qID=qid),
expiratory_activity=4,
samples=200000,
breathing_category=1,
@ -214,7 +214,7 @@ shared_office_worst_model = [MCExposureModel(
number=1,
presence=models.SpecificInterval(((0, 2), (2.1, 4), (5, 7), (7.1, 9))),
masked=False,
virus=MCVirus(halflife=1.35, qID=qid),
virus=MCVirus(halflife=3.8, qID=qid),
expiratory_activity=4,
samples=200000,
breathing_category=1,
@ -232,15 +232,23 @@ shared_office_worst_model = [MCExposureModel(
shared_office_better_model = [MCExposureModel(
concentration_model=MCConcentrationModel(
room=models.Room(volume=50),
ventilation=models.AirChange(
active=models.PeriodicInterval(period=120, duration=120),
air_exch=5.,
ventilation=models.MultipleVentilation(
ventilations=(
models.SlidingWindow(
active=models.PeriodicInterval(period=120, duration=10),
inside_temp=models.PiecewiseConstant((0, 24), (293,)),
outside_temp=models.PiecewiseConstant((0, 24), (283,)),
window_height=1.6, opening_length=0.6,
),
models.AirChange(active=models.PeriodicInterval(period=120, duration=120),
air_exch=5.)
)
),
infected=MCInfectedPopulation(
number=1,
presence=models.SpecificInterval(((0, 2), (2.1, 4), (5, 7), (7.1, 9))),
masked=True,
virus=MCVirus(halflife=1.35, qID=qid),
virus=MCVirus(halflife=3.8, qID=qid),
expiratory_activity=4,
samples=200000,
breathing_category=1,
@ -318,7 +326,7 @@ waiting_room_model = MCExposureModel(
number=1,
presence=models.SpecificInterval(((0, 2),)),
masked=False,
virus=MCVirus(halflife=1.35, qID=60),
virus=MCVirus(halflife=3.8, qID=60),
expiratory_activity=4,
samples=200000,
breathing_category=1,

View file

@ -668,8 +668,11 @@ def composite_plot_pi_vs_viral_load(baselines: typing.List[MCExposureModel], lab
axs[0, i + 2].set_xticks([])
axs[0, i + 2].set_xticklabels([])
axs[0, i + 2].set_xlabel(f"{np.round(np.mean(data) * 100, 1)}%")
axs[0, i + 2].set_facecolor("lightgrey")
axs[1, 0].hist(baselines[0].concentration_model.infected._generate_viral_loads(), bins=30, range=(2, 12))
axs[1, 0].hist(baselines[0].concentration_model.infected._generate_viral_loads(),
bins=150, range=(2, 12), color='grey')
axs[1, 0].set_facecolor("lightgrey")
axs[1, 0].set_yticks([])
axs[1, 0].set_yticklabels([])
axs[1, 0].set_xticks([i for i in range(2, 13, 2)])
@ -679,9 +682,14 @@ def composite_plot_pi_vs_viral_load(baselines: typing.List[MCExposureModel], lab
axs[0, 0].set_ylabel('Probability of infection')
plt.suptitle(title)
axs[0, 0].text(11, -0.05, '(a)')
axs[1, 0].text(11, axs[1, 0].get_ylim()[1] * 0.8, '(b)')
axs[0, 2].text(axs[0, 2].get_xlim()[1] * 0.1, -0.05, '(c)')
axs[0, 0].text(11, -0.01, '$(i)$')
axs[1, 0].text(11, axs[1, 0].get_ylim()[1] * 0.8, '$(ii)$')
#axs[0, 2].text(axs[0, 2].get_xlim()[1] * 0.1, -0.05, '$(iii)$')
axs[0, 2].set_title('$(iii)$', fontsize=10)
axs[0, 0].text(2.5, 0.4, '$vl_{crit2}=$', fontsize=10, color='tomato')
axs[0, 0].text(2.5, 0.3, '$vl_{crit2}=$', fontsize=10, color='#1f77b4')
axs[0, 0].text(2.5, 0.2, '$vl_{crit2}=$', fontsize=10, color='limegreen')
if show_lines:
middle_positions = []
@ -691,9 +699,9 @@ def composite_plot_pi_vs_viral_load(baselines: typing.List[MCExposureModel], lab
middle_positions.append(viral_loads[i])
break
axs[0, 0].vlines(middle_positions, colors=colors, linestyles=['dashed']*2, ymin=axs[0, 0].get_ylim()[0],
ymax=axs[0, 0].get_ylim()[1])
axs[1, 0].vlines(middle_positions, colors=colors, linestyles=['dashed']*2, ymin=0, ymax=axs[1, 0].get_ylim()[1])
axs[0, 0].vlines(middle_positions, colors=colors, linestyles=['dotted']*2, ymin=0.5*1.6,
ymax=0.5*0.4)
axs[1, 0].vlines(middle_positions, colors=colors, linestyles=['dotted']*2, ymin=0, ymax=axs[1, 0].get_ylim()[1])
axs[0, 0].legend()
plt.show()