climate_indices
climate_indices copied to clipboard
Work out a daily PET to facilitate daily SPEI
The Thornthwaite method being used for PET is based on monthly/calendar values. Work out another method to allow for daily SPEI, i.e. compute PET from daily temperature values so we can perform daily SPEI computations.
Hi @monocongo, would it be relatively straight forward to compute daily SPEI values if a time-independent PET calculation would be available? I've been using Makkink (https://nl.wikipedia.org/wiki/Referentie-gewasverdamping) which is based on global radiation and temperature and could contribute an implementation to climate_indices (I hope, my python skills are not great yet). Would you be interested? And what would be the next step to get to daily SPEI values?
Yes, that sounds like a valuable contribution. Thanks for the idea, @Emmadd and let me know if I can help. There's no better way to improve your Python skills than writing good Python!
Here's a formulation for Makkink in case someone else wants to go ahead and implement it:
def makkink_KNMI(TG, Q):
T = TG - 273.15 #[degC]
#1) verzadigde dampspanning tov water
e_s = 6.107 * 10**(7.5 * (T / (237.3 + T))) #[hPa]
#2) verzadigde dampspanningsgradient tov water
delta = ((7.5 * 237.3) / (T + 237.3)**2) * np.log(10) * e_s #[hPa/degC]
#3) psychrometerconstante (afhankelijk van T)
gamma = 0.646 + (0.0006 * T) #[hPa/degC]
#4) verdampingswarmte van water
labda = 1000 * (2501 - (2.38 * T)) #[J/kg]
#5) soortelijke massa van water
rho = 1000 #[kg/m3]
#verdamping
Ev = ( (1000 * 0.65 * delta) / ((delta + gamma) * rho * labda) ) * Q #[mm/day] = [kg/m2/day]
return Ev
Documentation (sorry, in Dutch) is available here for example https://www.knmiprojects.nl/projects/handboek-waarnemingen/documents/publications/2006/01/01/h10-verdamping