windwhisper.health_impacts

Attributes

geod

Classes

HumanHealth

Evaluate human health impacts resulting from noise exposure.

Functions

load_human_health_parameters()

Load DALY parameter curves from the packaged JSON file.

load_disease_data(country)

Return disease burden statistics for the requested country.

guess_country(bbox_geom)

Infer the country overlapping the analysis bounding box.

approximate_grid_cell_areas(lat, lon)

Approximate cell areas for a rectilinear latitude/longitude grid.

Module Contents

windwhisper.health_impacts.load_human_health_parameters()

Load DALY parameter curves from the packaged JSON file.

Returns:

Mapping of health impact identifiers to parameter sets.

Return type:

dict

windwhisper.health_impacts.load_disease_data(country)

Return disease burden statistics for the requested country.

Parameters:

country (str) – ISO alpha-2 code identifying the country of interest.

Returns:

DataFrame limited to the requested country or the European baseline when no data is available.

Return type:

pandas.DataFrame

windwhisper.health_impacts.guess_country(bbox_geom)

Infer the country overlapping the analysis bounding box.

Parameters:

bbox_geom (shapely.geometry.base.BaseGeometry) – Bounding box geometry in EPSG:4326 coordinates.

Returns:

Tuple containing the ISO alpha-2 code and the estimated population of the matching country.

Return type:

tuple[str, float]

windwhisper.health_impacts.geod
windwhisper.health_impacts.approximate_grid_cell_areas(lat, lon)

Approximate cell areas for a rectilinear latitude/longitude grid.

Parameters:
  • lat (numpy.ndarray) – One-dimensional latitude coordinates.

  • lon (numpy.ndarray) – One-dimensional longitude coordinates.

Returns:

Two-dimensional array containing the area of each grid cell in square metres.

Return type:

numpy.ndarray

class windwhisper.health_impacts.HumanHealth(noiseanalysis, lifetime=20)

Evaluate human health impacts resulting from noise exposure.

Parameters:
lifetime = 20
load_factor
electricity_production
population
noiseanalysis
disease_data
human_health_parameters
population_rate
human_health_wo_turbines
human_health_per_kWh_wo_turbines
human_health
human_health_per_kWh
get_disease_totals(disease)

Return YLD and YLL totals for the active country.

Parameters:

disease (str) – Disease identifier (e.g. "ischemic_heart_disease").

Returns:

Tuple containing the YLD and YLL values.

Return type:

tuple[float, float]

Raises:

ValueError – If no statistics are available for the disease.

calculate_highly_annoyed_dalys(lden, noise_type_ha)

Calculate DALYs for the highly annoyed indicator.

Parameters:
  • lden (xarray.DataArray) – Day-evening-night noise level raster.

  • noise_type_ha (str) – Human health parameter set identifier.

Returns:

DALY raster for the highly annoyed population.

Return type:

xarray.DataArray

calculate_high_sleep_disorder_dalys(lnight, noise_type_hsd)

Calculate DALYs for the high sleep disorder indicator.

Parameters:
  • lnight (xarray.DataArray) – Night noise level raster.

  • noise_type_hsd (str) – Human health parameter set identifier.

Returns:

DALY raster for the high sleep disorder population.

Return type:

xarray.DataArray

calculate_ihd_dalys(lden, noise_type)

Calculate DALYs attributable to ischemic heart disease.

Parameters:
  • lden (xarray.DataArray) – Day-evening-night noise level raster.

  • noise_type (str) – Human health parameter set identifier.

Returns:

DALY raster for ischemic heart disease.

Return type:

xarray.DataArray

calculate_diabetes_dalys(lden, noise_type)

Calculate DALYs attributable to diabetes.

Parameters:
  • lden (xarray.DataArray) – Day-evening-night noise level raster.

  • noise_type (str) – Human health parameter set identifier.

Returns:

DALY raster for diabetes.

Return type:

xarray.DataArray

calculate_stroke_dalys(lden, noise_type)

Calculate DALYs attributable to stroke.

Parameters:
  • lden (xarray.DataArray) – Day-evening-night noise level raster.

  • noise_type (str) – Human health parameter set identifier.

Returns:

DALY raster for stroke.

Return type:

xarray.DataArray

calculate_total_dalys(lden, lnight, noise_type_ha='road_without_alpinestudies', noise_type_hsd='combined', noise_type='road middle')

Aggregate DALY layers across all health indicators.

Parameters:
  • lden (xarray.DataArray) – Day-evening-night noise level raster.

  • lnight (xarray.DataArray) – Night noise level raster.

  • noise_type_ha (str) – Parameter set for the highly annoyed metric.

  • noise_type_hsd (str) – Parameter set for the sleep disorder metric.

  • noise_type (str) – Parameter set for chronic disease metrics.

Returns:

Dataset containing the DALY layers for each impact.

Return type:

xarray.Dataset

export_to_excel(filepath='human_health_results.xlsx')

Export human health inputs and results to an Excel workbook.

Parameters:

filepath (str) – Destination path for the generated workbook.

Return type:

None