This release (finally) adds gas standard load profiles (SLPs) alongside the existing electricity profiles. We introduce an updated interface for electricity SLPs too. All renames and deprecations below are backward compatible.
slp_electricity() is the new primary function for
generating electricity SLPs. It replaces slp_generate()
with a cleaner interface: no state_code argument and no
restriction on the date range (previously limited to 1990–2073 by the
built-in holiday data).
slp_gas() implements the BDEW/VKU/GEODE synthetic
procedure for gas SLPs (SigLinDe method). It supports all 15 gas profile
IDs defined in the BDEW Leitfaden, as of 2025-10-28 (HEF,
HMF, HKO, GKO, GHA,
GMK, GBD, GBH, GWA,
GGA, GBA, GGB, GPD,
GMF, GHD). The function takes daily
temperatures and a kundenwert (kWh/day), and returns daily
gas consumption in kWh. A variant argument selects between
SigLinDe variant (German: “Ausprägung”) "34" (57 % linear
component) and "33" (45 % linear component).
slp_gas_kundenwert() derives the
kundenwert from a full reference year of daily temperatures
and an annual consumption target. You might use this in a two-step
workflow: compute KW once from a representative year, then pass the
result as kundenwert to slp_gas() for any
shorter period. Daily mean temperatures can be obtained e.g. from the
DWD open-data archive, e.g. via the rdwd package; see the
gas
SLP article on the package website for a complete fetch-to-profile
walkthrough.
slp_gas_siglinde() exposes the low-level
dimensionless daily heating demand function h(θ) used internally by
slp_gas(). It is exported so that users with custom or
region-specific coefficients (e.g. state-level parameters such as
BW_HEF03 for Baden-Württemberg) can compute h(θ) directly
and build their own profiles.
slp_gas_coefficients() returns the SigLinDe profile
function coefficients (A, B, C, D, θ₀, mH, bH, mW, bW) for one or more
gas profiles as a data frame. Supports both variants ("34",
"33").
slp_gas_weekday_factors() returns the weekday
scaling factors (F_WT) for one or more gas profiles as a data frame with
columns profile_id, day, and
f_wt.
Nationwide German public holidays are now computed via the
Anonymous Gregorian Easter algorithm rather than looked up in a
precomputed table. Coverage is open-ended from 1990 onward (the year
German Unity Day was introduced); the previous 2073 / 2099 caps no
longer apply. State-level holidays are no longer included; use the
holidays argument to supply custom dates.
slp_info() now accepts gas profile IDs too
(HEF, HMF, HKO, etc.) in addition
to electricity IDs, and respects the language argument for
both. Electricity and gas IDs can be mixed freely in a single
call.
slp has been renamed to
slp_electricity_profiles. The package no longer ships under
the old name, but accessing slp still returns the data and
emits a lifecycle deprecation warning pointing to the new
name. The shim will be removed in a future release.slp_generate() is now superseded in favour of
slp_electricity(). It remains in the package and will not
be removed for now, but new code should use
slp_electricity() instead.state_code to slp_generate() now
throws an error (previously a warning since version 1.1.0). Use the
holidays argument of slp_electricity() to
supply custom holiday dates.H25 (household), G25 (commercial),
L25 (agriculture), P25 (combination profile
with photovoltaics), and S25 (combination profile with
storage and photovoltaics). All five are available via
slp_generate() and slp_info(), and are
included in the slp dataset.slp_generate() gains a holidays argument:
a character or Date vector of ISO 8601 dates that are treated as public
holidays (mapped to "sunday" in the algorithm). When
supplied, the built-in holiday data are ignored entirely, giving callers
full control over which dates count as holidays.state_code argument of slp_generate()
is deprecated. Pass a vector of holiday dates to the new
holidays argument instead (#3).all() across the entire range, which caused every other Dec
24/31 in the range to be mapped to "workday" instead of
"saturday" (#2).