Skip to main content

Processing Tool for Heat Demand Data

Project description

PyHeatDemand - Processing Tool for Heat Demand Data

Overview

Knowledge about the heat demand (MWh/area/year) of a respective building, district, city, state, country or even on a continental scale is crucial for an adequate heat demand planning or planning for providing power plant capacities.

PyHeatDemand is a Python library for processing spatial data containing local, regional or even national heat demand data. The heat demand data can be provided as Raster, gridded polygon Shapefile, building footprint polygons Shapefile, street network linestring Shapefile, point Shapefiles representing the heat demand of a single building or an administrative area, and lastly postal addresses provided as CSV files.

The package is a continuation of the results of Herbst et al., (2021) within the Interreg NWE project DGE Rollout, NWE 892. E. Herbst and E. Khashfe compiled the original heat demand map as part of their respective master thesis project at RWTH Aachen University. The final heat demand map is also accessible within the DGE Rollout Webviewer.

Installation

PyHeatDemand can be installed via PyPi using pip install pyheatdemand or via Anaconda using conda install -c conda-forge pyheatdemand. It is recommended to use the provided environment.yml and use conda env create -f environment.yml to ensure that all dependencies are installed correctly. Make sure that you have downloaded the environment file in that case. Alternatively, you can fork and clone the repository or clone it directly from the repository page. An additional requirements.txt provides a list of all necessary dependencies.

General Workflow

The general workflow involves creating a global mask of quadratic polygons (e.g. 10 km x 10 km) covering the entire studied area. This is especially used for larger areas such as states, countries or the Interreg NWE region to subdivide the area into smaller areas. Depending on the size of the input heat demand data, the corresponding underlying global mask polygons are selected and the final (e.g. 100 m x 100 m) resolution polygon grid is created. This grid including the input heat demand data is need to calculate the final heat demand map. Fig1

The actual heat demand data is divided into four categories or data categories:

  • Data Category 1: Heat demand raster data or gridded polygon (vector) data, different scales possible
  • Data Category 2: Heat demand data as vector data; building footprints as polygons, street network as linestrings, single houses as points
  • Data Category 3: Heat demand as points representative for an administrative area
  • Data Category 4: Other forms of Heat Demand data such as addresses with assciated heat demand or heat demand provided as usage of other fuels, e.g. gas demand, biomass demand etc.

Processing steps for Data Types 1 + 2 Fig1

Processing steps for Data Types 3 Fig1

Continuous Integration

A CI is present to test the current code. It can be initiated using pytest --cov within the test folder. After running the tests, coverage report -m can be executed to get an report on the coverage and which lines are not covered by the tests.

References

Herbst, E., Khashfe, E., Jüstel, A., Strozyk, F. & Kukla, P., 2021. A Heat Demand Map of North-West Europe – its impact on supply areas and identification of potential production areas for deep geothermal energy. GeoKarlsruhe 2021, http://dx.doi.org/10.48380/dggv-j2wj-nk88.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PyHeatDemand-0.0.7.tar.gz (24.4 MB view details)

Uploaded Source

Built Distribution

PyHeatDemand-0.0.7-py3-none-any.whl (35.4 kB view details)

Uploaded Python 3

File details

Details for the file PyHeatDemand-0.0.7.tar.gz.

File metadata

  • Download URL: PyHeatDemand-0.0.7.tar.gz
  • Upload date:
  • Size: 24.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for PyHeatDemand-0.0.7.tar.gz
Algorithm Hash digest
SHA256 d9c1f511f5b605edfcd4eb36faf3bbf7def57a905fc2a7ff03fcdf6fa57b16a8
MD5 f8c750074b5709a1c8b9482aa71c2544
BLAKE2b-256 522936a83abbdb704b0ae9456d3c071e926492e28eaa07f2f0a5b395b368e777

See more details on using hashes here.

File details

Details for the file PyHeatDemand-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: PyHeatDemand-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 35.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for PyHeatDemand-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 8bf0bdbcebf8d4262c7c3d8914c05c1143c9aae45444e266260f275c18d50461
MD5 dc07872c53049390e1f124bc4f0c396e
BLAKE2b-256 bf8649f47f42c82487e8fc4d3efafac0597971a82ed9e7849f1de43850cdf05d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page