Zonneschijnduur berekenen algoritme Schipper

Bericht van: Luc (Kessel Lb) , 13-07-2022 11:42 

Ik ben bezig om de zonneschijnduur te berekenen uit de globale straling. Ik doe dat via het Schipper algoritme: https://cdn.knmi.nl/knmi/pdf/bibliotheek/knmipubTR/TR258.pdf

Op pagina 28 staat deze samenvatting:

 

Ik ben bezig een PHP script hiervoor te ontwikkelen. Daarin heb ik de variabelen hetzelfde genoemd als in de PDF. De globale straling (Ggem, Gmin en Gmax), haal ik uit een Davis Solar sensor via Meteobrigde. Meteobridge heeft tags om het gemiddelde over de laatste 5 minuten, en de max- en minwaardes over de laatste 5 minuten uit te lezen. Deze waardes geven ik samen met de datum/tijd door aan het PHP script.

Op basis van de datum/tijd en mijn GPS locatie, bepaal ik de hoogte h (hoek van de zon) op dat tijdstip. En op basis van de dag van het jaar bepaal ik ook G0. Dat is de Globale straling die op deze dag maximaal beschikbaar is. De zonneconstante is 1367 W/m2. Echter doordat de aarde in de zomer verder van de zon af staat en in de zomer dichterbij, is de Globale straling gedurende het jaar niet constant. Vandaag zou dat bijvoorbeeld 1322 W/m2 zijn.

Na het bepalen van deze waarden ga ik aan de hand van de formules op pagina 28 van de PDF verder rekenen. De zonneschijnduur fractie Fr geeft aan hoelang de zon heeft geschenen in de afgelopen tijdsperiode (bij mij 5 minuten). 

In situaties a t/m c lijkt het goed te gaan, echter in situatie d (als de sinus van de hoek van de zon >= 0.3 is), zie ik onverklaarbare resultaten. Ik krijg daar vaak een negatieve zonneschijnduur/fractie en soms ook hoger dan 1. 

Ik heb hieronder even wat debug output van een foutieve uitkomst neergezet. Op basis van deze waardes, komt het gedeelte boven de streep in de breuk bij situatie d uit op een negatief getal: (($Ggem / $G0) - (1.27 * $Gmin / $G0)) = -0.056948673486369

Daardoor wordt ook de fractie zonneschijn negatief. Ik zit zelf al dagen te kijken wat hier mis kan zijn of wat ik fout doe. Wat ik me kan voorstellen is dat ik alle waardes < 0 moet afromen naar 0 en alle waardes > 1 naar 1. Echter ik lees dat niet in de beschrijving van het algoritme. Maar het kan natuurlijk ook zijn dat ik ergens een denk- en/of rekenfout maak.

Wie ziet wat er hier fout gaat en waarom? 


datum tijd: 22-07-13 10:33
Ggem: 279
Gmin: 279
Gmax: 640
dag vh jaar: 194
G0: 1322.7700557069
h: 43.1288203264
sin(h): 0.68364096585015
Ggrens: 1020.510626746
situatie d:
$Tl: 13.03
($Ggem / $G0): 0.21092101291248
(1.27 * $Gmin / $G0): 0.26786968639885
(($Ggem / $G0) - (1.27 * $Gmin / $G0)): -0.056948673486369
exp(-$Tl/(0.9+(9.4 * $sinh))): 0.16888417806724
Zonneschijnfractie Fr: -0.33720549869209

 

Met deze waardes op dit moment komt er wel een verwacht resultaat uit:

 

datum tijd: 22-07-13 11:39
Ggem: 531
Gmin: 302
Gmax: 531
dag vh jaar: 194
G0: 1322.7700557069
h: 51.99405008653
sin(h): 0.78794681563477
Ggrens: 1073.5969922861
situatie d:
$Tl: 13.03
($Ggem / $G0): 0.40143031489794
(1.27 * $Gmin / $G0): 0.2899521336647
(($Ggem / $G0) - (1.27 * $Gmin / $G0)): 0.11147818123324
exp(-$Tl/(0.9+(9.4 * $sinh))): 0.20833388385302
Zonneschijnfractie Fr: 0.53509385593698

Bericht laatst bijgewerkt: 13-07-2022 11:43
Sneeuwliefhebber, oprichter Hetweeractueel.nl

Zonneschijnduur berekenen algoritme Schipper   ( 581)
Luc (Kessel Lb) ( 25m) -- 13-07-2022 11:42
Re: Zonneschijnduur berekenen algoritme Schipper   ( 263)
Peter (Wiltz -Luxemburg) ( 381m) -- 13-07-2022 12:19
Re: Zonneschijnduur berekenen algoritme Schipper   ( 238)
Luc (Kessel Lb) ( 25m) -- 13-07-2022 12:33
Re: Zonneschijnduur berekenen algoritme Schipper   ( 299)
Mark (Kaulille, B Limburg) ( 47m) -- 13-07-2022 12:47
Re: Zonneschijnduur berekenen algoritme Schipper   ( 288)
Luc (Kessel Lb) ( 25m) -- 13-07-2022 13:14
Antwoord uit Handboek Waarnemingen, hfdstk. 8   ( 300)
Ben (Lelystad) ( 13m) -- 13-07-2022 14:04
Top! Bedankt voor de info.   ( 205)
Luc (Kessel Lb) ( 25m) -- 13-07-2022 14:19
Als je data wilt van zowel globale staling als (gemeten) zonuren...   ( 229)
Gerhard (Vaassen) ( 15m) -- 13-07-2022 16:42
Re: Zonneschijnduur berekenen algoritme Schipper   ( 232)
Mark (Kaulille, B Limburg) ( 47m) -- 13-07-2022 14:20
Re: Zonneschijnduur berekenen algoritme Schipper   ( 210)
Hendrik (Londerzeel-B) ( 7m) -- 13-07-2022 14:38
Re: Zonneschijnduur berekenen algoritme Schipper   ( 181)
Mark (Kaulille, B Limburg) ( 47m) -- 13-07-2022 14:58
Niet helemaal   ( 197)
Luc (Kessel Lb) ( 25m) -- 13-07-2022 15:24
Re: Niet helemaal   ( 169)
Mark (Kaulille, B Limburg) ( 47m) -- 13-07-2022 15:31
Re: Niet helemaal   ( 169)
Luc (Kessel Lb) ( 25m) -- 13-07-2022 15:58
Het zou hier maar donker zijn   ( 167)
Hendrik (Londerzeel-B) ( 7m) -- 13-07-2022 18:19
Ik ben geen held in berekeningen   ( 215)
Hendrik (Londerzeel-B) ( 7m) -- 13-07-2022 13:07
Uitleg   ( 275)
Robert (Sint Philipsland) -- 13-07-2022 16:09
Re: Uitleg   ( 253)
Rutger (Meppel) -- 13-07-2022 16:14
Interessante data en artikel Rutger   ( 186)
Robert (Sint Philipsland) -- 13-07-2022 17:49
Re: Zonneschijnduur berekenen algoritme Schipper   ( 220)
Luc (Kessel Lb) ( 25m) -- 14-07-2022 11:18
Re: Zonneschijnduur berekenen algoritme Schipper   ( 175)
Mark (Kaulille, B Limburg) ( 47m) -- 14-07-2022 11:37
Re: Zonneschijnduur berekenen algoritme Schipper   ( 193)
Luc (Kessel Lb) ( 25m) -- 14-07-2022 13:30
Re: Zonneschijnduur berekenen algoritme Schipper   ( 164)
Mark (Kaulille, B Limburg) ( 47m) -- 14-07-2022 13:50
Bedankt!   ( 164)
Luc (Kessel Lb) ( 25m) -- 14-07-2022 15:22
Re: Bedankt!   ( 160)
Mark (Kaulille, B Limburg) ( 47m) -- 14-07-2022 15:48
Even meerekenen...   ( 251)
Ben (Lelystad) ( 13m) -- 14-07-2022 14:49
Re: Even meerekenen...   ( 218)
Luc (Kessel Lb) ( 25m) -- 14-07-2022 15:22