diff --git a/cara/model_scenarios_IGH_paper.py b/cara/model_scenarios_IGH_paper.py index 14ada6a4..906b6a7a 100644 --- a/cara/model_scenarios_IGH_paper.py +++ b/cara/model_scenarios_IGH_paper.py @@ -54,7 +54,7 @@ classroom_model_IGH_no_mask_windows_closed_winter = [MCExposureModel( ) )for qid in (100, 60)] -#Fig 1a +#Fig 1c classroom_model_IGH_no_mask_windows_open_breaks = [MCExposureModel( concentration_model=MCConcentrationModel( room=models.Room(volume=160), @@ -109,62 +109,7 @@ classroom_model_IGH_no_mask_windows_open_alltimes = [MCExposureModel( ) )for qid in (100, 60)] -#Fig 1b -classroom_model_IGH_no_mask_2windows_open_breaks = [MCExposureModel( - concentration_model=MCConcentrationModel( - room=models.Room(volume=160), - ventilation=models.SlidingWindow( - active=models.SpecificInterval(((1.5, 2), (3.5, 4.5), (6, 6.5))), - inside_temp=models.PiecewiseConstant((0, 24), (295,)), - outside_temp=models.PiecewiseConstant((0, 24), (291,)), - window_height=1.6, opening_length=2*0.6, - ), - infected=MCInfectedPopulation( - number=1, - presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), - masked=False, - virus=MCVirus(halflife=1.1, qID=qid), - expiratory_activity=2, - samples=200000, - breathing_category=3, - ) - ), - exposed=models.Population( - number=19, - presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), - activity=models.Activity.types['Seated'], - mask=models.Mask.types['No mask'] - ) -)for qid in (100, 60)] - -classroom_model_IGH_no_mask_2windows_open_alltimes = [MCExposureModel( - concentration_model=MCConcentrationModel( - room=models.Room(volume=160), - ventilation=models.SlidingWindow( - active=models.PeriodicInterval(period=120, duration=120), - inside_temp=models.PiecewiseConstant((0, 24), (295,)), - outside_temp=models.PiecewiseConstant((0, 24), (291,)), - window_height=1.6, opening_length=2*0.6, - ), - infected=MCInfectedPopulation( - number=1, - presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), - masked=False, - virus=MCVirus(halflife=1.1, qID=qid), - expiratory_activity=2, - samples=200000, - breathing_category=3, - ) - ), - exposed=models.Population( - number=19, - presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), - activity=models.Activity.types['Seated'], - mask=models.Mask.types['No mask'] - ) -)for qid in (100, 60)] - -#Fig 1c +#Fig 1d classroom_model_IGH_no_mask_windows_open_breaks_winter = [MCExposureModel( concentration_model=MCConcentrationModel( room=models.Room(volume=160), @@ -246,7 +191,62 @@ classroom_model_IGH_no_mask_windows_fully_open_alltimes_winter = [MCExposureMode ) )for qid in (100, 60)] -#Fig 1d +#Fig 1e +classroom_model_IGH_no_mask_2windows_open_breaks = [MCExposureModel( + concentration_model=MCConcentrationModel( + room=models.Room(volume=160), + ventilation=models.SlidingWindow( + active=models.SpecificInterval(((1.5, 2), (3.5, 4.5), (6, 6.5))), + inside_temp=models.PiecewiseConstant((0, 24), (295,)), + outside_temp=models.PiecewiseConstant((0, 24), (291,)), + window_height=1.6, opening_length=2*0.6, + ), + infected=MCInfectedPopulation( + number=1, + presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), + masked=False, + virus=MCVirus(halflife=1.1, qID=qid), + expiratory_activity=2, + samples=200000, + breathing_category=3, + ) + ), + exposed=models.Population( + number=19, + presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), + activity=models.Activity.types['Seated'], + mask=models.Mask.types['No mask'] + ) +)for qid in (100, 60)] + +classroom_model_IGH_no_mask_2windows_open_alltimes = [MCExposureModel( + concentration_model=MCConcentrationModel( + room=models.Room(volume=160), + ventilation=models.SlidingWindow( + active=models.PeriodicInterval(period=120, duration=120), + inside_temp=models.PiecewiseConstant((0, 24), (295,)), + outside_temp=models.PiecewiseConstant((0, 24), (291,)), + window_height=1.6, opening_length=2*0.6, + ), + infected=MCInfectedPopulation( + number=1, + presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), + masked=False, + virus=MCVirus(halflife=1.1, qID=qid), + expiratory_activity=2, + samples=200000, + breathing_category=3, + ) + ), + exposed=models.Population( + number=19, + presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), + activity=models.Activity.types['Seated'], + mask=models.Mask.types['No mask'] + ) +)for qid in (100, 60)] + +#Fig 1f classroom_model_IGH_no_mask_2windows_open_breaks_winter = [MCExposureModel( concentration_model=MCConcentrationModel( room=models.Room(volume=160), @@ -328,7 +328,7 @@ classroom_model_IGH_no_mask_2windows_fully_open_alltimes_winter = [MCExposureMod ) )for qid in (100, 60)] -#Fig 1e +#Fig 1g classroom_model_IGH_no_mask_6windows_open_breaks = [MCExposureModel( concentration_model=MCConcentrationModel( room=models.Room(volume=160), @@ -383,7 +383,7 @@ classroom_model_IGH_no_mask_6windows_open_alltimes = [MCExposureModel( ) )for qid in (100, 60)] -#Fig 1f +#Fig 1h classroom_model_IGH_no_mask_6windows_open_breaks_winter = [MCExposureModel( concentration_model=MCConcentrationModel( room=models.Room(volume=160), @@ -465,6 +465,64 @@ classroom_model_IGH_no_mask_6windows_fully_open_alltimes_winter = [MCExposureMod ) )for qid in (100, 60)] +#Fig 1i +classroom_model_IGH_no_mask_6windows_open_breaks_endOfClass = [MCExposureModel( + concentration_model=MCConcentrationModel( + room=models.Room(volume=160), + ventilation=models.SlidingWindow( + active=models.SpecificInterval(((0.75, 0.92), (1.5, 2), (2.75, 2.92), (3.5, 4.5), (5.25, 5.42), (6, 6.5), (7.25, 7.42))), + inside_temp=models.PiecewiseConstant((0, 24), (295,)), + outside_temp=models.PiecewiseConstant((0, 24), (291,)), + window_height=1.6, opening_length=6*0.6, + ), + infected=MCInfectedPopulation( + number=1, + presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), + masked=False, + virus=MCVirus(halflife=1.1, qID=qid), + expiratory_activity=2, + samples=200000, + breathing_category=3, + ) + ), + exposed=models.Population( + number=19, + presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), + activity=models.Activity.types['Seated'], + mask=models.Mask.types['No mask'] + ) +)for qid in (100, 60)] + +#Fig 1j +classroom_model_IGH_no_mask_6windows_open_breaks_endOfClass_winter = [MCExposureModel( + concentration_model=MCConcentrationModel( + room=models.Room(volume=160), + ventilation=models.SlidingWindow( + active=models.SpecificInterval(((0.75, 0.92), (1.5, 2), (2.75, 2.92), (3.5, 4.5), (5.25, 5.42), (6, 6.5), (7.25, 7.42))), + inside_temp=models.PiecewiseConstant((0, 24), (295,)), + outside_temp=models.PiecewiseConstant((0, 24), (278,)), + window_height=1.6, opening_length=6*0.6, + ), + infected=MCInfectedPopulation( + number=1, + presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), + masked=False, + virus=MCVirus(halflife=1.1, qID=qid), + expiratory_activity=2, + samples=200000, + breathing_category=3, + ) + ), + exposed=models.Population( + number=19, + presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), + activity=models.Activity.types['Seated'], + mask=models.Mask.types['No mask'] + ) +)for qid in (100, 60)] + + + #Fig 2 classroom_model_IGH_no_mask_windows_closed_1HEPA = [MCExposureModel( @@ -856,32 +914,6 @@ classroom_model_IGH_no_mask_2windows_open_breaks_endOfClass = [MCExposureModel( ) )for qid in (100, 60)] -classroom_model_IGH_no_mask_6windows_open_breaks_endOfClass = [MCExposureModel( - concentration_model=MCConcentrationModel( - room=models.Room(volume=160), - ventilation=models.SlidingWindow( - active=models.SpecificInterval(((0.75, 0.92), (1.5, 2), (2.75, 2.92), (3.5, 4.5), (5.25, 5.42), (6, 6.5), (7.25, 7.42))), - inside_temp=models.PiecewiseConstant((0, 24), (295,)), - outside_temp=models.PiecewiseConstant((0, 24), (291,)), - window_height=1.6, opening_length=6*0.6, - ), - infected=MCInfectedPopulation( - number=1, - presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), - masked=False, - virus=MCVirus(halflife=1.1, qID=qid), - expiratory_activity=2, - samples=200000, - breathing_category=3, - ) - ), - exposed=models.Population( - number=19, - presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), - activity=models.Activity.types['Seated'], - mask=models.Mask.types['No mask'] - ) -)for qid in (100, 60)] classroom_model_IGH_no_mask_windows_open_breaks_endOfClass_winter = [MCExposureModel( concentration_model=MCConcentrationModel( @@ -937,32 +969,6 @@ classroom_model_IGH_no_mask_2windows_open_breaks_endOfClass_winter = [MCExposure ) )for qid in (100, 60)] -classroom_model_IGH_no_mask_6windows_open_breaks_endOfClass_winter = [MCExposureModel( - concentration_model=MCConcentrationModel( - room=models.Room(volume=160), - ventilation=models.SlidingWindow( - active=models.SpecificInterval(((0.75, 0.92), (1.5, 2), (2.75, 2.92), (3.5, 4.5), (5.25, 5.42), (6, 6.5), (7.25, 7.42))), - inside_temp=models.PiecewiseConstant((0, 24), (295,)), - outside_temp=models.PiecewiseConstant((0, 24), (278,)), - window_height=1.6, opening_length=6*0.6, - ), - infected=MCInfectedPopulation( - number=1, - presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), - masked=False, - virus=MCVirus(halflife=1.1, qID=qid), - expiratory_activity=2, - samples=200000, - breathing_category=3, - ) - ), - exposed=models.Population( - number=19, - presence=models.SpecificInterval(((0, 1.5), (2, 3.5), (4.5, 6), (6.5, 8))), - activity=models.Activity.types['Seated'], - mask=models.Mask.types['No mask'] - ) -)for qid in (100, 60)] classroom_model_IGH_with_mask_windows_open_breaks_endOfClass = [MCExposureModel(