wattadvisor.utils.demand_tools

Contains functions to generate demand profiles

Copyright (c) 2007, Eclipse Foundation, Inc. and its licensors. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.

Functions

generate_electrical_demand_profile(→ pandas.Series)

Generates an hourly electrical energy demand profile based on a yearly electrical energy demand sum.

generate_heat_demand_profile(→ pandas.Series)

Generates an hourly heat demand profile based on a yearly heat demand sum.

Module Contents

wattadvisor.utils.demand_tools.generate_electrical_demand_profile(demand_amount: float, demand_group: Literal['g0', 'g1', 'g2', 'g3', 'g4', 'g5', 'g6', 'g7', 'l0', 'l1', 'l2', 'h0', 'h0_dyn', 'h0/h0_dyn'], year: int, target_resolution: wattadvisor.data_models.enums.Resolution = Resolution.R1H) pandas.Series

Generates an hourly electrical energy demand profile based on a yearly electrical energy demand sum.

Parameters:
  • demand_amount (float) – Sum of the yearly electrical energy demand

  • demand_group (Literal["g0", "g1", "g2", "g3", "g4", "g5", "g6", "g7", "l0", "l1", "l2", "h0", "h0_dyn", "h0/h0_dyn"]) – Demand group to generate the profile for. See [demandlib documention](https://demandlib.readthedocs.io/en/latest/bdew.html#id3) for an explanation of all possible values.

  • year (int) – Year to generate the profile for

  • target_resolution (Resolution, optional) – Time step resolution of the profile to be generated, by default Resolution.R1H

Returns:

Hourly electrical energy demand profile

Return type:

pd.Series

wattadvisor.utils.demand_tools.generate_heat_demand_profile(demand_amount: float, demand_group: Literal['EFH', 'MFH', 'GMK', 'GHA', 'GKO', 'GBD', 'GGA', 'GBH', 'GWA', 'GGB', 'GBA', 'GPD', 'GMF', 'GHD'], year: int, temperature_series: pandas.Series, building_class: int | None = None, wind_class: int = 0) pandas.Series

Generates an hourly heat demand profile based on a yearly heat demand sum.

Parameters:
  • demand_amount (float) – Sum of the yearly heat demand

  • demand_group (Literal["EFH", "MFH", "GMK", "GHA", "GKO", "GBD", "GGA", "GBH", "GWA", "GGB", "GBA", "GPD", "GMF", "GHD"]) – Demand group to generate the profile for. See [demandlib documention](https://demandlib.readthedocs.io/en/latest/bdew.html#description) for an explanation of all possible values.

  • year (int) – Year to generate the profile for

  • temperature_series (pd.Series) – Base air temperature series [°C] for the location

  • building_class (int, optional) – The parameter building_class (German: Baualtersklasse) can assume values in the range 1-11 if demand_group is “EFH” or “MFH”, for every other value in demand_group must be 0 or None, by default None

  • wind_class (int, optional) – Influence of wind, by default 0

Returns:

hourly heat demand profile

Return type:

pd.Series