BDEW electrical profile
The BDEW electrical profile is based on the BDEW profile. Besides of the year the function needs to be provided with one of the following profile types:
H0: Haushalt
G0: Gewerbe allgemein Gewogener Mittelwert der Profile G1-G6
G1:Gewerbe werktags 8–18 Uhr z.B. Büros, Arztpraxen, Werkstätten, Verwaltungseinrichtungen
G2: Gewerbe mit starkem bis überwiegendem Verbrauch in den Abendstunden z.B. Sportvereine, Fitnessstudios, Abendgaststätten
G3: Gewerbe durchlaufend z.B. Kühlhäuser, Pumpen, Kläranlagen
G4: Laden/Friseur
G5: Bäckerei mit Backstube
G6: Wochenendbetrieb z.B. Kinos
G7: Mobilfunksendestation durchgängiges Bandlastprofil
L0: Landwirtschaftsbetriebe allgemein Gewogener Mittelwert der Profile L1 und L2
L1: Landwirtschaftsbetriebe mit Milchwirtschaft/Nebenerwerbs-Tierzucht
L2: Übrige Landwirtschaftsbetriebe
Furthermore, holidays can be given and a dynamic factorization for the H0 profile can be activated. Further information can be found here:bdew_electrical
An example is:
1import datetime
2
3from tssm import profile_generation
4
5
6def main():
7 holiday_sundays: list[datetime.datetime] = [
8 datetime.datetime(1996, 1, 1),
9 datetime.datetime(1996, 3, 28),
10 datetime.datetime(1996, 3, 30),
11 datetime.datetime(1996, 3, 31),
12 datetime.datetime(1996, 5, 19),
13 datetime.datetime(1996, 5, 1),
14 datetime.datetime(1996, 6, 6),
15 datetime.datetime(1996, 12, 25),
16 datetime.datetime(1996, 12, 26),
17 datetime.datetime(1996, 10, 3),
18 datetime.datetime(1996, 5, 8),
19 datetime.datetime(1996, 11, 1),
20 datetime.datetime(1996, 5, 29),
21 ]
22 holiday_saturday = [datetime.datetime(1996, 3, 29), datetime.datetime(1996, 12, 24), datetime.datetime(1996, 12, 31)]
23 h0_profile = profile_generation.create_bdew_electrical_profile("H0", 1996, holidays_as_sundays=holiday_sundays, holidays_as_saturdays=holiday_saturday)
24 print(f"Generated heat profile with a yearly demand of {h0_profile.sum() / 4 / 1000:.0f} kWh")
25
26 holiday_as_sundays: list[datetime.datetime] = [
27 datetime.datetime(2010, 1, 1),
28 datetime.datetime(2010, 3, 28),
29 datetime.datetime(2010, 3, 30),
30 datetime.datetime(2010, 3, 31),
31 datetime.datetime(2010, 5, 19),
32 datetime.datetime(2010, 5, 1),
33 datetime.datetime(2010, 6, 6),
34 datetime.datetime(2010, 12, 25),
35 datetime.datetime(2010, 12, 26),
36 datetime.datetime(2010, 10, 3),
37 datetime.datetime(2010, 5, 8),
38 datetime.datetime(2010, 11, 1),
39 datetime.datetime(2010, 5, 29),
40 ]
41 holiday_as_saturday = [datetime.datetime(2010, 3, 29), datetime.datetime(2010, 12, 24), datetime.datetime(2010, 12, 31)]
42 g1_profile = profile_generation.create_bdew_electrical_profile(
43 "G1", 2010, holidays_as_sundays=holiday_as_sundays, holidays_as_saturdays=holiday_as_saturday
44 )
45 print(f"Generated heat profile with a yearly demand of {g1_profile.sum() / 4 / 1000:.0f} kWh")
46
47
48if __name__ == "__main__":
49 main()