Ik zat nog wat te bladeren door de GFS code om wat beter te begrijpen hoe de fluxen aan het landoppervlak berekend worden en het volgende viel me op.
Eerst wat context; Er wordt gebruikt gemaakt van de Jarvis-Stewart methode om de gewasweerstand te bepalen. Dat was zeker in de jaren '90 een veelgebruikte methode. Het is erg pragmatisch en vereist niks gerelateerd aan fotosynthese wat het model veel eenvoudiger houdt ten opzichte van alternatieven. Zoals al dat soort modellen staat het wel bol van de empirische parameters waarvan veel lastig te meten zijn, deels omdat het een wat hypothetische aangelegenheid is.
Het begint met het zetten van een "minimale stomatale weerstand". Stomatale is in de literatuur soms wat slecht gedefinieerd maar in deze context betekent het de weerstand van één enkel blad (beide zijden indien van toepassing), dus met een aangenomen bepaalde dichtheid, maximale opening etc van de stomata . Minimale in deze context betekent vrij van stress als gevolg van omgevingsfactoren als temperatuur, straling, luchtvochtigheid (VPD), water (bodemvocht) en soms CO2 gehalte maar dat negeert GFS. Dat negeren van CO2 wordt vaak gedaan omdat het op korte termijn weinig varieert en dan als constante wordt aangenomen. Stress betekent alles wat de stomata deels doet sluiten (beneden de maximale opening) en daarmee een vermindering betekent van de maximale opening (en groei).
De exacte invloed van die omgevingsfactoren is misschien wel leuk voor een andere keer. Het is daarbij wel interessant dat EC (IFS) temperatuur negeert als ik het goed begrijp. Dat is wat vreemd maar een voordeeltje is dat het een positieve feedback voorkomt waarbij stomata (volgens dit Jarvis-Stewart model) sluiten bij extreme hitte, met als gevolg dat het oppervlak nog warmer wordt etc. Bij de huidige problemen van GFS is die feedback denk ik wel een dingetje, maar zeker niet de oorzaak, meer een multiplier.
Wat me opviel is dat de theoretisch minimale stomatale weerstand (dus op bladniveau) wordt gezet via een lookup table met een bijbehorende kaart van het vegetatietype dat GFS aanneemt. De onderstaande tabel geeft die vegetatietypen en bijbehorende eigenschappen uit de lookup tables, rsmtbl is de minimale stomatale weerstand (in s/m):

En dit zijn de vegatietypen volgens GFS voor de Benelux. Dit is nog op het T1534 grid wat je krijgt met het "GFS sflux" endpoint op Nomads. Dat wijkt qua resolutie en ligging van de gridcellen af van wat de meeste sites zoals WZ tonen.

De kolom "nroot_data" geeft aan tot welke diepte de vegetatie bij het bodemvocht kan. Daarbij is 4 de diepste laag van 1-2m, en zoals al wel duidelijk was komt de meeste vegetatie in Europa daar niet bij, en blijft die laag in het model heel erg nat, ook tijdens droogte.
In de code wordt de "rsmtbl" uitgelezen en opgeslagen als "rsmin" variabele. In de header van voornaamste functie in Noah LSM, de "sflx" subroutine in het bestand "sflx.f" wordt die variabele gedefinieerd als "minimum canopy resistance (s/m). In andere (kleinere) subroutines (bv redprm & canres) wordt diezelfde variabele gedefinieerd als "minimum stomatal resistance".

Dat is uiteraard tegenstrijdig en roept bij mij de vraag op of die waarden in de lookup table geldig zijn voor het volledige gewas of een enkel blad. Zoals in de bovenstaande tabel te zien is neemt GFS voor elk gewastype een LAI (leaf area index) van 3 aan.
Als ik op basis van mijn eigen ervaring naar die waarden kijk vind ik met name de lage waarden heel erg laag. Zowel "croplands" als "grasslands" hebben 20 s/m. Ik associeer persoonlijk een dergelijke waarde eerder met een volledig volgroeid gewas, en zelf dan is het behoorlijk laag.
De code zelf gaat er vanuit dat de waarde op bladniveau is gedefinieerd, aangezien er wordt geïntegreerd over het hele gewas door te delen met de LAI. Je kan één blad min of meer beschouwen als een LAI van 1. De bladeren (of stomata) worden dan aangenomen in parallel geschakeld te zijn, vandaar het delen met de LAI om van bladniveau tot de totale weerstand van het gewas te komen.
Dat betekent echter dat een waarde van 20 s/m op bladniveau met een LAI van 3 een minimale gewasweerstand van zo'n 6.7 s/m oplevert. Dat is echt extreem laag.
Het "minimale" maakt het wat hypothetisch, dus metingen in de literatuur zijn aan de schaarse kant. Het beste overzicht dat ik ken is te vinden in tabel 11.2 uit ASCE MOP70. Die geeft waarden uit de literatuur met en zonder (=minimale) stress zowel op blad als gewasniveau. Ook tabel 5.1 uit Garratt (1992) geeft een mooi overzicht maar voor de minimale enkel op "gewasniveau".
Als ik daarnaast zelf wat in de literatuur zoek kom ik ook niet verder dan 20 s/m als allerlaagste waarde op gewasniveau.
Een te lage minimale weerstand zal zorgen voor een overschatting van verdamping, met name natuurlijk als die hoog is in tijden van weinig stress (geen extreme droogte). En een dergelijke overschatting zal de het in het model beschikbare bodemvocht eerder uitputten waardoor droogte eerder en sterker inzet.
Het lastige is dat het vullen van dergelijke tabellen zoals in GFS enigszins zwarte magie is, en vaak misbruikt wordt om te tunen. Tunen als in plaats van de meest realistische waarde te gebruiken één die het beste uiteindelijke resultaat geeft.
Wat denken jullie bin het zien van de rsmin waarden in die tabel? Gewas of blad?
Ik ga er overigens van uit dat die code inc tabellen op Github overeenkomt met wat gebruikt wordt. De rsmin wordt niet uitgeleverd door NCEP maar bijvoorbeeld de ruwheid wel, en die komt exact overeen met die tabel.
De tabellen staan gedefinieerd in:
https://github.com/NOAA-EMC/NoahLSM/blob/master/sorc/set_soilveg.f
En de code waar het gebruikt wordt voor bepaling van weerstanden en verdamping staan in:
https://github.com/NOAA-EMC/NoahLSM/blob/master/sorc/sflx.f
Die repo is al oud, maar volgens mij draait GFS nog altijd met Noah LSM 2.7.
Edit; onderstaande tabel is wat ECMWF IFS gebruikt. Zie de kolom "rsmin".
Dit is uit cy50r1:

Dit is uit cy48r1, blijkbaar is er redelijk recent nog wat aan gesleuteld.
