eelib.core.devices.tes.tes_model

eElib thermal energy storage (TES) model.

Various sources could be used for the dimensioning of the TES, e.g. https://www.baunetzwissen.de/heizung/fachwissen/speicher/dimensionierung-von-pufferspeichern-161296 The arguably most popular is within the VDI 4645, using the - time_blocked_period: time duration for limited operation of hp, in h - specific_required_volume: specific required volume after VDI 4645, in l/(kW*h) with - density_water = 1 kg/l - spec_heat_storage_coeff_water = 4.186 * 1000 / 3600 Wh/(kg*K) Then the storage volume in l is p_hp_th_max / 1000 * time_blocked_period * specific_required_volume. The correlation between volume and capacity then is as follows: V in l = C in Wh / (d in kg/l * c_p in Wh/kg/K * Delta_T in K)

Author: elenia@TUBS
Copyright 2025 elenia
This file is part of eELib, which is free software under the terms of the GNU GPL Version 3.

Module Contents

Classes

TES

A thermal energy storage TES model can be instantiated with default values or with a map of

class TES(eid: str, soc_init: int | float = 0.5, storage_volume_l: int | float = 300, temp_supply: int | float = 55, temp_room: int | float = 21, charge_efficiency: int | float = 1.0, discharge_efficiency: int | float = 1.0, loss_rate: int | float = 0.082, step_size: int = 900)

A thermal energy storage TES model can be instantiated with default values or with a map of initial values. An energy management model can be used to determine p_th_set values.

DENSITY_WATER = '1'
SPEC_HEAT_STORAGE_COEFF_WATER = '1.1627777777777777'
_VALID_PARAMETERS
eid
soc_init = '0.5'
p_th = '0'
charge_efficiency = '1.0'
discharge_efficiency = '1.0'
loss_rate = '0.082'
storage_volume_l = '300'
temp_supply = '55'
temp_room = '21'
step_size = '900'
timestep = '0'
soc = '0.5'
self_discharge_step = '0.0008541666666666667'
e_tes_rated = '11860.333333333332'
e_tes
p_th_set
classmethod get_valid_parameters() dict

Returns dictionary containing valid parameter types and values.

Returns:

valid parameters for this model

Return type:

dict

_set_power_within_limit()

Sets the thermal power of the TES based on its charging and discharging limits and the current thermal power setpoint.

_calc_power_limits()

Calculates (dis-)charging power limits based on stored energy, self-discharge and efficiency.

step(timestep: int)

Performs simulation step of eELib TES model. Calculates energy and power limits. Sets power within limits based on input properties.

Parameters:

timestep (int) – Current simulation time