Merge branch 'feature/virus_qid' into 'master'
Virus coefficient_of_infectivity replaced by its inverse (qID) See merge request cara/cara!181
This commit is contained in:
commit
3244f8ba8f
3 changed files with 15 additions and 15 deletions
|
|
@ -419,8 +419,8 @@ class Virus:
|
|||
#: RNA copies / mL
|
||||
viral_load_in_sputum: _VectorisedFloat
|
||||
|
||||
#: Ratio between infectious aerosols and dose to cause infection.
|
||||
coefficient_of_infectivity: _VectorisedFloat
|
||||
#: RNA-copies per quantum
|
||||
quantum_infectious_dose: _VectorisedFloat
|
||||
|
||||
#: Pre-populated examples of Viruses.
|
||||
types: typing.ClassVar[typing.Dict[str, "Virus"]]
|
||||
|
|
@ -436,20 +436,20 @@ Virus.types = {
|
|||
halflife=1.1,
|
||||
viral_load_in_sputum=1e9,
|
||||
# No data on coefficient for SARS-CoV-2 yet.
|
||||
# It is somewhere between 0.001 and 0.01 to have a 50% chance
|
||||
# to cause infection. i.e. 1000 or 100 SARS-CoV viruses to cause infection.
|
||||
coefficient_of_infectivity=0.02,
|
||||
# It is somewhere between 1000 or 100 SARS-CoV viruses to have
|
||||
# a 50% chance to cause infection.
|
||||
quantum_infectious_dose=50.,
|
||||
),
|
||||
'SARS_CoV_2_B117': Virus(
|
||||
# also called VOC-202012/01
|
||||
halflife=1.1,
|
||||
viral_load_in_sputum=1e9,
|
||||
coefficient_of_infectivity=1/30.,
|
||||
quantum_infectious_dose=30.,
|
||||
),
|
||||
'SARS_CoV_2_P1': Virus(
|
||||
halflife=1.1,
|
||||
viral_load_in_sputum=1e9,
|
||||
coefficient_of_infectivity=0.045,
|
||||
quantum_infectious_dose=1/0.045,
|
||||
),
|
||||
}
|
||||
|
||||
|
|
@ -584,10 +584,10 @@ class InfectedPopulation(Population):
|
|||
aerosols = self.expiration.aerosols(self.mask)
|
||||
|
||||
ER = (self.virus.viral_load_in_sputum *
|
||||
self.virus.coefficient_of_infectivity *
|
||||
self.activity.exhalation_rate *
|
||||
10 ** 6 *
|
||||
aerosols)
|
||||
aerosols /
|
||||
self.virus.quantum_infectious_dose)
|
||||
|
||||
# For superspreading event, where ejection_factor is infinite we fix the ER
|
||||
# based on Miller et al. (2020).
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ from cara import models
|
|||
{'air_change': np.array([100, 120])},
|
||||
{'virus_halflife': np.array([1.1, 1.5])},
|
||||
{'viral_load_in_sputum': np.array([5e8, 1e9])},
|
||||
{'coefficient_of_infectivity': np.array([0.02, 0.05])},
|
||||
{'quantum_infectious_dose': np.array([50, 20])},
|
||||
{'η_exhale': np.array([0.92, 0.95])},
|
||||
{'η_leaks': np.array([0.15, 0.20])},
|
||||
]
|
||||
|
|
@ -23,7 +23,7 @@ def test_concentration_model_vectorisation(override_params):
|
|||
'air_change': 100,
|
||||
'virus_halflife': 1.1,
|
||||
'viral_load_in_sputum': 1e9,
|
||||
'coefficient_of_infectivity': 0.02,
|
||||
'quantum_infectious_dose': 50,
|
||||
'η_exhale': 0.95,
|
||||
'η_leaks': 0.15,
|
||||
}
|
||||
|
|
@ -48,7 +48,7 @@ def test_concentration_model_vectorisation(override_params):
|
|||
virus=models.Virus(
|
||||
halflife=defaults['virus_halflife'],
|
||||
viral_load_in_sputum=defaults['viral_load_in_sputum'],
|
||||
coefficient_of_infectivity=defaults['coefficient_of_infectivity'],
|
||||
quantum_infectious_dose=defaults['quantum_infectious_dose'],
|
||||
),
|
||||
expiration=models.Expiration(
|
||||
ejection_factor=(0.084, 0.009, 0.003, 0.002),
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import cara.models
|
|||
@pytest.mark.parametrize(
|
||||
"override_params", [
|
||||
{'viral_load_in_sputum': np.array([5e8, 1e9])},
|
||||
{'coefficient_of_infectivity': np.array([0.02, 0.05])},
|
||||
{'quantum_infectious_dose': np.array([50, 20])},
|
||||
{'η_exhale': np.array([0.92, 0.95])},
|
||||
{'η_leaks': np.array([0.15, 0.20])},
|
||||
{'exhalation_rate': np.array([0.75, 0.81])},
|
||||
|
|
@ -17,7 +17,7 @@ def test_infected_population_vectorisation(override_params):
|
|||
defaults = {
|
||||
'virus_halflife': 1.1,
|
||||
'viral_load_in_sputum': 1e9,
|
||||
'coefficient_of_infectivity': 0.02,
|
||||
'quantum_infectious_dose': 50,
|
||||
'η_exhale': 0.95,
|
||||
'η_leaks': 0.15,
|
||||
'exhalation_rate': 0.75,
|
||||
|
|
@ -40,7 +40,7 @@ def test_infected_population_vectorisation(override_params):
|
|||
virus=cara.models.Virus(
|
||||
halflife=defaults['virus_halflife'],
|
||||
viral_load_in_sputum=defaults['viral_load_in_sputum'],
|
||||
coefficient_of_infectivity=defaults['coefficient_of_infectivity'],
|
||||
quantum_infectious_dose=defaults['quantum_infectious_dose'],
|
||||
),
|
||||
expiration=cara.models.Expiration(
|
||||
ejection_factor=(0.084, 0.009, 0.003, 0.002),
|
||||
|
|
|
|||
Loading…
Reference in a new issue