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:

../../examples/example_reference_bdew_profile.py
 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()