Gradtagzahl 20/12 mit weewx

wenn es um andere Software geht
Benutzeravatar
ManfredK
Beiträge: 490
Registriert: 16 Mai 2009 07:54
Wohnort: Ruppersthal in Niederösterreich
Hat sich bedankt: 9 mal
Kontaktdaten:

Gradtagzahl 20/12 mit weewx

Beitrag von ManfredK »

Hallo,

Gibt es eigentlich eine Möglichkeit, mit weewx die Gradtagzahl (z.B. 20/12) auszuwerten?

Danke für die Antwort.
Benutzeravatar
Werner
Site Admin
Beiträge: 5681
Registriert: 04 Dez 2001 01:00
Wohnort: Lackenhäuser
Danksagung erhalten: 59 mal
Kontaktdaten:

Re: Gradtagzahl 20/12 mit weewx

Beitrag von Werner »

ich kenne nur diese Möglichkeiten:

Code: Alles auswählen

      [[[[DegreeDays]]]]
                
          # Base temperature for heating days, with unit:
          heating_base = 65, degree_F
          # Base temperature for cooling days, with unit:
          cooling_base = 65, degree_F
          # Base temperature for growing days, with unit:
          growing_base = 50, degree_F
Benutzeravatar
ManfredK
Beiträge: 490
Registriert: 16 Mai 2009 07:54
Wohnort: Ruppersthal in Niederösterreich
Hat sich bedankt: 9 mal
Kontaktdaten:

Re: Gradtagzahl 20/12 mit weewx

Beitrag von ManfredK »

Hallo Werner,

Wie kann man mit denen weiterarbeiten?
Benutzeravatar
Werner
Site Admin
Beiträge: 5681
Registriert: 04 Dez 2001 01:00
Wohnort: Lackenhäuser
Danksagung erhalten: 59 mal
Kontaktdaten:

Re: Gradtagzahl 20/12 mit weewx

Beitrag von Werner »

z.B.: für 20 °C:

heating_base = 20, degree_C

Die 65 degree_F sind ja die 18 °C
Benutzeravatar
ManfredK
Beiträge: 490
Registriert: 16 Mai 2009 07:54
Wohnort: Ruppersthal in Niederösterreich
Hat sich bedankt: 9 mal
Kontaktdaten:

Re: Gradtagzahl 20/12 mit weewx

Beitrag von ManfredK »

Hallo,
Für den Fall, dass es jemanden interessiert, habe ich eine Lösung für die Heizgradsumme 20/12 gefunden.

Ich habe die beiden Dateien units.py und xtypes.py wie folgt bearbeitet:

in die extensions.py habe ich folgendes hinzugefügt:

Code: Alles auswählen

weewx.units.obs_group_dict['hgs2012'] = "group_degree_day"
xtypes.py:
habe ich wie folgt erweitert:

Code: Alles auswählen

        if obs_type not in ['heatdeg', 'cooldeg', 'growdeg']:
-->

Code: Alles auswählen

        if obs_type not in ['hgs2012, 'heatdeg', 'cooldeg', 'growdeg']:
und

Code: Alles auswählen

                if obs_type == 'heatdeg':
                    total += weewx.wxformulas.heating_degrees(Tavg_t[0], heatbase_t[0])
-->

Code: Alles auswählen

                if obs_type == 'hgs2012':
                    if Tavg_t[0] <= 12.0:
                        total += weewx.wxformulas.heating_degrees(Tavg_t[0], heatbase_t[0])
                elif obs_type == 'heatdeg':
                    total += weewx.wxformulas.heating_degrees(Tavg_t[0], heatbase_t[0])
somit ist heatdeg --> Heizgradtag und hgs2012 --> Heizgradsumme20/12
Benutzeravatar
Werner
Site Admin
Beiträge: 5681
Registriert: 04 Dez 2001 01:00
Wohnort: Lackenhäuser
Danksagung erhalten: 59 mal
Kontaktdaten:

Re: Gradtagzahl 20/12 mit weewx

Beitrag von Werner »

@Manfred,

was mir nicht klar ist, sind die 20.
Ich gehe davon aus, dass Du damit 20 Grad C meinst?
Wo gibst Du die vor?
Benutzeravatar
ManfredK
Beiträge: 490
Registriert: 16 Mai 2009 07:54
Wohnort: Ruppersthal in Niederösterreich
Hat sich bedankt: 9 mal
Kontaktdaten:

Re: Gradtagzahl 20/12 mit weewx

Beitrag von ManfredK »

@Werner
auch in der xtypes.py

Code: Alles auswählen

    default_heatbase = (20.0, "degree_C", "group_temperature")
denn wenn ich in der weewx.conf unter DegreeDays die heating_base = 20, degree_C einstelle, wird diese Änderung nur für die NOAA-Berichte übernommen.
Wenn ich jedoch die Werte in einem History-Report verwenden will, muss ich die Anpassung in der xtypes.py machen. Scheint ein Fehler in weewx zu sein, jedoch habe ich noch keine Antwort darauf bekommen.
https://groups.google.com/g/weewx-user/c/hywAIukA6n4
Aber es scheint zu funktionieren :D .
Antworten