Skip to main content

Python package for a ISO 52016 calculation

Project description

DIN EN ISO 52016

pipeline status coverage report Documentation Status Code style: black

Python implementation of the DIN EN ISO 52016 standard for calculating the energy performance of buildings. The package computes hourly heating and cooling loads for thermal zones using a 5-node thermal-network model per opaque element, solar irradiation via pvlib, and ground-temperature coupling per ISO 13370.

Installation

pip install .

Or for development:

pip install -e ".[dev]"

Quick start

import numpy as np
from iso52016 import (
    Building, Layer, Material, OpaqueElement, Orientation,
    Ventilation, Weather, Window, Zone,
)

# Create materials and layers
concrete = Material(density_kg_m3=2300, thermal_capacity_J_kgK=880, conductivity_W_mK=1.7)
insulation = Material(density_kg_m3=20, thermal_capacity_J_kgK=1450, conductivity_W_mK=0.035)
wall_layers = [Layer(0.2, concrete), Layer(0.1, insulation)]

# Set up weather (8760 hourly values)
weather = Weather(air_temperature=t_air, wind=wind)

# Define building envelope
wall = OpaqueElement(area=50, orientation=Orientation(90, 0), layers=wall_layers)
# ... add more walls, roof, floor

zone = Zone(
    opaque_elements=[wall, ...],
    usable_floor_area=100,
    internal_gains=[np.zeros(8760)],
    lower_temperature_limit=20,
    upper_temperature_limit=26,
)

building = Building(zones=zone, weather=weather)
building.calculate()

print(f"Heating: {zone.heat_load.sum() / 1000:.0f} kWh")
print(f"Cooling: {zone.cool_load.sum() / 1000:.0f} kWh")

See examples/easy_example.py for a complete working example.

Features

  • Hourly heating and cooling load calculation per ISO 52016
  • 5-node thermal network for opaque elements, 2-node for windows
  • Solar irradiation via pvlib (any orientation/tilt)
  • Ground-temperature coupling per ISO 13370
  • Multi-zone support
  • Ventilation with heat recovery

License

BSD 3-Clause.

Independent implementation of the calculation method described in DIN EN ISO 52016-1. This project is not affiliated with, authorized by, or endorsed by ISO, CEN, or DIN, and does not reproduce the text of the standard.

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

iso52016-0.0.3.tar.gz (32.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

iso52016-0.0.3-py3-none-any.whl (23.1 kB view details)

Uploaded Python 3

File details

Details for the file iso52016-0.0.3.tar.gz.

File metadata

  • Download URL: iso52016-0.0.3.tar.gz
  • Upload date:
  • Size: 32.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for iso52016-0.0.3.tar.gz
Algorithm Hash digest
SHA256 b680eae3918a63893ba203ce245b9bfe5b05838ca356dac246c05b0fc09e3026
MD5 976a144486dd007966e93f01806ce1f9
BLAKE2b-256 d89062ec5e450c7be2bb0ab56893d116f411010b8caff822fbb48cbb820ee340

See more details on using hashes here.

File details

Details for the file iso52016-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: iso52016-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 23.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for iso52016-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 340f52da26328b97f561aad97f2fe17edce0627dc773ba6d46a5895a303f70c2
MD5 e3413a76960d91fa15f6edd74e20930d
BLAKE2b-256 3b9e79e72430dd55a9302521f035bbc8ee2b18045ec9317f7b88a80943917ce6

See more details on using hashes here.

Supported by

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