energy_signature#

Proposed Energy Signature (PES) after Eriksson et al. (2020) — iterative determination of balance temperature, heat loss coefficient, domestic hot water circulation (DHWC) and domestic hot water (DHW) demand from hourly time-series data.

See Energy Signature for usage examples. The plotting counterparts live in plots.

API Reference#

Proposed Energy Signature (PES) computation.

Implements the iterative algorithm from Eriksson et al. (2020), “Development and validation of energy signature method”, Energy & Buildings 210, 109756.

Determines balance temperature, heat loss coefficient, domestic hot water circulation (DHWC) demand, and domestic hot water (DHW) demand from hourly time-series data.

class pyedautils.energy_signature.PESResult(tb: float, q_tot: float, p_dhwc: float, p_dhw: float, p_ihg: float)[source]#

Bases: NamedTuple

Result of the Proposed Energy Signature computation.

tb#

Balance temperature [°C].

Type:

float

q_tot#

Total heat loss coefficient [kW/K].

Type:

float

p_dhwc#

Domestic hot water circulation demand [kW] (standby).

Type:

float

p_dhw#

Domestic hot water demand [kW].

Type:

float

p_ihg#

Internal heat gains [kW] (input parameter echoed back).

Type:

float

tb: float#

Alias for field number 0

q_tot: float#

Alias for field number 1

p_dhwc: float#

Alias for field number 2

p_dhw: float#

Alias for field number 3

p_ihg: float#

Alias for field number 4

property p_hw#
property p_stby#
pyedautils.energy_signature.compute_pes(data: DataFrame, p_ihg: float = 0.0, max_iter: int = 50) → PESResult[source]#

Compute the Proposed Energy Signature parameters.

The algorithm iteratively determines the balance temperature and derives the heat loss coefficient, DHWC demand (P_dhwc) and DHW demand (P_dhw) from hourly building data.

Following Eriksson et al. (2020):

  • P_dhwc is the mean of daily minimum power on days where at least one hour has T_oa > T_b (Section 3.2.2).

  • P_dhw is the mean of all hourly power at T_oa > T_b, minus P_dhwc (Section 3.2.3).

  • Q_tot is computed from nighttime hours (0:00–4:59) in December–February using Eq. (7): Q_tot = (P_dh + P_ihg - P_dhwc) / (T_room - T_oa) (Section 3.2.1).

  • T_b is scanned from 10–20 °C in 0.1 °C steps; the value where calculated annual energy is closest to measured is chosen (Section 3.2.4, E_tot criterion).

Parameters:
  • data – DataFrame with columns [timestamp, outside_temp, power, room_temp]. timestamp must be parseable by pd.to_datetime, outside_temp and room_temp in °C, power in kW.

  • p_ihg – Internal heat gains [kW]. Default 0.

  • max_iter – Maximum number of iterations. Default 50.

Returns:

PESResult with the computed parameters.

Raises:

ValueError – If convergence is not reached within max_iter.