Skip to content

Releases: CERN/CAiMIRA

Calculator-v4.17.5

21 Nov 10:46
Compare
Choose a tag to compare

Project documentation in Mkdocs

Default form values:

NO_DEFAULT = object()

DEFAULTS = {
    'activity_type': 'office',
    'air_changes': 0.,
    'air_supply': 0.,
    'arve_sensors_option': False,
    'specific_breaks': '{}',
    'precise_activity': '{}',
    'calculator_version': NO_DEFAULT,
    'ceiling_height': 0.,
    'conditional_probability_viral_loads': False,
    'CO2_fitting_result': '{}',
    'exposed_coffee_break_option': 'coffee_break_0',
    'exposed_coffee_duration': 5,
    'exposed_finish': '17:30',
    'exposed_lunch_finish': '13:30',
    'exposed_lunch_option': True,
    'exposed_lunch_start': '12:30',
    'exposed_start': '08:30',
    'event_month': 'January',
    'floor_area': 0.,
    'hepa_amount': 0.,
    'hepa_option': False,
    'humidity': '',
    'infected_coffee_break_option': 'coffee_break_0',
    'infected_coffee_duration': 5,
    'infected_dont_have_breaks_with_exposed': False,
    'infected_finish': '17:30',
    'infected_lunch_finish': '13:30',
    'infected_lunch_option': True,
    'infected_lunch_start': '12:30',
    'infected_people': 1,
    'dynamic_infected_occupancy': NO_DEFAULT,
    'infected_start': '08:30',
    'inside_temp': NO_DEFAULT,
    'location_latitude': NO_DEFAULT,
    'location_longitude': NO_DEFAULT,
    'location_name': NO_DEFAULT,
    'geographic_population': 0,
    'geographic_cases': 0,
    'ascertainment_bias': 'confidence_low',
    'exposure_option': 'p_deterministic_exposure',
    'mask_type': 'Type I',
    'mask_wearing_option': 'mask_off',
    'mechanical_ventilation_type': 'not-applicable',
    'occupancy_format': 'static',
    'opening_distance': 0.,
    'room_heating_option': False,
    'room_number': NO_DEFAULT,
    'room_volume': 0.,
    'simulation_name': NO_DEFAULT,
    'total_people': NO_DEFAULT,
    'dynamic_exposed_occupancy': NO_DEFAULT,
    'vaccine_option': False,
    'vaccine_booster_option': False,
    'vaccine_type': 'AZD1222_(AstraZeneca)',
    'vaccine_booster_type': 'AZD1222_(AstraZeneca)',
    'ventilation_type': 'no_ventilation',
    'virus_type': 'SARS_CoV_2',
    'volume_type': NO_DEFAULT,
    'window_type': 'window_sliding',
    'window_height': 0.,
    'window_width': 0.,
    'windows_duration': 10.,
    'windows_frequency': 60.,
    'windows_number': 0,
    'window_opening_regime': 'windows_open_permanently',
    'sensor_in_use': '',
    'short_range_option': 'short_range_no',
    'short_range_interactions': NO_DEFAULT,
    'short_range_occupants': 0,
}

COFFEE_OPTIONS_INT = {'coffee_break_0': 0, 'coffee_break_1': 1,
                      'coffee_break_2': 2, 'coffee_break_4': 4}
CONFIDENCE_LEVEL_OPTIONS = {'confidence_low': 10,
                            'confidence_medium': 5, 'confidence_high': 2}
MECHANICAL_VENTILATION_TYPES = {
    'mech_type_air_changes', 'mech_type_air_supply', 'not-applicable'}
MASK_WEARING_OPTIONS = {'mask_on', 'mask_off'}
MONTH_NAMES = [
    'January', 'February', 'March', 'April', 'May', 'June', 'July',
    'August', 'September', 'October', 'November', 'December',
]
VACCINE_BOOSTER_TYPE = ['AZD1222_(AstraZeneca)', 'Ad26.COV2.S_(Janssen)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_(4th_dose)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)',
                        'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)', 'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)_(4th_dose)', 'CoronaVac_(Sinovac)', 'Coronavac_(Sinovac)', 'Sinopharm',
                        'mRNA-1273_(Moderna)', 'mRNA-1273_(Moderna)_(4th_dose)', 'Other']
VACCINE_TYPE = ['Ad26.COV2.S_(Janssen)', 'Any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)', 'AZD1222_(AstraZeneca)_and_any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)_and_BNT162b2_(Pfizer)',
                'BBIBP-CorV_(Beijing_CNBG)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)', 'CoronaVac_(Sinovac)', 'CoronaVac_(Sinovac)_and_AZD1222_(AstraZeneca)', 'Covishield',
                'mRNA-1273_(Moderna)', 'Sputnik_V_(Gamaleya)', 'CoronaVac_(Sinovac)_and_BNT162b2_(Pfizer)']
VENTILATION_TYPES = {'natural_ventilation', 'mechanical_ventilation',
                     'no_ventilation', 'from_fitting'}
VOLUME_TYPES = {'room_volume_explicit', 'room_volume_from_dimensions'}
WINDOWS_OPENING_REGIMES = {'windows_open_permanently',
                           'windows_open_periodically', 'not-applicable'}
WINDOWS_TYPES = {'window_sliding', 'window_hinged', 'not-applicable'}

Configuration:

version = None

expiration_particle = {
    "long_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 30,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "short_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 100,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "BLOmodel": {
        "cn": {"B": 0.06, "L": 0.2, "O": 0.0010008},
        "mu": {"B": 0.989541, "L": 1.38629, "O": 4.97673},
        "sigma": {"B": 0.262364, "L": 0.506818, "O": 0.585005},
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "expiration_BLO_factors": {
        "Breathing": {"B": 1., "L": 0., "O": 0., },
        "Speaking": {"B": 1., "L": 1., "O": 1., },
        "Singing": {"B": 1., "L": 5., "O": 5., },
        "Shouting": {"B": 1., "L": 5., "O": 5., },
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "particle": {
        "evaporation_factor": 0.3,
        "references": "Marr et al. (https://doi.org/10.1098/rsif.2018.0298).",
    },
}

activity_distributions = {
    "Seated": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Standing": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Light activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Moderate activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Heavy exercise": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049,
                "lognormal_standard_deviation_gaussian": 0.21744554768657565,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049...
Read more

Calculator-v4.17.4

05 Nov 10:16
Compare
Choose a tag to compare

CO2 fitting algorithm post-review changes

Default form values:

NO_DEFAULT = object()
DEFAULTS = {
    'activity_type': 'office',
    'air_changes': 0.,
    'air_supply': 0.,
    'arve_sensors_option': False,
    'specific_breaks': '{}',
    'precise_activity': '{}',
    'calculator_version': NO_DEFAULT,
    'ceiling_height': 0.,
    'conditional_probability_viral_loads': False,
    'CO2_fitting_result': '{}',
    'exposed_coffee_break_option': 'coffee_break_0',
    'exposed_coffee_duration': 5,
    'exposed_finish': '17:30',
    'exposed_lunch_finish': '13:30',
    'exposed_lunch_option': True,
    'exposed_lunch_start': '12:30',
    'exposed_start': '08:30',
    'event_month': 'January',
    'floor_area': 0.,
    'hepa_amount': 0.,
    'hepa_option': False,
    'humidity': '',
    'infected_coffee_break_option': 'coffee_break_0',
    'infected_coffee_duration': 5,
    'infected_dont_have_breaks_with_exposed': False,
    'infected_finish': '17:30',
    'infected_lunch_finish': '13:30',
    'infected_lunch_option': True,
    'infected_lunch_start': '12:30',
    'infected_people': 1,
    'dynamic_infected_occupancy': NO_DEFAULT,
    'infected_start': '08:30',
    'inside_temp': NO_DEFAULT,
    'location_latitude': NO_DEFAULT,
    'location_longitude': NO_DEFAULT,
    'location_name': NO_DEFAULT,
    'geographic_population': 0,
    'geographic_cases': 0,
    'ascertainment_bias': 'confidence_low',
    'exposure_option': 'p_deterministic_exposure',
    'mask_type': 'Type I',
    'mask_wearing_option': 'mask_off',
    'mechanical_ventilation_type': 'not-applicable',
    'occupancy_format': 'static',
    'opening_distance': 0.,
    'room_heating_option': False,
    'room_number': NO_DEFAULT,
    'room_volume': 0.,
    'simulation_name': NO_DEFAULT,
    'total_people': NO_DEFAULT,
    'dynamic_exposed_occupancy': NO_DEFAULT,
    'vaccine_option': False,
    'vaccine_booster_option': False,
    'vaccine_type': 'AZD1222_(AstraZeneca)',
    'vaccine_booster_type': 'AZD1222_(AstraZeneca)',
    'ventilation_type': 'no_ventilation',
    'virus_type': 'SARS_CoV_2',
    'volume_type': NO_DEFAULT,
    'window_type': 'window_sliding',
    'window_height': 0.,
    'window_width': 0.,
    'windows_duration': 10.,
    'windows_frequency': 60.,
    'windows_number': 0,
    'window_opening_regime': 'windows_open_permanently',
    'sensor_in_use': '',
    'short_range_option': 'short_range_no',
    'short_range_interactions': NO_DEFAULT,
    'short_range_occupants': 0,
}

# ------------------ Activities ----------------------

# ------------------ Validation ----------------------
COFFEE_OPTIONS_INT = {'coffee_break_0': 0, 'coffee_break_1': 1,
                      'coffee_break_2': 2, 'coffee_break_4': 4}
CONFIDENCE_LEVEL_OPTIONS = {'confidence_low': 10,
                            'confidence_medium': 5, 'confidence_high': 2}
MECHANICAL_VENTILATION_TYPES = {
    'mech_type_air_changes', 'mech_type_air_supply', 'not-applicable'}
MASK_WEARING_OPTIONS = {'mask_on', 'mask_off'}
MONTH_NAMES = [
    'January', 'February', 'March', 'April', 'May', 'June', 'July',
    'August', 'September', 'October', 'November', 'December',
]
VACCINE_BOOSTER_TYPE = ['AZD1222_(AstraZeneca)', 'Ad26.COV2.S_(Janssen)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_(4th_dose)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)',
                        'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)', 'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)_(4th_dose)', 'CoronaVac_(Sinovac)', 'Coronavac_(Sinovac)', 'Sinopharm',
                        'mRNA-1273_(Moderna)', 'mRNA-1273_(Moderna)_(4th_dose)', 'Other']
VACCINE_TYPE = ['Ad26.COV2.S_(Janssen)', 'Any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)', 'AZD1222_(AstraZeneca)_and_any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)_and_BNT162b2_(Pfizer)',
                'BBIBP-CorV_(Beijing_CNBG)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)', 'CoronaVac_(Sinovac)', 'CoronaVac_(Sinovac)_and_AZD1222_(AstraZeneca)', 'Covishield',
                'mRNA-1273_(Moderna)', 'Sputnik_V_(Gamaleya)', 'CoronaVac_(Sinovac)_and_BNT162b2_(Pfizer)']
VENTILATION_TYPES = {'natural_ventilation', 'mechanical_ventilation',
                     'no_ventilation', 'from_fitting'}
VOLUME_TYPES = {'room_volume_explicit', 'room_volume_from_dimensions'}
WINDOWS_OPENING_REGIMES = {'windows_open_permanently',
                           'windows_open_periodically', 'not-applicable'}
WINDOWS_TYPES = {'window_sliding', 'window_hinged', 'not-applicable'}

Configuration:

version = None

expiration_particle = {
    "long_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 30,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "short_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 100,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "BLOmodel": {
        "cn": {"B": 0.06, "L": 0.2, "O": 0.0010008},
        "mu": {"B": 0.989541, "L": 1.38629, "O": 4.97673},
        "sigma": {"B": 0.262364, "L": 0.506818, "O": 0.585005},
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "expiration_BLO_factors": {
        "Breathing": {"B": 1., "L": 0., "O": 0., },
        "Speaking": {"B": 1., "L": 1., "O": 1., },
        "Singing": {"B": 1., "L": 5., "O": 5., },
        "Shouting": {"B": 1., "L": 5., "O": 5., },
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "particle": {
        "evaporation_factor": 0.3,
        "references": "Marr et al. (https://doi.org/10.1098/rsif.2018.0298).",
    },
}

activity_distributions = {
    "Seated": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Standing": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Light activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Moderate activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Heavy exercise": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049,
                "lognormal_standard_deviation_gaussian": 0.21744554768657565,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_valu...
Read more

Calculator-v4.17.3

16 Oct 09:18
Compare
Choose a tag to compare

Added Eq. ventilation to HEPA question

Default form values:

NO_DEFAULT = object()
DEFAULTS = {
    'activity_type': 'office',
    'air_changes': 0.,
    'air_supply': 0.,
    'arve_sensors_option': False,
    'specific_breaks': '{}',
    'precise_activity': '{}',
    'calculator_version': NO_DEFAULT,
    'ceiling_height': 0.,
    'conditional_probability_viral_loads': False,
    'CO2_fitting_result': '{}',
    'exposed_coffee_break_option': 'coffee_break_0',
    'exposed_coffee_duration': 5,
    'exposed_finish': '17:30',
    'exposed_lunch_finish': '13:30',
    'exposed_lunch_option': True,
    'exposed_lunch_start': '12:30',
    'exposed_start': '08:30',
    'event_month': 'January',
    'floor_area': 0.,
    'hepa_amount': 0.,
    'hepa_option': False,
    'humidity': '',
    'infected_coffee_break_option': 'coffee_break_0',
    'infected_coffee_duration': 5,
    'infected_dont_have_breaks_with_exposed': False,
    'infected_finish': '17:30',
    'infected_lunch_finish': '13:30',
    'infected_lunch_option': True,
    'infected_lunch_start': '12:30',
    'infected_people': 1,
    'dynamic_infected_occupancy': NO_DEFAULT,
    'infected_start': '08:30',
    'inside_temp': NO_DEFAULT,
    'location_latitude': NO_DEFAULT,
    'location_longitude': NO_DEFAULT,
    'location_name': NO_DEFAULT,
    'geographic_population': 0,
    'geographic_cases': 0,
    'ascertainment_bias': 'confidence_low',
    'exposure_option': 'p_deterministic_exposure',
    'mask_type': 'Type I',
    'mask_wearing_option': 'mask_off',
    'mechanical_ventilation_type': 'not-applicable',
    'occupancy_format': 'static',
    'opening_distance': 0.,
    'room_heating_option': False,
    'room_number': NO_DEFAULT,
    'room_volume': 0.,
    'simulation_name': NO_DEFAULT,
    'total_people': NO_DEFAULT,
    'dynamic_exposed_occupancy': NO_DEFAULT,
    'vaccine_option': False,
    'vaccine_booster_option': False,
    'vaccine_type': 'AZD1222_(AstraZeneca)',
    'vaccine_booster_type': 'AZD1222_(AstraZeneca)',
    'ventilation_type': 'no_ventilation',
    'virus_type': 'SARS_CoV_2',
    'volume_type': NO_DEFAULT,
    'window_type': 'window_sliding',
    'window_height': 0.,
    'window_width': 0.,
    'windows_duration': 10.,
    'windows_frequency': 60.,
    'windows_number': 0,
    'window_opening_regime': 'windows_open_permanently',
    'sensor_in_use': '',
    'short_range_option': 'short_range_no',
    'short_range_interactions': NO_DEFAULT,
    'short_range_occupants': 0,
}

# ------------------ Activities ----------------------

# ------------------ Validation ----------------------
COFFEE_OPTIONS_INT = {'coffee_break_0': 0, 'coffee_break_1': 1,
                      'coffee_break_2': 2, 'coffee_break_4': 4}
CONFIDENCE_LEVEL_OPTIONS = {'confidence_low': 10,
                            'confidence_medium': 5, 'confidence_high': 2}
MECHANICAL_VENTILATION_TYPES = {
    'mech_type_air_changes', 'mech_type_air_supply', 'not-applicable'}
MASK_WEARING_OPTIONS = {'mask_on', 'mask_off'}
MONTH_NAMES = [
    'January', 'February', 'March', 'April', 'May', 'June', 'July',
    'August', 'September', 'October', 'November', 'December',
]
VACCINE_BOOSTER_TYPE = ['AZD1222_(AstraZeneca)', 'Ad26.COV2.S_(Janssen)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_(4th_dose)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)',
                        'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)', 'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)_(4th_dose)', 'CoronaVac_(Sinovac)', 'Coronavac_(Sinovac)', 'Sinopharm',
                        'mRNA-1273_(Moderna)', 'mRNA-1273_(Moderna)_(4th_dose)', 'Other']
VACCINE_TYPE = ['Ad26.COV2.S_(Janssen)', 'Any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)', 'AZD1222_(AstraZeneca)_and_any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)_and_BNT162b2_(Pfizer)',
                'BBIBP-CorV_(Beijing_CNBG)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)', 'CoronaVac_(Sinovac)', 'CoronaVac_(Sinovac)_and_AZD1222_(AstraZeneca)', 'Covishield',
                'mRNA-1273_(Moderna)', 'Sputnik_V_(Gamaleya)', 'CoronaVac_(Sinovac)_and_BNT162b2_(Pfizer)']
VENTILATION_TYPES = {'natural_ventilation', 'mechanical_ventilation',
                     'no_ventilation', 'from_fitting'}
VOLUME_TYPES = {'room_volume_explicit', 'room_volume_from_dimensions'}
WINDOWS_OPENING_REGIMES = {'windows_open_permanently',
                           'windows_open_periodically', 'not-applicable'}
WINDOWS_TYPES = {'window_sliding', 'window_hinged', 'not-applicable'}

Configuration:

version = None

expiration_particle = {
    "long_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 30,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "short_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 100,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "BLOmodel": {
        "cn": {"B": 0.06, "L": 0.2, "O": 0.0010008},
        "mu": {"B": 0.989541, "L": 1.38629, "O": 4.97673},
        "sigma": {"B": 0.262364, "L": 0.506818, "O": 0.585005},
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "expiration_BLO_factors": {
        "Breathing": {"B": 1., "L": 0., "O": 0., },
        "Speaking": {"B": 1., "L": 1., "O": 1., },
        "Singing": {"B": 1., "L": 5., "O": 5., },
        "Shouting": {"B": 1., "L": 5., "O": 5., },
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "particle": {
        "evaporation_factor": 0.3,
        "references": "Marr et al. (https://doi.org/10.1098/rsif.2018.0298).",
    },
}

activity_distributions = {
    "Seated": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Standing": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Light activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Moderate activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Heavy exercise": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049,
                "lognormal_standard_deviation_gaussian": 0.21744554768657565,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value":...
Read more

v4.17.2: Merge branch 'bugfix/API_refinement' into 'master'

20 Sep 10:02
Compare
Choose a tag to compare

CAiMIRA REST API

Default form values:

NO_DEFAULT = object()
DEFAULTS = {
    'activity_type': 'office',
    'air_changes': 0.,
    'air_supply': 0.,
    'arve_sensors_option': False,
    'specific_breaks': '{}',
    'precise_activity': '{}',
    'calculator_version': NO_DEFAULT,
    'ceiling_height': 0.,
    'conditional_probability_viral_loads': False,
    'CO2_fitting_result': '{}',
    'exposed_coffee_break_option': 'coffee_break_0',
    'exposed_coffee_duration': 5,
    'exposed_finish': '17:30',
    'exposed_lunch_finish': '13:30',
    'exposed_lunch_option': True,
    'exposed_lunch_start': '12:30',
    'exposed_start': '08:30',
    'event_month': 'January',
    'floor_area': 0.,
    'hepa_amount': 0.,
    'hepa_option': False,
    'humidity': '',
    'infected_coffee_break_option': 'coffee_break_0',
    'infected_coffee_duration': 5,
    'infected_dont_have_breaks_with_exposed': False,
    'infected_finish': '17:30',
    'infected_lunch_finish': '13:30',
    'infected_lunch_option': True,
    'infected_lunch_start': '12:30',
    'infected_people': 1,
    'dynamic_infected_occupancy': NO_DEFAULT,
    'infected_start': '08:30',
    'inside_temp': NO_DEFAULT,
    'location_latitude': NO_DEFAULT,
    'location_longitude': NO_DEFAULT,
    'location_name': NO_DEFAULT,
    'geographic_population': 0,
    'geographic_cases': 0,
    'ascertainment_bias': 'confidence_low',
    'exposure_option': 'p_deterministic_exposure',
    'mask_type': 'Type I',
    'mask_wearing_option': 'mask_off',
    'mechanical_ventilation_type': 'not-applicable',
    'occupancy_format': 'static',
    'opening_distance': 0.,
    'room_heating_option': False,
    'room_number': NO_DEFAULT,
    'room_volume': 0.,
    'simulation_name': NO_DEFAULT,
    'total_people': NO_DEFAULT,
    'dynamic_exposed_occupancy': NO_DEFAULT,
    'vaccine_option': False,
    'vaccine_booster_option': False,
    'vaccine_type': 'AZD1222_(AstraZeneca)',
    'vaccine_booster_type': 'AZD1222_(AstraZeneca)',
    'ventilation_type': 'no_ventilation',
    'virus_type': 'SARS_CoV_2',
    'volume_type': NO_DEFAULT,
    'window_type': 'window_sliding',
    'window_height': 0.,
    'window_width': 0.,
    'windows_duration': 10.,
    'windows_frequency': 60.,
    'windows_number': 0,
    'window_opening_regime': 'windows_open_permanently',
    'sensor_in_use': '',
    'short_range_option': 'short_range_no',
    'short_range_interactions': NO_DEFAULT,
    'short_range_occupants': 0,
}

# ------------------ Activities ----------------------

# ------------------ Validation ----------------------
COFFEE_OPTIONS_INT = {'coffee_break_0': 0, 'coffee_break_1': 1,
                      'coffee_break_2': 2, 'coffee_break_4': 4}
CONFIDENCE_LEVEL_OPTIONS = {'confidence_low': 10,
                            'confidence_medium': 5, 'confidence_high': 2}
MECHANICAL_VENTILATION_TYPES = {
    'mech_type_air_changes', 'mech_type_air_supply', 'not-applicable'}
MASK_WEARING_OPTIONS = {'mask_on', 'mask_off'}
MONTH_NAMES = [
    'January', 'February', 'March', 'April', 'May', 'June', 'July',
    'August', 'September', 'October', 'November', 'December',
]
VACCINE_BOOSTER_TYPE = ['AZD1222_(AstraZeneca)', 'Ad26.COV2.S_(Janssen)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_(4th_dose)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)',
                        'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)', 'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)_(4th_dose)', 'CoronaVac_(Sinovac)', 'Coronavac_(Sinovac)', 'Sinopharm',
                        'mRNA-1273_(Moderna)', 'mRNA-1273_(Moderna)_(4th_dose)', 'Other']
VACCINE_TYPE = ['Ad26.COV2.S_(Janssen)', 'Any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)', 'AZD1222_(AstraZeneca)_and_any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)_and_BNT162b2_(Pfizer)',
                'BBIBP-CorV_(Beijing_CNBG)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)', 'CoronaVac_(Sinovac)', 'CoronaVac_(Sinovac)_and_AZD1222_(AstraZeneca)', 'Covishield',
                'mRNA-1273_(Moderna)', 'Sputnik_V_(Gamaleya)', 'CoronaVac_(Sinovac)_and_BNT162b2_(Pfizer)']
VENTILATION_TYPES = {'natural_ventilation', 'mechanical_ventilation',
                     'no_ventilation', 'from_fitting'}
VOLUME_TYPES = {'room_volume_explicit', 'room_volume_from_dimensions'}
WINDOWS_OPENING_REGIMES = {'windows_open_permanently',
                           'windows_open_periodically', 'not-applicable'}
WINDOWS_TYPES = {'window_sliding', 'window_hinged', 'not-applicable'}

Configuration:

version = None

expiration_particle = {
    "long_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 30,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "short_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 100,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "BLOmodel": {
        "cn": {"B": 0.06, "L": 0.2, "O": 0.0010008},
        "mu": {"B": 0.989541, "L": 1.38629, "O": 4.97673},
        "sigma": {"B": 0.262364, "L": 0.506818, "O": 0.585005},
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "expiration_BLO_factors": {
        "Breathing": {"B": 1., "L": 0., "O": 0., },
        "Speaking": {"B": 1., "L": 1., "O": 1., },
        "Singing": {"B": 1., "L": 5., "O": 5., },
        "Shouting": {"B": 1., "L": 5., "O": 5., },
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "particle": {
        "evaporation_factor": 0.3,
        "references": "Marr et al. (https://doi.org/10.1098/rsif.2018.0298).",
    },
}

activity_distributions = {
    "Seated": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Standing": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Light activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Moderate activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Heavy exercise": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049,
                "lognormal_standard_deviation_gaussian": 0.21744554768657565,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribut...
Read more

Calculator-v4.16.1: Merge branch 'bugfix/short-range-f_inf' into 'master'

20 Aug 09:39
Compare
Choose a tag to compare

Fixed error with fraction of infectious virus (f_inf) (short-range).

Default form values:

NO_DEFAULT = object()
DEFAULTS = {
    'activity_type': 'office',
    'air_changes': 0.,
    'air_supply': 0.,
    'arve_sensors_option': False,
    'specific_breaks': '{}',
    'precise_activity': '{}',
    'calculator_version': NO_DEFAULT,
    'ceiling_height': 0.,
    'conditional_probability_plot': False,
    'conditional_probability_viral_loads': False,
    'CO2_fitting_result': '{}',
    'exposed_coffee_break_option': 'coffee_break_0',
    'exposed_coffee_duration': 5,
    'exposed_finish': '17:30',
    'exposed_lunch_finish': '13:30',
    'exposed_lunch_option': True,
    'exposed_lunch_start': '12:30',
    'exposed_start': '08:30',
    'event_month': 'January',
    'floor_area': 0.,
    'hepa_amount': 0.,
    'hepa_option': False,
    'humidity': '',
    'infected_coffee_break_option': 'coffee_break_0',
    'infected_coffee_duration': 5,
    'infected_dont_have_breaks_with_exposed': False,
    'infected_finish': '17:30',
    'infected_lunch_finish': '13:30',
    'infected_lunch_option': True,
    'infected_lunch_start': '12:30',
    'infected_people': 1,
    'infected_start': '08:30',
    'inside_temp': NO_DEFAULT,
    'location_latitude': NO_DEFAULT,
    'location_longitude': NO_DEFAULT,
    'location_name': NO_DEFAULT,
    'geographic_population': 0,
    'geographic_cases': 0,
    'ascertainment_bias': 'confidence_low',
    'exposure_option': 'p_deterministic_exposure',
    'mask_type': 'Type I',
    'mask_wearing_option': 'mask_off',
    'mechanical_ventilation_type': 'not-applicable',
    'opening_distance': 0.,
    'room_heating_option': False,
    'room_number': NO_DEFAULT,
    'room_volume': 0.,
    'simulation_name': NO_DEFAULT,
    'total_people': NO_DEFAULT,
    'vaccine_option': False,
    'vaccine_booster_option': False,
    'vaccine_type': 'AZD1222_(AstraZeneca)',
    'vaccine_booster_type': 'AZD1222_(AstraZeneca)',
    'ventilation_type': 'no_ventilation',
    'virus_type': 'SARS_CoV_2',
    'volume_type': NO_DEFAULT,
    'window_type': 'window_sliding',
    'window_height': 0.,
    'window_width': 0.,
    'windows_duration': 10.,
    'windows_frequency': 60.,
    'windows_number': 0,
    'window_opening_regime': 'windows_open_permanently',
    'sensor_in_use': '',
    'short_range_option': 'short_range_no',
    'short_range_interactions': '[]',
    'short_range_occupants': 0,
}

# ------------------ Activities ----------------------

# ------------------ Validation ----------------------
COFFEE_OPTIONS_INT = {'coffee_break_0': 0, 'coffee_break_1': 1,
                      'coffee_break_2': 2, 'coffee_break_4': 4}
CONFIDENCE_LEVEL_OPTIONS = {'confidence_low': 10,
                            'confidence_medium': 5, 'confidence_high': 2}
MECHANICAL_VENTILATION_TYPES = {
    'mech_type_air_changes', 'mech_type_air_supply', 'not-applicable'}
MASK_WEARING_OPTIONS = {'mask_on', 'mask_off'}
MONTH_NAMES = [
    'January', 'February', 'March', 'April', 'May', 'June', 'July',
    'August', 'September', 'October', 'November', 'December',
]
VACCINE_BOOSTER_TYPE = ['AZD1222_(AstraZeneca)', 'Ad26.COV2.S_(Janssen)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_(4th_dose)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)',
                        'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)', 'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)_(4th_dose)', 'CoronaVac_(Sinovac)', 'Coronavac_(Sinovac)', 'Sinopharm',
                        'mRNA-1273_(Moderna)', 'mRNA-1273_(Moderna)_(4th_dose)', 'Other']
VACCINE_TYPE = ['Ad26.COV2.S_(Janssen)', 'Any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)', 'AZD1222_(AstraZeneca)_and_any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)_and_BNT162b2_(Pfizer)',
                'BBIBP-CorV_(Beijing_CNBG)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)', 'CoronaVac_(Sinovac)', 'CoronaVac_(Sinovac)_and_AZD1222_(AstraZeneca)', 'Covishield',
                'mRNA-1273_(Moderna)', 'Sputnik_V_(Gamaleya)', 'CoronaVac_(Sinovac)_and_BNT162b2_(Pfizer)']
VENTILATION_TYPES = {'natural_ventilation', 'mechanical_ventilation',
                     'no_ventilation', 'from_fitting'}
VOLUME_TYPES = {'room_volume_explicit', 'room_volume_from_dimensions'}
WINDOWS_OPENING_REGIMES = {'windows_open_permanently',
                           'windows_open_periodically', 'not-applicable'}
WINDOWS_TYPES = {'window_sliding', 'window_hinged', 'not-applicable'}

Configuration:

version = None

expiration_particle = {
    "long_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 30,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "short_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 100,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "BLOmodel": {
        "cn": {"B": 0.06, "L": 0.2, "O": 0.0010008},
        "mu": {"B": 0.989541, "L": 1.38629, "O": 4.97673},
        "sigma": {"B": 0.262364, "L": 0.506818, "O": 0.585005},
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "expiration_BLO_factors": {
        "Breathing": {"B": 1., "L": 0., "O": 0., },
        "Speaking": {"B": 1., "L": 1., "O": 1., },
        "Singing": {"B": 1., "L": 5., "O": 5., },
        "Shouting": {"B": 1., "L": 5., "O": 5., },
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "particle": {
        "evaporation_factor": 0.3,
        "references": "Marr et al. (https://doi.org/10.1098/rsif.2018.0298).",
    },
}

activity_distributions = {
    "Seated": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Standing": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Light activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Moderate activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Heavy exercise": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049,
                "lognormal_standard_deviation_gaussian": 0.21744554768657565,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
...
Read more

Calculator-v4.16.0: Merge branch 'changes/caimira_schema_2.0.2' into 'master'

20 Aug 09:38
Compare
Choose a tag to compare

Deprecate ExpertApplication and CO2Application

Default form values:

NO_DEFAULT = object()
DEFAULTS = {
    'activity_type': 'office',
    'air_changes': 0.,
    'air_supply': 0.,
    'arve_sensors_option': False,
    'specific_breaks': '{}',
    'precise_activity': '{}',
    'calculator_version': NO_DEFAULT,
    'ceiling_height': 0.,
    'conditional_probability_plot': False,
    'conditional_probability_viral_loads': False,
    'CO2_fitting_result': '{}',
    'exposed_coffee_break_option': 'coffee_break_0',
    'exposed_coffee_duration': 5,
    'exposed_finish': '17:30',
    'exposed_lunch_finish': '13:30',
    'exposed_lunch_option': True,
    'exposed_lunch_start': '12:30',
    'exposed_start': '08:30',
    'event_month': 'January',
    'floor_area': 0.,
    'hepa_amount': 0.,
    'hepa_option': False,
    'humidity': '',
    'infected_coffee_break_option': 'coffee_break_0',
    'infected_coffee_duration': 5,
    'infected_dont_have_breaks_with_exposed': False,
    'infected_finish': '17:30',
    'infected_lunch_finish': '13:30',
    'infected_lunch_option': True,
    'infected_lunch_start': '12:30',
    'infected_people': 1,
    'infected_start': '08:30',
    'inside_temp': NO_DEFAULT,
    'location_latitude': NO_DEFAULT,
    'location_longitude': NO_DEFAULT,
    'location_name': NO_DEFAULT,
    'geographic_population': 0,
    'geographic_cases': 0,
    'ascertainment_bias': 'confidence_low',
    'exposure_option': 'p_deterministic_exposure',
    'mask_type': 'Type I',
    'mask_wearing_option': 'mask_off',
    'mechanical_ventilation_type': 'not-applicable',
    'opening_distance': 0.,
    'room_heating_option': False,
    'room_number': NO_DEFAULT,
    'room_volume': 0.,
    'simulation_name': NO_DEFAULT,
    'total_people': NO_DEFAULT,
    'vaccine_option': False,
    'vaccine_booster_option': False,
    'vaccine_type': 'AZD1222_(AstraZeneca)',
    'vaccine_booster_type': 'AZD1222_(AstraZeneca)',
    'ventilation_type': 'no_ventilation',
    'virus_type': 'SARS_CoV_2',
    'volume_type': NO_DEFAULT,
    'window_type': 'window_sliding',
    'window_height': 0.,
    'window_width': 0.,
    'windows_duration': 10.,
    'windows_frequency': 60.,
    'windows_number': 0,
    'window_opening_regime': 'windows_open_permanently',
    'sensor_in_use': '',
    'short_range_option': 'short_range_no',
    'short_range_interactions': '[]',
    'short_range_occupants': 0,
}

# ------------------ Activities ----------------------

# ------------------ Validation ----------------------
COFFEE_OPTIONS_INT = {'coffee_break_0': 0, 'coffee_break_1': 1,
                      'coffee_break_2': 2, 'coffee_break_4': 4}
CONFIDENCE_LEVEL_OPTIONS = {'confidence_low': 10,
                            'confidence_medium': 5, 'confidence_high': 2}
MECHANICAL_VENTILATION_TYPES = {
    'mech_type_air_changes', 'mech_type_air_supply', 'not-applicable'}
MASK_WEARING_OPTIONS = {'mask_on', 'mask_off'}
MONTH_NAMES = [
    'January', 'February', 'March', 'April', 'May', 'June', 'July',
    'August', 'September', 'October', 'November', 'December',
]
VACCINE_BOOSTER_TYPE = ['AZD1222_(AstraZeneca)', 'Ad26.COV2.S_(Janssen)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_(4th_dose)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)',
                        'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)', 'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)_(4th_dose)', 'CoronaVac_(Sinovac)', 'Coronavac_(Sinovac)', 'Sinopharm',
                        'mRNA-1273_(Moderna)', 'mRNA-1273_(Moderna)_(4th_dose)', 'Other']
VACCINE_TYPE = ['Ad26.COV2.S_(Janssen)', 'Any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)', 'AZD1222_(AstraZeneca)_and_any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)_and_BNT162b2_(Pfizer)',
                'BBIBP-CorV_(Beijing_CNBG)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)', 'CoronaVac_(Sinovac)', 'CoronaVac_(Sinovac)_and_AZD1222_(AstraZeneca)', 'Covishield',
                'mRNA-1273_(Moderna)', 'Sputnik_V_(Gamaleya)', 'CoronaVac_(Sinovac)_and_BNT162b2_(Pfizer)']
VENTILATION_TYPES = {'natural_ventilation', 'mechanical_ventilation',
                     'no_ventilation', 'from_fitting'}
VOLUME_TYPES = {'room_volume_explicit', 'room_volume_from_dimensions'}
WINDOWS_OPENING_REGIMES = {'windows_open_permanently',
                           'windows_open_periodically', 'not-applicable'}
WINDOWS_TYPES = {'window_sliding', 'window_hinged', 'not-applicable'}

Configuration:

version = None

expiration_particle = {
    "long_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 30,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "short_range_particle_diameter": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 100,
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "BLOmodel": {
        "cn": {"B": 0.06, "L": 0.2, "O": 0.0010008},
        "mu": {"B": 0.989541, "L": 1.38629, "O": 4.97673},
        "sigma": {"B": 0.262364, "L": 0.506818, "O": 0.585005},
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "expiration_BLO_factors": {
        "Breathing": {"B": 1., "L": 0., "O": 0., },
        "Speaking": {"B": 1., "L": 1., "O": 1., },
        "Singing": {"B": 1., "L": 5., "O": 5., },
        "Shouting": {"B": 1., "L": 5., "O": 5., },
        "references": "Morawska et al. (https://doi.org/10.1016/j.jaerosci.2008.11.002); Johnson et al. (https://doi.org/10.1016/j.jaerosci.2011.07.009).",
    },
    "particle": {
        "evaporation_factor": 0.3,
        "references": "Marr et al. (https://doi.org/10.1098/rsif.2018.0298).",
    },
}

activity_distributions = {
    "Seated": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Standing": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Light activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Moderate activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
    },
    "Heavy exercise": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049,
                "lognormal_standard_deviation_gaussian": 0.21744554768657565,
            },
            "references": "Henriques et al. (https://doi.org/10.1098/rsfs.2021.0076) and references therein.",
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognorm...
Read more

Calculator-v4.15.3: Merge branch 'changes/schema_update' into 'master'

20 Aug 09:38
Compare
Choose a tag to compare

Data registry (schema v2.1.1) and model updates to reflect changes.

Default form values:

NO_DEFAULT = object()
DEFAULTS = {
    'activity_type': 'office',
    'air_changes': 0.,
    'air_supply': 0.,
    'arve_sensors_option': False,
    'specific_breaks': '{}',
    'precise_activity': '{}',
    'calculator_version': NO_DEFAULT,
    'ceiling_height': 0.,
    'conditional_probability_plot': False,
    'conditional_probability_viral_loads': False,
    'CO2_fitting_result': '{}',
    'exposed_coffee_break_option': 'coffee_break_0',
    'exposed_coffee_duration': 5,
    'exposed_finish': '17:30',
    'exposed_lunch_finish': '13:30',
    'exposed_lunch_option': True,
    'exposed_lunch_start': '12:30',
    'exposed_start': '08:30',
    'event_month': 'January',
    'floor_area': 0.,
    'hepa_amount': 0.,
    'hepa_option': False,
    'humidity': '',
    'infected_coffee_break_option': 'coffee_break_0',
    'infected_coffee_duration': 5,
    'infected_dont_have_breaks_with_exposed': False,
    'infected_finish': '17:30',
    'infected_lunch_finish': '13:30',
    'infected_lunch_option': True,
    'infected_lunch_start': '12:30',
    'infected_people': 1,
    'infected_start': '08:30',
    'inside_temp': NO_DEFAULT,
    'location_latitude': NO_DEFAULT,
    'location_longitude': NO_DEFAULT,
    'location_name': NO_DEFAULT,
    'geographic_population': 0,
    'geographic_cases': 0,
    'ascertainment_bias': 'confidence_low',
    'exposure_option': 'p_deterministic_exposure',
    'mask_type': 'Type I',
    'mask_wearing_option': 'mask_off',
    'mechanical_ventilation_type': 'not-applicable',
    'opening_distance': 0.,
    'room_heating_option': False,
    'room_number': NO_DEFAULT,
    'room_volume': 0.,
    'simulation_name': NO_DEFAULT,
    'total_people': NO_DEFAULT,
    'vaccine_option': False,
    'vaccine_booster_option': False,
    'vaccine_type': 'AZD1222_(AstraZeneca)',
    'vaccine_booster_type': 'AZD1222_(AstraZeneca)',
    'ventilation_type': 'no_ventilation',
    'virus_type': 'SARS_CoV_2',
    'volume_type': NO_DEFAULT,
    'window_type': 'window_sliding',
    'window_height': 0.,
    'window_width': 0.,
    'windows_duration': 10.,
    'windows_frequency': 60.,
    'windows_number': 0,
    'window_opening_regime': 'windows_open_permanently',
    'sensor_in_use': '',
    'short_range_option': 'short_range_no',
    'short_range_interactions': '[]',
    'short_range_occupants': 0,
}

# ------------------ Activities ----------------------

# ------------------ Validation ----------------------
COFFEE_OPTIONS_INT = {'coffee_break_0': 0, 'coffee_break_1': 1,
                      'coffee_break_2': 2, 'coffee_break_4': 4}
CONFIDENCE_LEVEL_OPTIONS = {'confidence_low': 10,
                            'confidence_medium': 5, 'confidence_high': 2}
MECHANICAL_VENTILATION_TYPES = {
    'mech_type_air_changes', 'mech_type_air_supply', 'not-applicable'}
MASK_WEARING_OPTIONS = {'mask_on', 'mask_off'}
MONTH_NAMES = [
    'January', 'February', 'March', 'April', 'May', 'June', 'July',
    'August', 'September', 'October', 'November', 'December',
]
VACCINE_BOOSTER_TYPE = ['AZD1222_(AstraZeneca)', 'Ad26.COV2.S_(Janssen)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_(4th_dose)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)',
                        'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)', 'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)_(4th_dose)', 'CoronaVac_(Sinovac)', 'Coronavac_(Sinovac)', 'Sinopharm',
                        'mRNA-1273_(Moderna)', 'mRNA-1273_(Moderna)_(4th_dose)', 'Other']
VACCINE_TYPE = ['Ad26.COV2.S_(Janssen)', 'Any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)', 'AZD1222_(AstraZeneca)_and_any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)_and_BNT162b2_(Pfizer)',
                'BBIBP-CorV_(Beijing_CNBG)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)', 'CoronaVac_(Sinovac)', 'CoronaVac_(Sinovac)_and_AZD1222_(AstraZeneca)', 'Covishield',
                'mRNA-1273_(Moderna)', 'Sputnik_V_(Gamaleya)', 'CoronaVac_(Sinovac)_and_BNT162b2_(Pfizer)']
VENTILATION_TYPES = {'natural_ventilation', 'mechanical_ventilation',
                     'no_ventilation', 'from_fitting'}
VOLUME_TYPES = {'room_volume_explicit', 'room_volume_from_dimensions'}
WINDOWS_OPENING_REGIMES = {'windows_open_permanently',
                           'windows_open_periodically', 'not-applicable'}
WINDOWS_TYPES = {'window_sliding', 'window_hinged', 'not-applicable'}

Configuration:

version = None

expiration_particle = {
    "long_range_expiration_distributions": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 30,
    },
    "short_range_expiration_distributions": {
        "minimum_diameter": 0.1,
        "maximum_diameter": 100,
    },
    "BLOmodel": {
        "cn": {"B": 0.06, "L": 0.2, "O": 0.0010008},
        "mu": {"B": 0.989541, "L": 1.38629, "O": 4.97673},
        "sigma": {"B": 0.262364, "L": 0.506818, "O": 0.585005},
    },
    "expiration_BLO_factors": {
        "Breathing": {"B": 1., "L": 0., "O": 0., },
        "Speaking": {"B": 1., "L": 1., "O": 1., },
        "Singing": {"B": 1., "L": 5., "O": 5., },
        "Shouting": {"B": 1., "L": 5., "O": 5., },
    },
    "particle": {
        "evaporation_factor": 0.3,
    }
}

activity_distributions = {
    "Seated": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
        },
    },
    "Standing": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
        },
    },
    "Light activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
        },
    },
    "Moderate activity": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
        },
    },
    "Heavy exercise": {
        "inhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049,
                "lognormal_standard_deviation_gaussian": 0.21744554768657565,
            },
        },
        "exhalation_rate": {
            "associated_value": "Log-normal distribution",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049,
                "lognormal_standard_deviation_gaussian": 0.21744554768657565,
            },
        },
    },
}

virological_data = {
    "symptomatic_vl_frequencies": {
        "log_variable": [
            2.46032,
            2.67431,
            2.85434,
            3.06155,
            3.25856,
            3.47256,
            3.66957,
            3.85979,
            4.09927,
            4.27081,
            4.47631,
            4.66653,
            4.87204,
            5.10302,
            5.27456,
            5.46478,
            5.6533,
            5.88428,
            6.07281,
            6.30549,
            6.48552,
            6.64856,
            6.85407,
            7.10373,
            7.30075,
            7.47229,
            7.66081,
            7.85782,
            8.05653,
            8.27053,
            8.48453,
            8.65607,
            8.90573,
            9.06878,
            9.27429,
            9.473,
            9.66152,
            9.87552,
        ],
        "frequencies": [
            0.001206885,
            0.007851618,
            0.008078144,
            0.01502491,
            0.013258014,
            0.018528495,
            0.020053765,
            0.021896167,
            0.022047184,
            0.018604005,
            0.01547796,
            0.018075445,
            0.021503523,
            0.022349217,
            0.025097721,
            0.032875078,
            0.030594727,
            0.032573045,
            0.034717482,
            0.034792991,
            0.033267721,
            0.04288...
Read more

Calculator-v4.15.2: Merge branch 'feature/expected_reproduction_sr' into 'master'

20 Aug 09:37
Compare
Choose a tag to compare

model: expected number of new cases fix

Default form values:

NO_DEFAULT = object()

DEFAULTS = {
    'activity_type': 'office',
    'air_changes': 0.,
    'air_supply': 0.,
    'arve_sensors_option': False,
    'specific_breaks': '{}',
    'precise_activity': '{}',
    'calculator_version': NO_DEFAULT,
    'ceiling_height': 0.,
    'conditional_probability_plot': False,
    'conditional_probability_viral_loads': False,
    'CO2_fitting_result': '{}',
    'exposed_coffee_break_option': 'coffee_break_0',
    'exposed_coffee_duration': 5,
    'exposed_finish': '17:30',
    'exposed_lunch_finish': '13:30',
    'exposed_lunch_option': True,
    'exposed_lunch_start': '12:30',
    'exposed_start': '08:30',
    'event_month': 'January',
    'floor_area': 0.,
    'hepa_amount': 0.,
    'hepa_option': False,
    'humidity': '',
    'infected_coffee_break_option': 'coffee_break_0',
    'infected_coffee_duration': 5,
    'infected_dont_have_breaks_with_exposed': False,
    'infected_finish': '17:30',
    'infected_lunch_finish': '13:30',
    'infected_lunch_option': True,
    'infected_lunch_start': '12:30',
    'infected_people': 1,
    'infected_start': '08:30',
    'inside_temp': NO_DEFAULT,
    'location_latitude': NO_DEFAULT,
    'location_longitude': NO_DEFAULT,
    'location_name': NO_DEFAULT,
    'geographic_population': 0,
    'geographic_cases': 0,
    'ascertainment_bias': 'confidence_low',
    'exposure_option': 'p_deterministic_exposure',
    'mask_type': 'Type I',
    'mask_wearing_option': 'mask_off',
    'mechanical_ventilation_type': 'not-applicable',
    'opening_distance': 0.,
    'room_heating_option': False,
    'room_number': NO_DEFAULT,
    'room_volume': 0.,
    'simulation_name': NO_DEFAULT,
    'total_people': NO_DEFAULT,
    'vaccine_option': False,
    'vaccine_booster_option': False,
    'vaccine_type': 'AZD1222_(AstraZeneca)',
    'vaccine_booster_type': 'AZD1222_(AstraZeneca)',
    'ventilation_type': 'no_ventilation',
    'virus_type': 'SARS_CoV_2',
    'volume_type': NO_DEFAULT,
    'window_type': 'window_sliding',
    'window_height': 0.,
    'window_width': 0.,
    'windows_duration': 10.,
    'windows_frequency': 60.,
    'windows_number': 0,
    'window_opening_regime': 'windows_open_permanently',
    'sensor_in_use': '',
    'short_range_option': 'short_range_no',
    'short_range_interactions': '[]',
    'short_range_occupants': 0,
}

# ------------------ Activities ----------------------

# ------------------ Validation ----------------------
COFFEE_OPTIONS_INT = {'coffee_break_0': 0, 'coffee_break_1': 1,
                      'coffee_break_2': 2, 'coffee_break_4': 4}
CONFIDENCE_LEVEL_OPTIONS = {'confidence_low': 10,
                            'confidence_medium': 5, 'confidence_high': 2}
MECHANICAL_VENTILATION_TYPES = {
    'mech_type_air_changes', 'mech_type_air_supply', 'not-applicable'}
MASK_WEARING_OPTIONS = {'mask_on', 'mask_off'}
MONTH_NAMES = [
    'January', 'February', 'March', 'April', 'May', 'June', 'July',
    'August', 'September', 'October', 'November', 'December',
]
VACCINE_BOOSTER_TYPE = ['AZD1222_(AstraZeneca)', 'Ad26.COV2.S_(Janssen)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_(4th_dose)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)',
                        'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)', 'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)_(4th_dose)', 'CoronaVac_(Sinovac)', 'Coronavac_(Sinovac)', 'Sinopharm',
                        'mRNA-1273_(Moderna)', 'mRNA-1273_(Moderna)_(4th_dose)', 'Other']
VACCINE_TYPE = ['Ad26.COV2.S_(Janssen)', 'Any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)', 'AZD1222_(AstraZeneca)_and_any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)_and_BNT162b2_(Pfizer)',
                'BBIBP-CorV_(Beijing_CNBG)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)', 'CoronaVac_(Sinovac)', 'CoronaVac_(Sinovac)_and_AZD1222_(AstraZeneca)', 'Covishield',
                'mRNA-1273_(Moderna)', 'Sputnik_V_(Gamaleya)', 'CoronaVac_(Sinovac)_and_BNT162b2_(Pfizer)']
VENTILATION_TYPES = {'natural_ventilation', 'mechanical_ventilation',
                     'no_ventilation', 'from_fitting'}
VOLUME_TYPES = {'room_volume_explicit', 'room_volume_from_dimensions'}
WINDOWS_OPENING_REGIMES = {'windows_open_permanently',
                           'windows_open_periodically', 'not-applicable'}
WINDOWS_TYPES = {'window_sliding', 'window_hinged', 'not-applicable'}

Configuration:

version = None

BLOmodel = {
    "cn": {
        "B": 0.06,
        "L": 0.2,
        "O": 0.0010008,
    },
    "mu": {
        "B": 0.989541,
        "L": 1.38629,
        "O": 4.97673,
    },
    "sigma": {
        "B": 0.262364,
        "L": 0.506818,
        "O": 0.585005,
    },
}
activity_distributions = {
    "Seated": {
        "inhalation_rate": {
            "associated_distribution": "Log-normal",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
        },
        "exhalation_rate": {
            "associated_distribution": "Log-normal",
            "parameters": {
                "lognormal_mean_gaussian": -0.6872121723362303,
                "lognormal_standard_deviation_gaussian": 0.10498338229297108,
            },
        },
    },
    "Standing": {
        "inhalation_rate": {
            "associated_distribution": "Log-normal",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
        },
        "exhalation_rate": {
            "associated_distribution": "Log-normal",
            "parameters": {
                "lognormal_mean_gaussian": -0.5742377578494785,
                "lognormal_standard_deviation_gaussian": 0.09373162411398223,
            },
        },
    },
    "Light activity": {
        "inhalation_rate": {
            "associated_distribution": "Log-normal",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
        },
        "exhalation_rate": {
            "associated_distribution": "Log-normal",
            "parameters": {
                "lognormal_mean_gaussian": 0.21380242785625422,
                "lognormal_standard_deviation_gaussian": 0.09435378091059601,
            },
        },
    },
    "Moderate activity": {
        "inhalation_rate": {
            "associated_distribution": "Log-normal",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
        },
        "exhalation_rate": {
            "associated_distribution": "Log-normal",
            "parameters": {
                "lognormal_mean_gaussian": 0.551771330362601,
                "lognormal_standard_deviation_gaussian": 0.1894616357138137,
            },
        },
    },
    "Heavy exercise": {
        "inhalation_rate": {
            "associated_distribution": "Log-normal",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049,
                "lognormal_standard_deviation_gaussian": 0.21744554768657565,
            },
        },
        "exhalation_rate": {
            "associated_distribution": "Log-normal",
            "parameters": {
                "lognormal_mean_gaussian": 1.1644665696723049,
                "lognormal_standard_deviation_gaussian": 0.21744554768657565,
            },
        },
    },
}
symptomatic_vl_frequencies = {
    "log_variable": [
        2.46032,
        2.67431,
        2.85434,
        3.06155,
        3.25856,
        3.47256,
        3.66957,
        3.85979,
        4.09927,
        4.27081,
        4.47631,
        4.66653,
        4.87204,
        5.10302,
        5.27456,
        5.46478,
        5.6533,
        5.88428,
        6.07281,
        6.30549,
        6.48552,
        6.64856,
        6.85407,
        7.10373,
        7.30075,
        7.47229,
        7.66081,
        7.85782,
        8.05653,
        8.27053,
        8.48453,
        8.65607,
        8.90573,
        9.06878,
        9.27429,
        9.473,
        9.66152,
        9.87552,
    ],
    "frequencies": [
        0.001206885,
        0.007851618,
        0.008078144,
        0.01502491,
        0.013258014,
        0.018528495,
        0.020053765,
        0.021896167,
        0.022047184,
        0.018604005,
        0.01547796,
        0.018075445,
        0.021503523,
        0.022349217,
        0.025097721,
        0.032875078,
        0.030594727,
        0.032573045,
        0.034717482,
        0.034792991,
        0.033267721,
        0.042887485,
        0.036846816,
        0.03876473,
        0.045016819,
        0.040063473,
        0.04883754,
        0.043944602,
        0.048142864,
        0.041588741,
        0.048762031,
        0.027921732,
        0.033871788,
        0.022122693,
        0.016927718,
        0.008833228,
        0.00478598,
        0.002807662,
    ],
    "kernel_bandwidth": 0.1,
}
covid_overal_vl_data = {
    "shape_factor": 3.47,
    "scale_factor": 7.01,
    "start": 0.01,
    "stop": 0.99,
    "num": 30.0,
    "min_bound": 2,
    "max_bound": 10,
    "interpolation_fp_left": 0,
    "interpolation_fp_right": 0,
    "max_function": 0.2,
}
viable_to_RNA_ratio_distribution = {
    "low": 0.01,
    "high": 0.6,
}
infectious_dose_distribution = {
    "low": 10,
    "high": 100,
}
virus_distributions = {
    "SARS_CoV_2": {
    ...
Read more

Calculator-v4.15.0

20 Aug 09:35
Compare
Choose a tag to compare

model: compute deposited exposures in parallel

Default form values:

NO_DEFAULT = object()

DEFAULTS = {
    'activity_type': 'office',
    'air_changes': 0.,
    'air_supply': 0.,
    'arve_sensors_option': False,
    'specific_breaks': '{}',
    'precise_activity': '{}',
    'calculator_version': NO_DEFAULT,
    'ceiling_height': 0.,
    'conditional_probability_plot': False,
    'conditional_probability_viral_loads': False,
    'CO2_fitting_result': '{}',
    'exposed_coffee_break_option': 'coffee_break_0',
    'exposed_coffee_duration': 5,
    'exposed_finish': '17:30',
    'exposed_lunch_finish': '13:30',
    'exposed_lunch_option': True,
    'exposed_lunch_start': '12:30',
    'exposed_start': '08:30',
    'event_month': 'January',
    'floor_area': 0.,
    'hepa_amount': 0.,
    'hepa_option': False,
    'humidity': '',
    'infected_coffee_break_option': 'coffee_break_0',
    'infected_coffee_duration': 5,
    'infected_dont_have_breaks_with_exposed': False,
    'infected_finish': '17:30',
    'infected_lunch_finish': '13:30',
    'infected_lunch_option': True,
    'infected_lunch_start': '12:30',
    'infected_people': 1,
    'infected_start': '08:30',
    'inside_temp': NO_DEFAULT,
    'location_latitude': NO_DEFAULT,
    'location_longitude': NO_DEFAULT,
    'location_name': NO_DEFAULT,
    'geographic_population': 0,
    'geographic_cases': 0,
    'ascertainment_bias': 'confidence_low',
    'exposure_option': 'p_deterministic_exposure',
    'mask_type': 'Type I',
    'mask_wearing_option': 'mask_off',
    'mechanical_ventilation_type': 'not-applicable',
    'opening_distance': 0.,
    'room_heating_option': False,
    'room_number': NO_DEFAULT,
    'room_volume': 0.,
    'simulation_name': NO_DEFAULT,
    'total_people': NO_DEFAULT,
    'vaccine_option': False,
    'vaccine_booster_option': False,
    'vaccine_type': 'AZD1222_(AstraZeneca)',
    'vaccine_booster_type': 'AZD1222_(AstraZeneca)',
    'ventilation_type': 'no_ventilation',
    'virus_type': 'SARS_CoV_2',
    'volume_type': NO_DEFAULT,
    'window_type': 'window_sliding',
    'window_height': 0.,
    'window_width': 0.,
    'windows_duration': 10.,
    'windows_frequency': 60.,
    'windows_number': 0,
    'window_opening_regime': 'windows_open_permanently',
    'sensor_in_use': '',
    'short_range_option': 'short_range_no',
    'short_range_interactions': '[]',
}

COFFEE_OPTIONS_INT = {'coffee_break_0': 0, 'coffee_break_1': 1,
                      'coffee_break_2': 2, 'coffee_break_4': 4}
CONFIDENCE_LEVEL_OPTIONS = {'confidence_low': 10,
                            'confidence_medium': 5, 'confidence_high': 2}
MECHANICAL_VENTILATION_TYPES = {
    'mech_type_air_changes', 'mech_type_air_supply', 'not-applicable'}
MASK_WEARING_OPTIONS = {'mask_on', 'mask_off'}
MONTH_NAMES = [
    'January', 'February', 'March', 'April', 'May', 'June', 'July',
    'August', 'September', 'October', 'November', 'December',
]
VACCINE_BOOSTER_TYPE = ['AZD1222_(AstraZeneca)', 'Ad26.COV2.S_(Janssen)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_(4th_dose)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)',
                        'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)', 'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)_(4th_dose)', 'CoronaVac_(Sinovac)', 'Coronavac_(Sinovac)', 'Sinopharm',
                        'mRNA-1273_(Moderna)', 'mRNA-1273_(Moderna)_(4th_dose)', 'Other']
VACCINE_TYPE = ['Ad26.COV2.S_(Janssen)', 'Any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)', 'AZD1222_(AstraZeneca)_and_any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)_and_BNT162b2_(Pfizer)',
                'BBIBP-CorV_(Beijing_CNBG)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)', 'CoronaVac_(Sinovac)', 'CoronaVac_(Sinovac)_and_AZD1222_(AstraZeneca)', 'Covishield',
                'mRNA-1273_(Moderna)', 'Sputnik_V_(Gamaleya)', 'CoronaVac_(Sinovac)_and_BNT162b2_(Pfizer)']
VENTILATION_TYPES = {'natural_ventilation', 'mechanical_ventilation',
                     'no_ventilation', 'from_fitting'}
VOLUME_TYPES = {'room_volume_explicit', 'room_volume_from_dimensions'}
WINDOWS_OPENING_REGIMES = {'windows_open_permanently',
                           'windows_open_periodically', 'not-applicable'}
WINDOWS_TYPES = {'window_sliding', 'window_hinged', 'not-applicable'}

Configuration:

    version = None

    BLOmodel = {
        "cn": {
            "B": 0.06,
            "L": 0.2,
            "O": 0.0010008,
        },
        "mu": {
            "B": 0.989541,
            "L": 1.38629,
            "O": 4.97673,
        },
        "sigma": {
            "B": 0.262364,
            "L": 0.506818,
            "O": 0.585005,
        },
    }
    activity_distributions = {
        "Seated": {
            "inhalation_rate": {
                "associated_distribution": "Log-normal",
                "parameters": {
                    "lognormal_mean_gaussian": -0.6872121723362303,
                    "lognormal_standard_deviation_gaussian": 0.10498338229297108,
                },
            },
            "exhalation_rate": {
                "associated_distribution": "Log-normal",
                "parameters": {
                    "lognormal_mean_gaussian": -0.6872121723362303,
                    "lognormal_standard_deviation_gaussian": 0.10498338229297108,
                },
            },
        },
        "Standing": {
            "inhalation_rate": {
                "associated_distribution": "Log-normal",
                "parameters": {
                    "lognormal_mean_gaussian": -0.5742377578494785,
                    "lognormal_standard_deviation_gaussian": 0.09373162411398223,
                },
            },
            "exhalation_rate": {
                "associated_distribution": "Log-normal",
                "parameters": {
                    "lognormal_mean_gaussian": -0.5742377578494785,
                    "lognormal_standard_deviation_gaussian": 0.09373162411398223,
                },
            },
        },
        "Light activity": {
            "inhalation_rate": {
                "associated_distribution": "Log-normal",
                "parameters": {
                    "lognormal_mean_gaussian": 0.21380242785625422,
                    "lognormal_standard_deviation_gaussian": 0.09435378091059601,
                },
            },
            "exhalation_rate": {
                "associated_distribution": "Log-normal",
                "parameters": {
                    "lognormal_mean_gaussian": 0.21380242785625422,
                    "lognormal_standard_deviation_gaussian": 0.09435378091059601,
                },
            },
        },
        "Moderate activity": {
            "inhalation_rate": {
                "associated_distribution": "Log-normal",
                "parameters": {
                    "lognormal_mean_gaussian": 0.551771330362601,
                    "lognormal_standard_deviation_gaussian": 0.1894616357138137,
                },
            },
            "exhalation_rate": {
                "associated_distribution": "Log-normal",
                "parameters": {
                    "lognormal_mean_gaussian": 0.551771330362601,
                    "lognormal_standard_deviation_gaussian": 0.1894616357138137,
                },
            },
        },
        "Heavy exercise": {
            "inhalation_rate": {
                "associated_distribution": "Log-normal",
                "parameters": {
                    "lognormal_mean_gaussian": 1.1644665696723049,
                    "lognormal_standard_deviation_gaussian": 0.21744554768657565,
                },
            },
            "exhalation_rate": {
                "associated_distribution": "Log-normal",
                "parameters": {
                    "lognormal_mean_gaussian": 1.1644665696723049,
                    "lognormal_standard_deviation_gaussian": 0.21744554768657565,
                },
            },
        },
    }
    symptomatic_vl_frequencies = {
        "log_variable": [
            2.46032,
            2.67431,
            2.85434,
            3.06155,
            3.25856,
            3.47256,
            3.66957,
            3.85979,
            4.09927,
            4.27081,
            4.47631,
            4.66653,
            4.87204,
            5.10302,
            5.27456,
            5.46478,
            5.6533,
            5.88428,
            6.07281,
            6.30549,
            6.48552,
            6.64856,
            6.85407,
            7.10373,
            7.30075,
            7.47229,
            7.66081,
            7.85782,
            8.05653,
            8.27053,
            8.48453,
            8.65607,
            8.90573,
            9.06878,
            9.27429,
            9.473,
            9.66152,
            9.87552,
        ],
        "frequencies": [
            0.001206885,
            0.007851618,
            0.008078144,
            0.01502491,
            0.013258014,
            0.018528495,
            0.020053765,
            0.021896167,
            0.022047184,
            0.018604005,
            0.01547796,
            0.018075445,
            0.021503523,
            0.022349217,
            0.025097721,
            0.032875078,
            0.030594727,
            0.032573045,
            0.034717482,
            0.034792991,
            0.033267721,
            0.042887485,
            0.036846816,
            0.03876473,
            0.045016819,
            0.040063473,
            0.04883754,
            0.043944602,
            0.048142864,
            0.041588741,
            0.048762031,
            0.027921732,
            0.033871788,
            0.022122693,
            0.016927718,
            ...
Read more

Calculator-v4.14.0: Merge branch 'feature/CO2_fit' into 'master'

22 Nov 15:08
Compare
Choose a tag to compare

Fit ventilation and exhalation rates on CO2 sensor data

Default form values:

NO_DEFAULT = object()

DEFAULT_MC_SAMPLE_SIZE = config.monte_carlo_sample_size

DEFAULTS = {
    'activity_type': 'office',
    'air_changes': 0.,
    'air_supply': 0.,
    'arve_sensors_option': False,
    'specific_breaks': '{}',
    'precise_activity': '{}',
    'calculator_version': NO_DEFAULT,
    'ceiling_height': 0.,
    'conditional_probability_plot': False,
    'conditional_probability_viral_loads': False,
    'CO2_fitting_result': '{}',
    'exposed_coffee_break_option': 'coffee_break_0',
    'exposed_coffee_duration': 5,
    'exposed_finish': '17:30',
    'exposed_lunch_finish': '13:30',
    'exposed_lunch_option': True,
    'exposed_lunch_start': '12:30',
    'exposed_start': '08:30',
    'event_month': 'January',
    'floor_area': 0.,
    'hepa_amount': 0.,
    'hepa_option': False,
    'humidity': '',
    'infected_coffee_break_option': 'coffee_break_0',
    'infected_coffee_duration': 5,
    'infected_dont_have_breaks_with_exposed': False,
    'infected_finish': '17:30',
    'infected_lunch_finish': '13:30',
    'infected_lunch_option': True,
    'infected_lunch_start': '12:30',
    'infected_people': 1,
    'infected_start': '08:30',
    'inside_temp': NO_DEFAULT,
    'location_latitude': NO_DEFAULT,
    'location_longitude': NO_DEFAULT,
    'location_name': NO_DEFAULT,
    'geographic_population': 0,
    'geographic_cases': 0,
    'ascertainment_bias': 'confidence_low',
    'exposure_option': 'p_deterministic_exposure',
    'mask_type': 'Type I',
    'mask_wearing_option': 'mask_off',
    'mechanical_ventilation_type': 'not-applicable',
    'opening_distance': 0.,
    'room_heating_option': False,
    'room_number': NO_DEFAULT,
    'room_volume': 0.,
    'simulation_name': NO_DEFAULT,
    'total_people': NO_DEFAULT,
    'vaccine_option': False,
    'vaccine_booster_option': False,
    'vaccine_type': 'AZD1222_(AstraZeneca)',
    'vaccine_booster_type': 'AZD1222_(AstraZeneca)',
    'ventilation_type': 'no_ventilation',
    'virus_type': 'SARS_CoV_2',
    'volume_type': NO_DEFAULT,
    'window_type': 'window_sliding',
    'window_height': 0.,
    'window_width': 0.,
    'windows_duration': 10.,
    'windows_frequency': 60.,
    'windows_number': 0,
    'window_opening_regime': 'windows_open_permanently',
    'sensor_in_use': '',
    'short_range_option': 'short_range_no',
    'short_range_interactions': '[]',
}

ACTIVITIES: typing.Dict[str, typing.Dict] = config.population_scenario_activity

ACTIVITY_TYPES: typing.List[str] = list(ACTIVITIES.keys())

COFFEE_OPTIONS_INT = {'coffee_break_0': 0, 'coffee_break_1': 1,
                      'coffee_break_2': 2, 'coffee_break_4': 4}

CONFIDENCE_LEVEL_OPTIONS = {'confidence_low': 10,
                            'confidence_medium': 5, 'confidence_high': 2}

MECHANICAL_VENTILATION_TYPES = {
    'mech_type_air_changes', 'mech_type_air_supply', 'not-applicable'}

MASK_TYPES: typing.List[str] = list(config.mask_distributions.keys())

MASK_WEARING_OPTIONS = {'mask_on', 'mask_off'}

MONTH_NAMES = [
    'January', 'February', 'March', 'April', 'May', 'June', 'July',
    'August', 'September', 'October', 'November', 'December',
]

VACCINE_BOOSTER_TYPE = ['AZD1222_(AstraZeneca)', 'Ad26.COV2.S_(Janssen)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_(4th_dose)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)',
                        'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)', 'BNT162b2_(Pfizer)_or_mRNA-1273_(Moderna)_(4th_dose)', 'CoronaVac_(Sinovac)', 'Coronavac_(Sinovac)', 'Sinopharm',
                        'mRNA-1273_(Moderna)', 'mRNA-1273_(Moderna)_(4th_dose)', 'Other']

VACCINE_TYPE = ['Ad26.COV2.S_(Janssen)', 'Any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)', 'AZD1222_(AstraZeneca)_and_any_mRNA_-_heterologous', 'AZD1222_(AstraZeneca)_and_BNT162b2_(Pfizer)',
                'BBIBP-CorV_(Beijing_CNBG)', 'BNT162b2_(Pfizer)', 'BNT162b2_(Pfizer)_and_mRNA-1273_(Moderna)', 'CoronaVac_(Sinovac)', 'CoronaVac_(Sinovac)_and_AZD1222_(AstraZeneca)', 'Covishield',
                'mRNA-1273_(Moderna)', 'Sputnik_V_(Gamaleya)', 'CoronaVac_(Sinovac)_and_BNT162b2_(Pfizer)']

VENTILATION_TYPES = {'natural_ventilation', 'mechanical_ventilation', 
                     'no_ventilation', 'from_fitting'}

VIRUS_TYPES: typing.List[str] = list(config.virus_distributions)

VOLUME_TYPES = {'room_volume_explicit', 'room_volume_from_dimensions'}

WINDOWS_OPENING_REGIMES = {'windows_open_permanently',
                           'windows_open_periodically', 'not-applicable'}

WINDOWS_TYPES = {'window_sliding', 'window_hinged', 'not-applicable'}

Configuration:

BLOmodel = {
    "cn": {
        "B": 0.06,
        "L": 0.2,
        "O": 0.0010008,
    },
    "mu": {
        "B": 0.989541,
        "L": 1.38629,
        "O": 4.97673,
    },
    "sigma": {
        "B": 0.262364,
        "L": 0.506818,
        "O": 0.585005,
    },
}
activity_distributions = {
    "Seated": {
        "inhalation_rate": {
            "associated_distribution": "Numpy Log-normal Distribution (random.lognormal)",
            "parameters": {
                "mean_gaussian": -0.6872121723362303,
                "standard_deviation_gaussian": 0.10498338229297108,
            },
        },
        "exhalation_rate": {
            "associated_distribution": "Numpy Log-normal Distribution (random.lognormal)",
            "parameters": {
                "mean_gaussian": -0.6872121723362303,
                "standard_deviation_gaussian": 0.10498338229297108,
            },
        },
    },
    "Standing": {
        "inhalation_rate": {
            "associated_distribution": "Numpy Log-normal Distribution (random.lognormal)",
            "parameters": {
                "mean_gaussian": -0.5742377578494785,
                "standard_deviation_gaussian": 0.09373162411398223,
            },
        },
        "exhalation_rate": {
            "associated_distribution": "Numpy Log-normal Distribution (random.lognormal)",
            "parameters": {
                "mean_gaussian": -0.5742377578494785,
                "standard_deviation_gaussian": 0.09373162411398223,
            },
        },
    },
    "Light activity": {
        "inhalation_rate": {
            "associated_distribution": "Numpy Log-normal Distribution (random.lognormal)",
            "parameters": {
                "mean_gaussian": 0.21380242785625422,
                "standard_deviation_gaussian": 0.09435378091059601,
            },
        },
        "exhalation_rate": {
            "associated_distribution": "Numpy Log-normal Distribution (random.lognormal)",
            "parameters": {
                "mean_gaussian": 0.21380242785625422,
                "standard_deviation_gaussian": 0.09435378091059601,
            },
        },
    },
    "Moderate activity": {
        "inhalation_rate": {
            "associated_distribution": "Numpy Log-normal Distribution (random.lognormal)",
            "parameters": {
                "mean_gaussian": 0.551771330362601,
                "standard_deviation_gaussian": 0.1894616357138137,
            },
        },
        "exhalation_rate": {
            "associated_distribution": "Numpy Log-normal Distribution (random.lognormal)",
            "parameters": {
                "mean_gaussian": 0.551771330362601,
                "standard_deviation_gaussian": 0.1894616357138137,
            },
        },
    },
    "Heavy exercise": {
        "inhalation_rate": {
            "associated_distribution": "Numpy Log-normal Distribution (random.lognormal)",
            "parameters": {
                "mean_gaussian": 1.1644665696723049,
                "standard_deviation_gaussian": 0.21744554768657565,
            },
        },
        "exhalation_rate": {
            "associated_distribution": "Numpy Log-normal Distribution (random.lognormal)",
            "parameters": {
                "mean_gaussian": 1.1644665696723049,
                "standard_deviation_gaussian": 0.21744554768657565,
            },
        },
    },
}
symptomatic_vl_frequencies = {
    "log_variable": [
        2.46032,
        2.67431,
        2.85434,
        3.06155,
        3.25856,
        3.47256,
        3.66957,
        3.85979,
        4.09927,
        4.27081,
        4.47631,
        4.66653,
        4.87204,
        5.10302,
        5.27456,
        5.46478,
        5.6533,
        5.88428,
        6.07281,
        6.30549,
        6.48552,
        6.64856,
        6.85407,
        7.10373,
        7.30075,
        7.47229,
        7.66081,
        7.85782,
        8.05653,
        8.27053,
        8.48453,
        8.65607,
        8.90573,
        9.06878,
        9.27429,
        9.473,
        9.66152,
        9.87552,
    ],
    "frequencies": [
        0.001206885,
        0.007851618,
        0.008078144,
        0.01502491,
        0.013258014,
        0.018528495,
        0.020053765,
        0.021896167,
        0.022047184,
        0.018604005,
        0.01547796,
        0.018075445,
        0.021503523,
        0.022349217,
        0.025097721,
        0.032875078,
        0.030594727,
        0.032573045,
        0.034717482,
        0.034792991,
        0.033267721,
        0.042887485,
        0.036846816,
        0.03876473,
        0.045016819,
        0.040063473,
        0.04883754,
        0.043944602,
        0.048142864,
        0.041588741,
        0.048762031,
        0.027921732,
        0.033871788,
        0.022122693,
        0.016927718,
        0.008833228,
        0.00478598,
        0.002807662,
    ],
    "kernel_bandwidth": 0.1,
}
covid_overal_vl_data = {
    "shape_factor": 3.47,
    "scale_factor": 7.01...
Read more