Replace 'Talking' by 'Speaking' throughout the code
This commit is contained in:
parent
a93a4a3e40
commit
39ccc3fc18
8 changed files with 57 additions and 57 deletions
|
|
@ -373,35 +373,35 @@ class FormData:
|
|||
scenario_activity_and_expiration = {
|
||||
'office': (
|
||||
'Seated',
|
||||
# Mostly silent in the office, but 1/3rd of time talking.
|
||||
{'Talking': 1, 'Breathing': 2}
|
||||
# Mostly silent in the office, but 1/3rd of time speaking.
|
||||
{'Speaking': 1, 'Breathing': 2}
|
||||
),
|
||||
'controlroom-day': (
|
||||
'Seated',
|
||||
# Daytime control room shift, 50% talking.
|
||||
{'Talking': 1, 'Breathing': 1}
|
||||
# Daytime control room shift, 50% speaking.
|
||||
{'Speaking': 1, 'Breathing': 1}
|
||||
),
|
||||
'controlroom-night': (
|
||||
'Seated',
|
||||
# Nightshift control room, 10% talking.
|
||||
{'Talking': 1, 'Breathing': 9}
|
||||
# Nightshift control room, 10% speaking.
|
||||
{'Speaking': 1, 'Breathing': 9}
|
||||
),
|
||||
'meeting': (
|
||||
'Seated',
|
||||
# Conversation of N people is approximately 1/N% of the time talking.
|
||||
{'Talking': 1, 'Breathing': self.total_people - 1}
|
||||
# Conversation of N people is approximately 1/N% of the time speaking.
|
||||
{'Speaking': 1, 'Breathing': self.total_people - 1}
|
||||
),
|
||||
'callcentre': ('Seated', 'Talking'),
|
||||
'callcentre': ('Seated', 'Speaking'),
|
||||
'library': ('Seated', 'Breathing'),
|
||||
'training': ('Standing', 'Talking'),
|
||||
'training': ('Standing', 'Speaking'),
|
||||
'lab': (
|
||||
'Light activity',
|
||||
#Model 1/2 of time spent talking in a lab.
|
||||
{'Talking': 1, 'Breathing': 1}),
|
||||
#Model 1/2 of time spent speaking in a lab.
|
||||
{'Speaking': 1, 'Breathing': 1}),
|
||||
'workshop': (
|
||||
'Moderate activity',
|
||||
#Model 1/2 of time spent talking in a workshop.
|
||||
{'Talking': 1, 'Breathing': 1}),
|
||||
#Model 1/2 of time spent speaking in a workshop.
|
||||
{'Speaking': 1, 'Breathing': 1}),
|
||||
'gym':('Heavy exercise', 'Breathing'),
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -279,25 +279,25 @@
|
|||
<li><p class="data_text">
|
||||
Activity type:
|
||||
{% if form.activity_type == "office" %}
|
||||
Office – typical scenario with all persons seated, talking occasionally (talking assumed for 1/3rd of the time).
|
||||
Office – typical scenario with all persons seated, speaking occasionally (speaking assumed for 1/3rd of the time).
|
||||
{% elif form.activity_type == "meeting" %}
|
||||
Meeting – typical scenario with all persons seated, one person talking at a time.
|
||||
Meeting – typical scenario with all persons seated, one person speaking at a time.
|
||||
{% elif form.activity_type == "callcentre" %}
|
||||
Call Centre = typical office-like scenario with all persons seated, all talking continuously.
|
||||
Call Centre = typical office-like scenario with all persons seated, all speaking continuously.
|
||||
{% elif form.activity_type == "controlroom-day" %}
|
||||
Control Room (Day Shift) = specific control room scenario, all persons seated, all talking 50% of the time.
|
||||
Control Room (Day Shift) = specific control room scenario, all persons seated, all speaking 50% of the time.
|
||||
{% elif form.activity_type == "controlroom-night" %}
|
||||
Control Room (Night Shift) = specific control room scenario with all persons seated, all talking for 10% of the time.
|
||||
Control Room (Night Shift) = specific control room scenario with all persons seated, all speaking for 10% of the time.
|
||||
{% elif form.activity_type == "library" %}
|
||||
Library = Library scenario with all persons seated, breathing and not talking.
|
||||
Library = Library scenario with all persons seated, breathing and not speaking.
|
||||
{% elif form.activity_type == "workshop" %}
|
||||
Workshop = assembly workshop environment, all persons doing moderate physical activity, talking 50% of the time.
|
||||
Workshop = assembly workshop environment, all persons doing moderate physical activity, speaking 50% of the time.
|
||||
{% elif form.activity_type == "training" %}
|
||||
Training – one person (the trainer) standing, talking, all others seated, talking quietly (whispering). It is assumed the trainer is the infected person, for the worst case scenario.
|
||||
Training – one person (the trainer) standing, speaking, all others seated, speaking quietly (whispering). It is assumed the trainer is the infected person, for the worst case scenario.
|
||||
{% elif form.activity_type == "lab" %}
|
||||
Laboratory = Lab or technical environment, all persons doing light physical activity, talking 50% of the time.
|
||||
Laboratory = Lab or technical environment, all persons doing light physical activity, speaking 50% of the time.
|
||||
{% elif form.activity_type == "gym" %}
|
||||
Gym = For comparison only, all persons doing heavy physical exercise, breathing and not talking.
|
||||
Gym = For comparison only, all persons doing heavy physical exercise, breathing and not speaking.
|
||||
{% endif %}
|
||||
</p></li>
|
||||
<li><p class="data_text">Exposed occupant(s) activity time:</p></li>
|
||||
|
|
|
|||
|
|
@ -369,17 +369,17 @@ v{{ calculator_version }} <span style="float:right; font-weight:bold">Please sen
|
|||
<b>Activity types:</b><br>
|
||||
The type of activity applies to both the infected and exposed persons:
|
||||
<ul>
|
||||
<li>Office = all seated, talking 33% of the time,</li>
|
||||
<li>Meeting = all seated, talking time shared between all persons,</li>
|
||||
<li>Call Centre = all seated, continuous talking,</li>
|
||||
<li>Control Room (day shift) = all seated, talking 50% of the time,</li>
|
||||
<li>Control Room (night shift) = all seated, talking 10% of the time,</li>
|
||||
<li>Library = all seated, no talking, just breathing,</li>
|
||||
<li>Laboratory = light physical activity, talking 50% of the time,</li>
|
||||
<li>Workshop = moderate physical activity, talking 50% of the time,</li>
|
||||
<li>Training = trainer standing and talking, rest seated and talking quietly.
|
||||
<li>Office = all seated, speaking 33% of the time,</li>
|
||||
<li>Meeting = all seated, speaking time shared between all persons,</li>
|
||||
<li>Call Centre = all seated, continuous speaking,</li>
|
||||
<li>Control Room (day shift) = all seated, speaking 50% of the time,</li>
|
||||
<li>Control Room (night shift) = all seated, speaking 10% of the time,</li>
|
||||
<li>Library = all seated, no speaking, just breathing,</li>
|
||||
<li>Laboratory = light physical activity, speaking 50% of the time,</li>
|
||||
<li>Workshop = moderate physical activity, speaking 50% of the time,</li>
|
||||
<li>Training = trainer standing and speaking, rest seated and speaking quietly.
|
||||
Trainer assumed infected (worst case scenario),</li>
|
||||
<li>Gym = heavy exercise, no talking, just breathing.</li>
|
||||
<li>Gym = heavy exercise, no speaking, just breathing.</li>
|
||||
</ul>
|
||||
<b>Activity breaks:</b><br>
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -118,18 +118,18 @@ Within the number of people occupying the space, you should specify how many are
|
|||
<p>As an example, for a shared office with 4 people, where one person is infected, we enter 4 occupants and 1 infected person.</p>
|
||||
<h4>Activity type</h4>
|
||||
<p>There are a few predefined activities in the tool at present.</p>
|
||||
<p><strong>Office </strong> = All persons seated, talking occasionally (1/3rd of the time, with normal breathing the other 2/3rds of the time). Everyone (exposed and infected occupants) is treated the same in this model.
|
||||
<strong>Meeting</strong> = All persons seated, having a conversation (approximately each occupant is 1/N % of the time talking, where N is the number of occupants). Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Library</strong> = All persons seated, breathing only (not talking), all the time.</p>
|
||||
<p><strong>Call Centre</strong> = All persons seated, all talking simultaneously, all the time. This is a conservative profile, i.e. will show an increased <code>P(i)</code> compared to office/meeting activity. Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Control Room (day shift)</strong> = All persons seated, all talking 50% of the time. This is a conservative profile, i.e. will show an increased <code>P(i)</code> compared to office/meeting activity. Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Control Room (night shift)</strong> = All persons seated, all talking 10% of the time. Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Lab</strong> = Based on a typical lab or technical working area, all persons are doing light activity and talking 50% of the time. Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Workshop</strong> = Based on a mechanical assembly workshop or equipment installation scenario, all persons are doing moderate activity and talking 50% of the time. This activity is equally applicable to bicycling, or walking on a gradient, in the LHC tunnels. Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Office </strong> = All persons seated, speaking occasionally (1/3rd of the time, with normal breathing the other 2/3rds of the time). Everyone (exposed and infected occupants) is treated the same in this model.
|
||||
<strong>Meeting</strong> = All persons seated, having a conversation (approximately each occupant is 1/N % of the time speaking, where N is the number of occupants). Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Library</strong> = All persons seated, breathing only (not speaking), all the time.</p>
|
||||
<p><strong>Call Centre</strong> = All persons seated, all speaking simultaneously, all the time. This is a conservative profile, i.e. will show an increased <code>P(i)</code> compared to office/meeting activity. Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Control Room (day shift)</strong> = All persons seated, all speaking 50% of the time. This is a conservative profile, i.e. will show an increased <code>P(i)</code> compared to office/meeting activity. Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Control Room (night shift)</strong> = All persons seated, all speaking 10% of the time. Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Lab</strong> = Based on a typical lab or technical working area, all persons are doing light activity and speaking 50% of the time. Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Workshop</strong> = Based on a mechanical assembly workshop or equipment installation scenario, all persons are doing moderate activity and speaking 50% of the time. This activity is equally applicable to bicycling, or walking on a gradient, in the LHC tunnels. Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Training</strong> = Based on a typical training course scenario.
|
||||
One individual (the trainer) is standing and talking, with all other individuals seated and talking quietly (whispering).
|
||||
One individual (the trainer) is standing and speaking, with all other individuals seated and speaking quietly (whispering).
|
||||
In this case it is assumed that the infected person is the trainer, because this is the worst case in terms of viral shedding.</p>
|
||||
<p><strong>Gym</strong> = All persons are doing heavy exercise and breathing (not talking). Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<p><strong>Gym</strong> = All persons are doing heavy exercise and breathing (not speaking). Everyone (exposed and infected occupants) is treated the same in this model.</p>
|
||||
<h3>Timings</h3>
|
||||
<p>You should enter the time (hours:minutes) for the start and end of the simulation period (i.e. 8:30 to 17:30 for a typical office day).
|
||||
It is important to enter the correct times for the simulation, in particular when using natural ventilation.
|
||||
|
|
@ -187,7 +187,7 @@ The <code>expected number of new cases</code> for the simulation is calculated b
|
|||
It is determined by:</p>
|
||||
<ul>
|
||||
<li>The presence of the infected person, who emits airborne viruses in the volume.</li>
|
||||
<li>The emission rate is related to the type of activity of the infected person (sitting, light exercise), their level of vocalisation (breathing, talking or shouting).</li>
|
||||
<li>The emission rate is related to the type of activity of the infected person (sitting, light exercise), their level of vocalisation (breathing, speaking or shouting).</li>
|
||||
<li>The accumulation of virions in the volume, which is driven, among other factors, by ventilation (if applicable).<ul>
|
||||
<li>In a mechanical ventilation scenario, the removal rate is constant, based on fresh airflow supply in and out of the simulated space.</li>
|
||||
<li>Under natural ventilation conditions, the effectiveness of ventilation relies upon the hourly temperature difference between the inside and outside air temperature.</li>
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ class BLOmodel:
|
|||
# charateristics of the kind of expiratory activity (e.g. breathing,
|
||||
# speaking, singing, or shouting). These are applied on top of the
|
||||
# cn concentrations (see below), and depend on the kind of activity
|
||||
# (breathing, talking, singing/shouting)
|
||||
# (breathing, speaking, singing/shouting)
|
||||
BLO_factors: typing.Tuple[float, float, float]
|
||||
|
||||
#: cn (cm^-3) for resp. the B, L and O modes. Corresponds to the
|
||||
|
|
@ -167,7 +167,7 @@ def expiration_distribution(BLO_factors):
|
|||
|
||||
expiration_BLO_factors = {
|
||||
'Breathing': (1., 0., 0.),
|
||||
'Talking': (1., 1., 1.),
|
||||
'Speaking': (1., 1., 1.),
|
||||
'Singing': (1., 5., 5.),
|
||||
'Shouting': (1., 5., 5.),
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,11 +35,11 @@ def test_model_from_dict_invalid(baseline_form_data):
|
|||
]
|
||||
)
|
||||
def test_blend_expiration(mask_type):
|
||||
blend = {'Breathing': 2, 'Talking': 1}
|
||||
blend = {'Breathing': 2, 'Speaking': 1}
|
||||
r = model_generator.build_expiration(blend).build_model(SAMPLE_SIZE)
|
||||
mask = models.Mask.types[mask_type]
|
||||
expected = (expiration_distributions['Breathing'].build_model(SAMPLE_SIZE).aerosols(mask).mean()*2/3. +
|
||||
expiration_distributions['Talking'].build_model(SAMPLE_SIZE).aerosols(mask).mean()/3.)
|
||||
expiration_distributions['Speaking'].build_model(SAMPLE_SIZE).aerosols(mask).mean()/3.)
|
||||
npt.assert_allclose(r.aerosols(mask).mean(), expected, rtol=TOLERANCE)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -64,8 +64,8 @@ def known_concentrations(func):
|
|||
presence=halftime,
|
||||
mask=models.Mask.types['Type I'],
|
||||
activity=models.Activity.types['Standing'],
|
||||
virus=models.Virus.types['SARS_CoV_2_ALPHA'],
|
||||
expiration=models.Expiration.types['Talking'],
|
||||
virus=models.Virus.types['SARS_CoV_2_B117'],
|
||||
expiration=models.Expiration.types['Speaking'],
|
||||
host_immunity=0.,
|
||||
)
|
||||
normed_func = lambda x: func(x) / dummy_infected_population.emission_rate_when_present()
|
||||
|
|
@ -193,7 +193,7 @@ def test_infectious_dose_vectorisation():
|
|||
infectious_dose=np.array([50, 20, 30]),
|
||||
viable_to_RNA_ratio = 0.5,
|
||||
),
|
||||
expiration=models.Expiration.types['Talking'],
|
||||
expiration=models.Expiration.types['Speaking'],
|
||||
host_immunity=0.,
|
||||
)
|
||||
cm = known_concentrations(lambda t: 1.2)
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ def shared_office_mc():
|
|||
presence=mc.SpecificInterval(((0., 2.), (2.1, 4.), (5., 7.), (7.1, 9.))),
|
||||
mask=models.Mask(η_inhale=0.3),
|
||||
activity=activity_distributions['Seated'],
|
||||
expiration=build_expiration({'Talking': 0.3, 'Breathing': 0.7}),
|
||||
expiration=build_expiration({'Speaking': 0.3, 'Breathing': 0.7}),
|
||||
host_immunity=0.,
|
||||
),
|
||||
)
|
||||
|
|
@ -87,7 +87,7 @@ def classroom_mc():
|
|||
presence=mc.SpecificInterval(((0., 2.), (2.5, 4.), (5., 7.), (7.5, 9.))),
|
||||
mask=models.Mask.types['No mask'],
|
||||
activity=activity_distributions['Light activity'],
|
||||
expiration=expiration_distributions['Talking'],
|
||||
expiration=expiration_distributions['Speaking'],
|
||||
host_immunity=0.,
|
||||
),
|
||||
)
|
||||
|
|
@ -120,7 +120,7 @@ def ski_cabin_mc():
|
|||
presence=mc.SpecificInterval(((0., 1/3),)),
|
||||
mask=models.Mask(η_inhale=0.3),
|
||||
activity=activity_distributions['Moderate activity'],
|
||||
expiration=expiration_distributions['Talking'],
|
||||
expiration=expiration_distributions['Speaking'],
|
||||
host_immunity=0.,
|
||||
),
|
||||
)
|
||||
|
|
@ -189,7 +189,7 @@ def waiting_room_mc():
|
|||
presence=mc.SpecificInterval(((0., 2.),)),
|
||||
mask=models.Mask.types["No mask"],
|
||||
activity=activity_distributions['Seated'],
|
||||
expiration=build_expiration({'Talking': 0.3, 'Breathing': 0.7}),
|
||||
expiration=build_expiration({'Speaking': 0.3, 'Breathing': 0.7}),
|
||||
host_immunity=0.,
|
||||
),
|
||||
)
|
||||
|
|
@ -299,7 +299,7 @@ def test_small_shared_office_Geneva(mask_type, month, expected_pi,
|
|||
presence=mc.SpecificInterval(((9., 10+2/3), (10+5/6, 12.5), (13.5, 15+2/3), (15+5/6, 18.))),
|
||||
mask=models.Mask.types[mask_type],
|
||||
activity=activity_distributions['Seated'],
|
||||
expiration=build_expiration({'Talking': 0.33, 'Breathing': 0.67}),
|
||||
expiration=build_expiration({'Speaking': 0.33, 'Breathing': 0.67}),
|
||||
host_immunity=0.,
|
||||
),
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in a new issue