Hallo,
ich würde gern die Tagesmitteltemperatur nach der "24-Punkt-Methode" berechnen.
Diese ist wie folgt definiert:
Wie würdet ihr da vorgehen? Ähnlich wie die Logik zur DIN Sommer/Winter Berechnung?
Basierend darauf würde ich gern die Kältesumme des Jahres, die Wärmesumme des Jahres sowie die Grünlandtemperatursumme berechnen.
Die Kältesumme ist die Summe aller negativen Tagesmitteltemperaturen im Winterhalbjahr (September - März)
Die Wärmesumme ist die Summe aller positiven Tagesmitteltemperaturen im Sommerhalbjahr.
Die Grünlandtemperatursumme (GTS) ist eine rechnerische Wärmesumme, anhand welcher im Frühjahr der Beginn der Feldarbeit bestimmt wird. Sobald der Wert von 200 überschritten wird, markiert dies das Ende der winterlichen Vegetationsruhe und den Beginn von nachhaltigem Pflanzenwachstum. Es werden ab Jahresbeginn alle positiven Tagesmittel erfasst. Im Januar wird mit dem Faktor 0,5 multipliziert, im Februar mit dem Faktor 0,75, und ab März geht dann der „volle“ Tageswert (mal Faktor 1) in die Rechnung ein.
Danke Euch
ich würde gern die Tagesmitteltemperatur nach der "24-Punkt-Methode" berechnen.
Diese ist wie folgt definiert:
- Berechnung der Tagesmittel aus 24 Stundenwerten jeweils zur vollen Stunde (Summe der 24 Temperaturen zur vollen Stunde beginnend ab 0:00 Uhr geteilt durch die Anzahl von Werten)
- Bezugszeit für einen Tag i.d.R. 23:51 UTC des Vortages bis 23:50 UTC
- Wenn mehr als 3 Stundenwerte fehlen -> Berechnung aus 4 Hauptterminen (00, 06, 12, 18 UTC)
Wie würdet ihr da vorgehen? Ähnlich wie die Logik zur DIN Sommer/Winter Berechnung?
Code:
#!/usr/bin/env python3 # sommer_winter_berechnung.py import time lvar=[] actual_temp=round(float(sh.raumtemp.aussen.nord()),1) #einlesen der list if not sh.raumtemp.aussen.nord.sommer.digits(): sh.raumtemp.aussen.nord.sommer.digits(['','','','','']) for i in range(5): if sh.raumtemp.aussen.nord.sommer.digits()[i] == '': lvar.append(actual_temp) else: lvar.append(float(sh.raumtemp.aussen.nord.sommer.digits()[i])) # logger.info('Time: '+time.strftime('%H')+' Temp: '+str(aktual)) # logger.info('var1: '+str(lvar[0])+' var2:'+str(lvar[1])+' var3: '+str(lvar[2])+' var4: '+str(lvar[3])+' var5: '+str(lvar[4])) if time.strftime('%H') == '07': lvar[0]=actual_temp lvar[4]=lvar[3] lvar[3]=round((lvar[0]+lvar[1]+lvar[2]+lvar[2])/4,1) if time.strftime('%H') == '14': lvar[1]=actual_temp if time.strftime('%H') == '22': lvar[2]=actual_temp # logger.info('var1: '+str(lvar[0])+' var2:'+str(lvar[1])+' var3: '+str(lvar[2])+' var4: '+str(lvar[3])+' var5: '+str(lvar[4])) avg=round((((lvar[0]+lvar[1]+lvar[2]+lvar[2])/4)+lvar[3]+lvar[4])/3,1) logger.info('Sommerauswertung: '+str(avg)) sh.raumtemp.aussen.nord.sommer.digits([str(lvar[0]),str(lvar[1]),str(lvar[2]),str(lvar[3]),str(lvar[4])])
Basierend darauf würde ich gern die Kältesumme des Jahres, die Wärmesumme des Jahres sowie die Grünlandtemperatursumme berechnen.
Die Kältesumme ist die Summe aller negativen Tagesmitteltemperaturen im Winterhalbjahr (September - März)
Die Wärmesumme ist die Summe aller positiven Tagesmitteltemperaturen im Sommerhalbjahr.
Die Grünlandtemperatursumme (GTS) ist eine rechnerische Wärmesumme, anhand welcher im Frühjahr der Beginn der Feldarbeit bestimmt wird. Sobald der Wert von 200 überschritten wird, markiert dies das Ende der winterlichen Vegetationsruhe und den Beginn von nachhaltigem Pflanzenwachstum. Es werden ab Jahresbeginn alle positiven Tagesmittel erfasst. Im Januar wird mit dem Faktor 0,5 multipliziert, im Februar mit dem Faktor 0,75, und ab März geht dann der „volle“ Tageswert (mal Faktor 1) in die Rechnung ein.
Danke Euch
Kommentar