From 71078671f99dee879bfbcf36ff033466feeb26f5 Mon Sep 17 00:00:00 2001 From: jdevine Date: Mon, 25 Apr 2022 16:20:29 +0200 Subject: [PATCH] Updated formula to reflect published correction --- cara/models.py | 7 +++++-- cara/tests/test_full_algorithm.py | 7 ++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/cara/models.py b/cara/models.py index 65f820e9..f2ac2500 100644 --- a/cara/models.py +++ b/cara/models.py @@ -459,10 +459,13 @@ class SARSCoV2(Virus): piecewise constant model (for more details see A. Henriques et al, CERN-OPEN-2021-004, DOI: 10.17181/CERN.1GDQ.5Y75) """ - # Updated to use the formula from Dabish et al. https://doi.org/10.1080/02786826.2020.1829536 + # Updated to use the formula from Dabish et al. with correction https://doi.org/10.1080/02786826.2020.1829536 # with a minimum at hl = 1.1 temperature: _VectorisedFloat = inside_temp.value(time) - return np.maximum(1.1, (0.693/(0.16030 + 0.04018*(((temperature-273.15)-20.615)/10.585)+0.02176*((humidity-45.235)/28.665)+0.1))) + return np.maximum(1.1, (0.693/((0.16030 + 0.04018*(((temperature-273.15)-20.615)/10.585) + +0.02176*((humidity-45.235)/28.665) + -0.14369 + -0.2636*((temperature-273.15)-20.615)/10.585)))) Virus.types = { diff --git a/cara/tests/test_full_algorithm.py b/cara/tests/test_full_algorithm.py index 71f10f05..8a07321c 100644 --- a/cara/tests/test_full_algorithm.py +++ b/cara/tests/test_full_algorithm.py @@ -89,9 +89,10 @@ class SimpleConcentrationModel: """ return (self.lambda_ventilation - + ln2/(max(1.1, (0.693 / (0.16030 + 0.04018 * (((22) - 20.615) / 10.585) + 0.02176 * ( - (self.humidity - 45.235) / 28.665) + 0.1))))) - #6.43 if self.humidity<=0.4 else 1.1) ) + + ln2/(max(1.1, (0.693 / ((0.16030 + 0.04018 * (((22) - 20.615) / 10.585) + + 0.02176 * ((self.humidity - 45.235) / 28.665) + - 0.14369 + - 0.2636((22-20.615)/10.585))))))) @method_cache def deposition_removal_coefficient(self) -> float: