Algorithms
Detailed specification of aedifion.dynamics algorithms.
Standard .dynamics apps¶
Standard .dynamics apps are based directly on standard component models.
- Slope Optimization for Thermal Heat Transfer (SLOTH) - A .dynamics algorithm ramping up heating supply temperature setpoints gradually to avoid load peaks.
- Spot Market Price Based Setpoint Interpolation (SPOT) - A .dynamics algorithm adjusting cooling temperature setpoints based on spot market prices.
The .dynamics apps can be tested without writing directly to the building by using a dryrun variation. In this case, a virtual data point with the calculated setpoints is generated and stored (similar to a VDP - virtual data point) to investigate the behavior of a .dynamics app.
🦥 Slope Optimization for Thermal Heat Transfer (SLOTH)¶
In buildings supplied by heat pumps or district heating, the supply temperature setpoint is adjusted to meet the required heating power demand. In the morning, when occupancy begins, the setpoint is typically raised in a single step from night setback to the full daytime value. This step change causes a thermal power peak as the entire building must be reheated. For heat pumps, this results in expensive electrical load peaks; for district heating connections, the contracted thermal capacity can be exceeded — both leading to avoidable costs.
SLOTH closes this gap by ramping up the supply temperature setpoint gradually along a defined slope instead of raising it in a single step. This spreads the thermal power demand over time, reducing peak loads (peak shaving).
Every 15 minutes, SLOTH determines a target supply temperature using a heating curve. The heating curve relates outdoor temperature to the required supply temperature, configured via base points. To avoid overheating when outdoor temperatures rise during the day, the heating curve uses the maximum of the current outdoor temperature and the forecasted mean temperature between 8:00 and 18:00. This anticipates daytime warming and reduces unnecessary morning heating. During unoccupied periods, the target supply temperature is automatically reduced by a configurable nighttime setback.
Rather than raising the supply temperature setpoint straight to the target supply temperature defined by the heating curve, SLOTH approaches it step by step: the applied setpoint is constrained to rise by no more than 5 K per 15-minute interval above the currently measured supply temperature. This turns what would otherwise be an abrupt jump into a ramp. Once the measured supply temperature has caught up with the target supply temperature, the setpoint simply follows the target directly

SLOTH ramp behavior: instead of raising the supply temperature setpoint to the heating curve target in a single step, SLOTH caps each 15-minute increment 5 K above the measured supply temperature, creating a gradual slope that distributes the heating power demand over time and reduces the peak load.
Caution
If an error occurs or the connection to the building is lost, a fallback value of 30°C is automatically written to the supply temperature setpoint.
Best Practices¶
SLOTH is particularly well-suited to heating circuits supplied by heat pumps or district heating connections, where load peaks at the start of the occupancy period translate directly into costs. Before implementing SLOTH:
- The supply temperature setpoint is writable
- The heating curve reference points are tuned to the building's actual heating behavior
- The occupancy schedule allows sufficient lead time for the gradual ramp-up, so comfort is achieved when occupants arrive
Components¶
Heating Circuit¶
Default
Variation parameter: None
| Pins | Required | pin_alphanumeric_id | Input/Output |
|---|---|---|---|
| Supply temperature | Yes | T_IN | Input |
| Supply temperature setpoint | Yes | T_IN_SP | Output |
| Attributes | Required | Info |
|---|---|---|
| Schedule | Yes | Regular schedule that is repeated every week, used to determine the occupancy period and apply the nighttime reduction outside of it. |
| Base points | Yes | The heating curve base points for the calculation. Must be given as pairs of outside air temperature/supply temperature, e.g. -12,90;20,50 |
| Night time reduction | Yes | Value (in K) subtracted from the heating curve target outside the occupancy period |
| Schedule Timezone | No | Defaults to Europe/Berlin |
🐆 Spot Market Price Based Setpoint Interpolation (SPOT)¶
In buildings where electricity is purchased via dynamic tariffs, power purchase agreements with dynamics share, or sourced from on-site PV generation, the final electricity bill and the CO2 intensity of the electricity used depend on when electricity is consumed. SPOT applies wherever such time-varying electricity prices or CO2 signals are available and the building has cooling capacity that can be shifted in time.
Electricity prices follow a daily pattern, typically peaking during morning and evening hours and having low prices in between and at night. The price spread between the cheapest and most expensive periods throughout the day can be substantial. Buildings with flexible cooling systems supplied via electricity-driven compression chillers can exploit this by pre-cooling during low-price periods and reducing cooling activity when prices are high. Without price signal integration, cooling operates on a fixed schedule and this cost-saving and CO2 emission reduction potential remains unrealized.
The SPOT algorithm closes this gap by adjusting cooling temperature setpoints based on spot market electricity prices. Prices are analyzed on a daily basis and cooling loads are shifted toward lower-cost periods, enabling systematic electricity cost reduction without compromising comfort or building operation. To achieve this, the SPOT adjusts the cooling setpoints between the minimum and the maximum supply temperature setpoints of the controlled components and selects the setpoint in order to increase cooling in cheap periods. To avoid sustained under- or over-cooling, the algorithm uses the daily median price as a midpoint reference: when the current price is below the median, the setpoint is biased toward the lower (colder) half of the range; when the price is above the median, the setpoint is biased toward the upper half. Further, in order to protect systems where the dew point of the surrounding air is relevant, the minimum setpoint can be limited by the current dew point plus a safety margin.
Best Practices¶
The SPOT is particularly well-suited to buildings with thermally flexible cooling systems, where pre-cooling and reduced cooling activity can be tolerated without compromising comfort. Before implementing the SPOT, ensure that the supply temperature setpoint of the cooling circuit can be written and that the minimum and maximum supply temperature setpoint attributes are configured to reflect the operational limits of the system.
Components¶
Cooling Circuit¶
Default
Variation parameter: None
| Pins | Required | pin_alphanumeric_id | Input/Output |
|---|---|---|---|
| Supply temperature setpoint | Yes | T_IN_SP | Output |
| Attributes | Required | Info |
|---|---|---|
| Supply temperature setpoint minimum | Yes | Setpoint for the minimum supply temperature |
| Supply temperature setpoint maximum | Yes | Setpoint for the maximum supply temperature |
| Dew point protection enabled | Yes | Enables dew point protection to prevent surface condensation. Values: 0 = disabled (default), 1 = enabled |
| Dew point safety margin | No | Safety margin (in K) added to the dew point when protection is enabled. Default: 1.5 K |