From f5ef650cea8f5430c909cbea64e37613d6a8f101 Mon Sep 17 00:00:00 2001 From: Luis Aleixo Date: Mon, 13 Jun 2022 10:50:54 +0200 Subject: [PATCH] Added default frequency of 1 hour for window opening --- cara/apps/calculator/model_generator.py | 7 ++---- cara/apps/calculator/static/js/form.js | 12 ++++------ .../templates/base/calculator.form.html.j2 | 7 +++--- .../templates/base/calculator.report.html.j2 | 3 +-- cara/apps/templates/base/userguide.html.j2 | 2 +- .../apps/calculator/test_model_generator.py | 23 ++++++++----------- 6 files changed, 21 insertions(+), 33 deletions(-) diff --git a/cara/apps/calculator/model_generator.py b/cara/apps/calculator/model_generator.py index 8e92f361..e9557012 100644 --- a/cara/apps/calculator/model_generator.py +++ b/cara/apps/calculator/model_generator.py @@ -71,7 +71,6 @@ class FormData: virus_type: str volume_type: str windows_duration: float - windows_frequency: float window_height: float window_type: str window_width: float @@ -129,7 +128,6 @@ class FormData: 'window_height': 0., 'window_width': 0., 'windows_duration': 0., - 'windows_frequency': 0., 'windows_number': 0, 'window_opening_regime': 'windows_open_permanently', 'short_range_option': 'short_range_no', @@ -324,11 +322,11 @@ class FormData: return outside_temp def ventilation(self) -> models._VentilationBase: - always_on = models.PeriodicInterval(period=120, duration=120) + always_on = models.PeriodicInterval(period=60, duration=60) # Initializes a ventilation instance as a window if 'natural_ventilation' is selected, or as a HEPA-filter otherwise if self.ventilation_type == 'natural_ventilation': if self.window_opening_regime == 'windows_open_periodically': - window_interval = models.PeriodicInterval(self.windows_frequency, self.windows_duration, min(self.infected_start, self.exposed_start)/60) + window_interval = models.PeriodicInterval(60, self.windows_duration, min(self.infected_start, self.exposed_start)/60) else: window_interval = always_on @@ -717,7 +715,6 @@ def baseline_raw_form_data() -> typing.Dict[str, typing.Union[str, float]]: 'virus_type': 'SARS_CoV_2', 'volume_type': 'room_volume_explicit', 'windows_duration': '', - 'windows_frequency': '', 'window_height': '2', 'window_type': 'window_sliding', 'window_width': '2', diff --git a/cara/apps/calculator/static/js/form.js b/cara/apps/calculator/static/js/form.js index dc20b3b4..cc48a193 100644 --- a/cara/apps/calculator/static/js/form.js +++ b/cara/apps/calculator/static/js/form.js @@ -125,7 +125,6 @@ function require_natural_ventilation(option) { if (!option) { require_input_field("#window_width", option); require_input_field("#windows_duration", option); - require_input_field("#windows_frequency", option); } } @@ -146,9 +145,7 @@ function require_air_supply(option) { function require_venting(option) { require_input_field("#windows_duration", option); - require_input_field("#windows_frequency", option); set_disabled_status("#windows_duration", !option); - set_disabled_status("#windows_frequency", !option); } function require_lunch(id, option) { @@ -404,14 +401,13 @@ function validate_form(form) { } }); - //Validate window venting duration < venting frequency + //Validate window venting duration > 60 minutes. if (!$("#windows_duration").hasClass("disabled")) { var windowsDurationObj = document.getElementById("windows_duration"); - var windowsFrequencyObj = document.getElementById("windows_frequency"); - removeErrorFor(windowsFrequencyObj); + removeErrorFor(windowsDurationObj); - if (parseInt(windowsDurationObj.value) >= parseInt(windowsFrequencyObj.value)) { - insertErrorFor(windowsFrequencyObj, "Duration >= Frequency"); + if (parseInt(windowsDurationObj.value) > 60.) { + insertErrorFor(windowsDurationObj, "Duration > 60 minutes."); submit = false; } } diff --git a/cara/apps/templates/base/calculator.form.html.j2 b/cara/apps/templates/base/calculator.form.html.j2 index 294cda4f..19d73af7 100644 --- a/cara/apps/templates/base/calculator.form.html.j2 +++ b/cara/apps/templates/base/calculator.form.html.j2 @@ -237,9 +237,8 @@
-
- - +
+

@@ -575,7 +574,7 @@ Ventilation data: