Created new conversation exp. profile, modified office/meeting activity and created call centre activity
This commit is contained in:
parent
d3786b74b2
commit
041f03c06e
3 changed files with 10 additions and 5 deletions
|
|
@ -247,7 +247,8 @@ def model_from_form(form: FormData) -> models.ExposureModel:
|
|||
# of the infected and exposed occupants respectively.
|
||||
# I.e. (infected_activity, infected_expiration), (exposed_activity, exposed_expiration)
|
||||
|
||||
activity_dict = {'office': (('Seated', 'Talking'), ('Seated', 'Talking')),
|
||||
activity_dict = {'office': (('Seated', 'Conversation'), ('Seated', 'Conversation')),
|
||||
'callcentre': (('Seated', 'Talking'), ('Seated', 'Talking')),
|
||||
'training': (('Light exercise', 'Talking'), ('Seated', 'Whispering')),
|
||||
'workshop': (('Light exercise', 'Talking'), ('Light exercise', 'Talking'))}
|
||||
|
||||
|
|
@ -323,7 +324,7 @@ def baseline_raw_form_data():
|
|||
}
|
||||
|
||||
|
||||
ACTIVITY_TYPES = {'office', 'training', 'workshop'}
|
||||
ACTIVITY_TYPES = {'office', 'training', 'callcentre', 'workshop'}
|
||||
EVENT_TYPES = {'single_event', 'recurrent_event'}
|
||||
MECHANICAL_VENTILATION_TYPES = {'air_changes', 'air_supply', 'not-applicable'}
|
||||
MASK_TYPES = {'Type I', 'FFP2'}
|
||||
|
|
|
|||
|
|
@ -111,6 +111,7 @@
|
|||
|
||||
Activity type: <select id="activity_type" name="activity_type">
|
||||
<option value="office">Office/Meeting</option>
|
||||
<option value="callcentre">Call Centre</option>
|
||||
<option value="workshop">Workshop</option>
|
||||
<option value="training">Training</option>
|
||||
</select><br>
|
||||
|
|
@ -206,8 +207,9 @@
|
|||
<b>Activity types:</b><br>
|
||||
The type of activity that includes both the infected and exposed persons:
|
||||
<ul>
|
||||
<li>Office/Meeting = typical scenario all persons seated, talking.</li>
|
||||
<li>Office/Meeting = typical scenario all persons seated, in conversation (talking 33% of the time, otherwise breathing normally).</li>
|
||||
<li>Workshop = assembly workshop environment, all persons doing light exercise, talking.</li>
|
||||
<li>Call Centre = A conservative assumption for office spaces, assumes all occupants are seated and talking continuously.</li>
|
||||
<li>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.</li>
|
||||
</ul>
|
||||
<b>Activity breaks:</b><br>
|
||||
|
|
|
|||
|
|
@ -172,7 +172,7 @@ class MultipleVentilation:
|
|||
@abstractmethod
|
||||
def air_exchange(self, room: Room, time: float) -> float:
|
||||
"""
|
||||
Returns the rate at which air is being exchanged in the given room
|
||||
Returns the rate at which air is being exchanged in the given room
|
||||
at a given time (in hours).
|
||||
"""
|
||||
return sum([ventilation.air_exchange(room,time)
|
||||
|
|
@ -271,7 +271,7 @@ class AirChange(Ventilation):
|
|||
#: The interval in which the ventilation is operating.
|
||||
active: Interval
|
||||
|
||||
#: The rate (in h^-1) at which the ventilation exchanges all the air
|
||||
#: The rate (in h^-1) at which the ventilation exchanges all the air
|
||||
# of the room (when switched on)
|
||||
air_exch: float
|
||||
|
||||
|
|
@ -375,8 +375,10 @@ class Expiration:
|
|||
|
||||
|
||||
Expiration.types = {
|
||||
#added new profile - Conversation = weighting of 1/3rd talking, 2/3 breathing.
|
||||
'Breathing': Expiration((0.084, 0.009, 0.003, 0.002)),
|
||||
'Whispering': Expiration((0.11, 0.014, 0.004, 0.002)),
|
||||
'Conversation': Expiration((0.135, 0.029, 0.004, 0.005)),
|
||||
'Talking': Expiration((0.236, 0.068, 0.007, 0.011)),
|
||||
'Unmodulated Vocalization': Expiration((0.751, 0.139, 0.0139, 0.059)),
|
||||
'Superspreading event': Expiration((np.inf, np.inf, np.inf, np.inf)),
|
||||
|
|
|
|||
Loading…
Reference in a new issue