DistrictHeatingSim Documentation๏
DistrictHeatingSim is a comprehensive simulation tool for district heating systems with GUI-based user interface and advanced calculation algorithms.
Figure 1: DistrictHeatingSim software workflow showing the integrated approach for district heating network planning and analysis.๏
๐ Key Features๏
Automated heating network topology from OpenStreetMap data
Building data and heat demand calculations
Heat pumps, CHP, solar and power-to-heat systems
Thermo-hydraulic simulation with pandapipes
Figure 2: Project management interface for organizing and managing district heating projects.๏
Figure 3: Building load profiles based on building data and weather conditions.๏
Figure 4: Interactive map visualization of district heating networks using Leaflet.๏
Figure 5: Thermo-hydraulic simulation of district heating networks using pandapipes.๏
Figure 6: Definition of heat generation systems including heat pumps and CHP units.๏
๐ ๏ธ Installation๏
pip install districtheatingsim
# Or for development:
git clone https://github.com/jonaspfeiffer123/DistrictHeatingSim.git
cd DistrictHeatingSim
pip install -e .
๐ Quick Start๏
To start the application directly, run the following in the terminal:
python src/districtheatingsim/DistrictHeatingSim.py
๐ Documentation๏
๐ก Examples๏
The following examples demonstrate various aspects of the DistrictHeatingSim application.
All example files are located in the examples/ directory of the project repository.
Basic geocoding and data import examples
See: 01_example_geocoding.py, 02_example_import_osm_data_geojson.py
Heat demand calculations
See: 03_example_simple_heat_requirement.py, 04_example_data_heat_requirement.py
Network generation and optimization with MST and OSMnx
See: 05_example_net_generation.py, 05b_example_net_generation_osmnx.py, 05c_example_osmnx_threading_compatible.py
Thermo-hydraulic simulation with pandapipes
See: 06_example_simple_pandapipes.py, 06b_example_simple_pandapipes_osmnx.py, 07_example_timeseries_pandapipes.py, 08_example_complex_pandapipes_timeseries.py
Heat pumps, CHP units, photovoltaics and system optimization
See: 09_example_heat_generators.py, 10_example_heat_generation_optimization.py, 14_example_photovoltaics.py
Seasonal thermal storage and integrated energy systems
See: 17_energy_system_seasonal_storage.py
Annuity calculations and financial evaluation
See: 15_example_annuity.py
STANET import and network data conversion
See: 18_stanet_to_pandapipes.py
Interactive plots, maps and network visualization
See: 16_interactive_matplotlib.py, 20_leaflet_test.py, 21_example_advanced_plots.py
GUI component tests, benchmarks and development tools
See: 19_generator_schematic_test_window.py, example_interactive_network_plot.py, benchmark_synthetic_net_generation.py
๐ Example Data๏
Examples use various data sources and formats:
Geographic Data: OpenStreetMap data, building coordinates
Building Data: Heat demand parameters, building specifications
Weather Data: TRY (Test Reference Year) files
System Data: Heat pump performance curves, generator specifications
Network Data: Pipe specifications, node configurations
Some examples generate their own test data, while others may require external data files from the examples/data/ directory.
๐ค Community & Support๏
๐ Bug Reports: GitHub Issues
๐ฌ Discussions: GitHub Discussions
๐ Examples: GitHub Examples