User Tools

Site Tools


start:hype_model_description:processes_above_ground

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
start:hype_model_description:processes_above_ground [2018/10/02 10:01]
cpers [Temperature adjustments]
start:hype_model_description:processes_above_ground [2024/02/21 08:54] (current)
cpers [Snowfall distribution]
Line 37: Line 37:
  
 Where <​m>​{Delta}h</​m>​ is a class'​s elevation deviation from the subbasin average elevation and //snfrac// is the average fraction of precipitation that falls as snow calculated from subbasin temperature (<​m>​T_i</​m>​) and temperature thresholds (see equation below), or from input. Where <​m>​{Delta}h</​m>​ is a class'​s elevation deviation from the subbasin average elevation and //snfrac// is the average fraction of precipitation that falls as snow calculated from subbasin temperature (<​m>​T_i</​m>​) and temperature thresholds (see equation below), or from input.
-==== Rainfall and snowfall ​calculation ​==== +==== Rainfall and snowfall ​separation ​==== 
-The rain/snow fraction of precipitation is calculated based on temperature or given as an input time series. Different temperatures can be used in the equation, i.e. basin average or class temperature. When the air temperature (//T//) is around the threshold temperature for mixed precipitation (land-use dependent parameter //ttmp// plus general parameter //ttpd//) both rain and snow. The interval for mixed precipitation is given by the parameter //ttpi//. For temperature below threshold minus //ttpi//, the precipitation is assumed to be in solid form only and is added to the snowpack. If the air temperature is greater than the threshold temperature plus //ttpi//, the precipitation is assumed to be solely in liquid form. For intermediate temperatures,​ the precipitation is assumed to be a mixture of liquid and solid forms i.e. as both rain and snow. The proportion (<​m>​a_rain</​m>​) of precipitation ​(//​P//​) ​that falls as rain depends linearly on the temperature. ​+The rain/snow fraction of precipitation is calculated based on temperature or given as an input time series. Different temperatures can be used in the equation, i.e. basin average or class temperature. When the air temperature (//T//) is around the threshold temperature for mixed precipitation (land-use dependent parameter //ttmp// plus general parameter //ttpd//) both rain and snow. The interval for mixed precipitation is given by the parameter //ttpi//. For temperature below threshold minus //ttpi//, the precipitation is assumed to be in solid form only and is added to the snowpack. If the air temperature is greater than the threshold temperature plus //ttpi//, the precipitation is assumed to be solely in liquid form. For intermediate temperatures,​ the precipitation is assumed to be a mixture of liquid and solid forms i.e. as both rain and snow. The proportion (<​m>​a_rain</​m>​) of precipitation that falls as rain depends linearly on the temperature. ​
  
  
Line 52: Line 52:
 <m> a_{rain}=1-sffrac </m> <m> a_{rain}=1-sffrac </m>
  
-The amount of rainfall and snowfall is calculated from the corrected precipitation.+The amount of rainfall and snowfall is calculated from the corrected precipitation ​(//P//).
  
-<m> rainfall=prec*a_{rain} </​m>​ +<m> rainfall=P*a_{rain} </​m>​ 
-<m> snowfall=prec*(1-a_{rain} ) </m>+<m> snowfall=P*(1-a_{rain} ) </m>
  
 +==== Snowfall distribution ====
  
 +The optional snowfall distribution models redistribute the snowfall of a catchment among the classes within a subbasin or between subbasins depending on wind. The model uses Winstral coefficients. For each subbasin and class and wind direction a Winstral coefficient (//WSF//) is given as input data to the model. Wind direction is calculated from forcingdata of westerly (U) and southerly (V) wind. The wind direction is translated to the closest quadrant or octant, and the Winstral coefficient of that direction is used.
  
 +The Winstral coefficient is, with some scaling parameters, used to calculate the relative snowfall for each class this time step. There are two models; one that use a linear function (Gustafsson et al, 2015) and one that is log-linear (Clemenzi et al., 2023): ​
 +
 +<m> relative_snowfall = 1. + WSFscale * WSFwind * WSFluse * (WSF + WSFbias) </​m> ​
 +
 +<m> relative_snowfall = 10 ^ (WSFscale * WSFwind * WSFluse * (WSF + WSFbias)) </​m> ​
 +
 +//​WSFscale//​ and //WSFbias// are general parameter, //WSFwind// is a scaling factor depending on wind speed (//wind//), //WSFluse// is a scaling parameter depending on land-use. The wind speed scaling factor reduced the snow fall redistribution for low wind speeds. It depends on one general parameter, //​sndrwscale//,​ and the windspeed, and is calculated as:
 +
 +<m> WSFwind = 1 - exp( - {({sndrwscale*wind})^2} ) </m>
 +
 +The relative snowfall is limited to the interval [1 - //sfdmax//, 1 + //sfdmax//] for the linear model and [0,//​sfdmax//​] for the log-linear. //sfdmax// is a general parameter. The relative snowfall is normalized within each subbasin so that the subbasin mean snowfall is preserved. The snowfall distribution is applied only if snow is falling for a fraction of the subbasin area that is larger than a limit (//​limit//​).
 +
 +For the option of distributing snowfall also between subbasins, two versions are currently implemented. One option may distribute snowfall to the nearest downwind subbasin, while the other option distribute snowfall to all subbasins within a distance range. Both variants use the log-linear Winstral coefficients. They are used to calculate the relative snowfall for each class in all the subbasins separately. For the first version, the distribution of the snowfall of the upwind subbasin between the upwind and downwind subbasins is then calculated based on windspeed (//wind//) and distance (//d//). The two subbasins share the //​sharefrac//​ of snowfall, and the rest goes to the upwind subbasin only. For the other version, the distribution of the snowfall is calculated for the subbasin within a range depending on windspeed, and with a reducing weight (//​weight//​) depending on distance (//d//).
 +
 +<m> sharefrac = exp(-2*(d/​{sndrscale*wind})^2) </m>
 +
 +<m> weigth = exp(-2*(d/​{sndrscale*wind})^2) </m>
 +
 +The //​sndrscale//​ parameter is a general length scale parameter (m per m/s). The distance is calculated for the subbasins X/Y coordinates. Subbasins with //weight// less than 0.1 is cut off.
 +
 +
 +==== References ====
 +Gustafsson et al., 2015
 +
 +Ilaria Clemenzi, David Gustafsson, Wolf-Dietrich Marchand, Björn Norell, Jie Zhang, Rickard Pettersson, Veijo Allan Pohjola, 2023. Impact of snow distribution modelling for runoff predictions. Hydrology Research 1 May 2023; 54 (5): 633–647. https://​doi.org/​10.2166/​nh.2023.043
 ==== Links to file reference ==== ==== Links to file reference ====
  
Line 74: Line 101:
 |Rainfall and snowfall calculations| |//ttmp, ttpd, ttpi//​|[[start:​hype_file_reference:​par.txt|par.txt]]| |Rainfall and snowfall calculations| |//ttmp, ttpd, ttpi//​|[[start:​hype_file_reference:​par.txt|par.txt]]|
 |:::​|//​sffrac//​| |[[start:​hype_file_reference:​sfobs.txt|SFobs.txt]]| |:::​|//​sffrac//​| |[[start:​hype_file_reference:​sfobs.txt|SFobs.txt]]|
 +|Snowfall distribution|U,​ V | |[[start:​hype_file_reference:​uwobs.txt|UWobs.txt]],​ [[start:​hype_file_reference:​vwobs.txt|VWobs.txt]]|
 +|:::​|//​wind//​|calculated from U, V |:::|
 +|:::​|//​WSF//​|//​wsf_nn_d//​ |[[start:​hype_file_reference:​geodata.txt|GeoData.txt]]|
 +|:::​|//​d//​|calculated from //xcoord, ycoord// |:::|
 +|:::| |//​WSFscale,​WSFluse,​WSFbias,​sfdmax//​ |[[start:​hype_file_reference:​par.txt|par.txt]]|
 +|:::​|//​limit//​ |//sfdlim// |:::|
 +|:::​|//​sndrscale//​ |//​sndrlscale//​ |:::|
  
  
Line 91: Line 125:
 | ::: | calculate_subbasin_precipitation | | ::: | calculate_subbasin_precipitation |
 | ::: | set_atmospheric_parameters_corrections | | ::: | set_atmospheric_parameters_corrections |
 +| ::: | calculate_winddirspeed |
 +| ::: | calculate_snowfall_distribution |
  
-===== Evaporation ​=====+===== Potential evaporation ​=====
  
-Potential evaporation (//epot// in mm) is calculated based on the temperature if it is not read in from file (Xobs.txt). Alternative PET models exist, and is described [[start:​hype_model_description:​processes_above_ground#​alternative_potential_evaporation_models|below]]. When the air temperature (//temp//) is greater than the threshold temperature //ttmp// evaporation is assumed to occur. Snow melting, snow density and evaporation use the same threshold temperature. The basic potential evapotranspiration (<​m>​epot_base</​m>​) depends on the land use dependent rate parameter //cevp//.+Potential evaporation is calculated for each class based on land use and atmopheric variables. The potential evaporation is then used to calculate the current actual evapotranspiration from each land class (see [[start:​hype_model_description:​hype_land#​evapotranspiration|Soil water - Evaporation]]. A river with an area (i.e. is a class), flooded floodplains and lakes are assumed to evaporate at the potential rate, when the air temperature is above the threshold temperature (//ttmp//). Evaporation is limited by the water body's volume. 
 + 
 +  
 +Potential evaporation (//epot// in mm) is calculated based on the temperature if it is not read in from file (//repo// in Xobs.txt). Alternative PET models exist, and is described [[start:​hype_model_description:​processes_above_ground#​alternative_potential_evaporation_models|below]]. When the air temperature (//T//) is greater than the threshold temperature //ttmp// evaporation is assumed to occur. Snow melting, snow density and evaporation use the same threshold temperature. The basic potential evapotranspiration (<​m>​epot_base</​m>​) depends on the land use dependent rate parameter //cevp//.
  
 <m> cseason = 1 + cevpam*sin(2*pi*(dayno-cevpph)/​365) </m> <m> cseason = 1 + cevpam*sin(2*pi*(dayno-cevpph)/​365) </m>
  
-<m> epot_{base} = (cevp * cseason) * (temp-ttmp) </m>+<m> epot_{base} = (cevp * cseason) * (T-ttmp) </m>
  
 A seasonal factor //cseason// adjusts the potential evaporation rate (//cevp//) e.g. making it higher in the spring when the air is often dry, and lower in autumn when the air is often more humid than in spring. The factor is sinusoidal with two parameters //cevpam// and //cevpph//. It is not used if //cevpam// is zero. A //cevpph// around 45 days give a maximum correction in mid May (dayno=45+91=136). The minimum correction will then be a half year later in September (dayno=136+182). For an earlier maximum, reduce //​cevpph//​. ​ A seasonal factor //cseason// adjusts the potential evaporation rate (//cevp//) e.g. making it higher in the spring when the air is often dry, and lower in autumn when the air is often more humid than in spring. The factor is sinusoidal with two parameters //cevpam// and //cevpph//. It is not used if //cevpam// is zero. A //cevpph// around 45 days give a maximum correction in mid May (dayno=45+91=136). The minimum correction will then be a half year later in September (dayno=136+182). For an earlier maximum, reduce //​cevpph//​. ​
Line 106: Line 145:
 <m> epot = epot_{base} * (1 + cevpcorr) </m> <m> epot = epot_{base} * (1 + cevpcorr) </m>
  
-Evaporation from soil is assumed to occur from the two upper layers. The potential evaporation is assumed to decrease exponentially with depth (depending on the parameter //​epotdist//​). The potential evaporation is divided between the two layers (//​epotfrac//​) with the distribution depending on the potential evaporation in the midpoint of each soil layer (figure 1). This is then used by approximating to a rectangle. Since soil layers differ between classes, the evaporation distribution do to. 
- 
-<m> epot1 = EXP(- epotdist*soillayerdepth(1){/​}2) </m> 
- 
-<m> epot2 = EXP(- epotdist*(soillayerdepth(1)+{soillayerdepth(2)- 
-          soillayerdepth(1)}/​2)) </m> 
-          ​ 
-<​m> ​ area1 = soillayerdepth(1)*epot1 </m> 
- 
-<​m> ​ area2 = (soillayerdepth(2)-soillayerdepth(1))*epot2 </m> 
- 
-<m> epotfrac1 = area1 / {area1 + area2} </m> 
- 
-<​m> ​ epotfrac2 = area2 / {area1 + area2} </m> 
- 
- 
- 
-|{{:​start:​hype_model_description:​potentialevaporation.png?​400|}}| 
-|Figure 1 The distribution of potential evaporation between the top two soil layers.| 
- 
- 
-The actual evaporation from a soil layer (//evap//) is limited by the availability of water in the soil (//soil//) above the wilting point (//wp//, mm). Evaporation is at potential rate only if the water exceeds field capacity (//fc//, mm) or a (large) proportion (general parameter //lp//) of field capacity. In between these limits evaporation increase linearly. 
- 
-<m> evapp= {lbrace}{ 
- ​\matrix{3}{2} 
-    {0 {soil-wp<​0} 
-    epot*epotfrac {soil-wp>​lp*fc} 
-    epot*epotfrac*{{soil-wp}/​{lp*fc}} {else} }} </m> 
- 
-<m> evap = MAX(evapp,​soil-wp) </m> 
- 
- 
-|{{:​start:​hype_model_description:​evap.png?​400|}}| 
-|Figure 2 Evaporation as a function of soil water.| 
- 
-The actual evaporation may also depend on soil temperature (//​soiltemp//​). It is then reduced for temperatures above land use parameter //ttrig// and depend on two other land use parameters (//tredA//, //tredB//) as well (Figure 3).  
- 
-|{{:​start:​hype_model_description:​pet_soiltemp.png?​400|}}| 
-|Figure 3 Soil temperature factor for reduction of soil evapotranspiration. Parameter values: //​ttrip//​=1,​ //​tredA//​=0.5,​ //​tredB//​=1.| 
- 
-The actual evaporation is set to zero for temperatures below the threshold temperature and for negative potential evaporation estimates (condensation). The soil evapotranspiration reduction is calculated as: 
- 
-<m> factor = 1-e^( - tredA*(soiltemp-ttrig)^tredB) </m> 
- 
-<m> evapp = evapp*factor </m> 
- 
-A river with an area (is a class), flooded floodplains and lakes are assumed to evaporate at the potential rate, when the air temperature is above the threshold temperature (//ttmp//). Evaporation is limited by the water body's volume. 
  
  
Line 158: Line 150:
  
 HYPE give the option to exchange the default potential evaporation model for another model. Only the basic potential evaporation (<​m>​epot_base</​m>​) differs between models. Models 0-2 only use air temperature forcing. Models 3-5 want shortwave radiation and minimum and maximum daily air temperature,​ although if lacking approximations are made (see section [[start:​hype_model_description:​processes_above_ground#​input_to_alternative_potential_evaporation_models|Input to alternative potential evaporation models]] below). In addition, model 5 wants relative humidity and wind speed if available. HYPE give the option to exchange the default potential evaporation model for another model. Only the basic potential evaporation (<​m>​epot_base</​m>​) differs between models. Models 0-2 only use air temperature forcing. Models 3-5 want shortwave radiation and minimum and maximum daily air temperature,​ although if lacking approximations are made (see section [[start:​hype_model_description:​processes_above_ground#​input_to_alternative_potential_evaporation_models|Input to alternative potential evaporation models]] below). In addition, model 5 wants relative humidity and wind speed if available.
 +Note, regardless of potential evaporation model, the actual evaporation is limited to temperatures above parameter //ttmp//.
  
 === Model 0 (default) ===  === Model 0 (default) === 
-As described above; evapotranspiration depends on the rate parameter //cevp// and air temperature (//temp//) above a threshold //ttmp//. If //epot// is given in Xobs.txt those values are used.+As described above; evapotranspiration depends on the rate parameter //cevp// and air temperature (//T//) above a threshold //ttmp//. If the variable ​//repo// is given in Xobs.txt those values are used.
  
-<m> epot_{base} = (cevp * cseason) * (temp-ttmp) </m>+<m> epot_{base} = (cevp * cseason) * (T-ttmp) </m>
  
 === Model 1 === === Model 1 ===
-Model 1 is the same as model 0, but it will not be using //epot// from input data, even if it is present.+Model 1 is the same as model 0, but it will not be using //repo// from input data, even if it is present.
  
 === Model 2 - Modified Jensen-Haise/​McGuiness === === Model 2 - Modified Jensen-Haise/​McGuiness ===
-The modified Jensen-Haise/​McGuiness model follow Oudin et al. (2005). The potential evaporation depends on extraterrestrial radiation (//​radext//​),​ latent heat of vaporization (<​m>​lambda</​m>​) and temperature (//temp//). Two general parameters (//jhtadd// and //​jhtscale//​) are used and one land use dependent (crop coefficient //kc2// or //kc//).+The modified Jensen-Haise/​McGuiness model follow Oudin et al. (2005). The potential evaporation depends on extraterrestrial radiation (//​radext//​),​ latent heat of vaporization (<​m>​lambda</​m>​) and temperature (//T//). Two general parameters (//jhtadd// and //​jhtscale//​) are used and one land use dependent (crop coefficient //kc2// or //kc//).
  
-<m> epot_{base} = {kc/​jhtscale} * MAX(0,​{radext/​lambda}*(temp+jhtadd)) </m>+<m> epot_{base} = {kc/​jhtscale} * MAX(0,​{radext/​lambda}*(T+jhtadd)) </m>
  
 === Model 3 - Modified Hargreaves-Samani === === Model 3 - Modified Hargreaves-Samani ===
-The Hargreaves-Samani evaporation is modified to limit the "​turbidity-factor"​. The potential evaporation depends on extraterrestrial radiation (//​radext//​),​ latent heat of vaporization (<​m>​lambda</​m>​),​ temperature (//temp//) and turbidity (//​turbidity//​). One general parameter (//krs//) is used and one land use dependent (crop coefficient //kc3// or //kc//).+The Hargreaves-Samani evaporation is modified to limit the "​turbidity-factor"​. The potential evaporation depends on extraterrestrial radiation (//​radext//​),​ latent heat of vaporization (<​m>​lambda</​m>​),​ temperature (//T//) and turbidity (//​turbidity//​). One general parameter (//krs//) is used and one land use dependent (crop coefficient //kc3// or //kc//).
  
-<m> epot_{base} = MAX(0,​kc*0.0023 * {radext/​lambda}*{turbidity/​krs}*(temp+17.8)) </m>+<m> epot_{base} = MAX(0,​kc*0.0023 * {radext/​lambda}*{turbidity/​krs}*(T+17.8)) </m>
  
 === Model 4 - Priestly-Taylor === === Model 4 - Priestly-Taylor ===
-The Priestly-taylor ​potential evaporation depends on net downward radiation (//​netrad//​),​ slope of saturated vapour pressure curve (//​dsatvap//​),​ latent heat of vaporization (<​m>​lambda</​m>​) and a psychrometric constant (<​m>​gamma</​m>​). One general parameter (//​alfapt//​) are used and one land use dependent (crop coefficient //kc4// or //kc//).+The Priestly-Taylor ​potential evaporation depends on net downward radiation (//​netrad//​),​ slope of saturated vapour pressure curve (//​dsatvap//​),​ latent heat of vaporization (<​m>​lambda</​m>​) and a psychrometric constant (<​m>​gamma</​m>​). One general parameter (//​alfapt//​) are used and one land use dependent (crop coefficient //kc4// or //kc//).
  
 <m> epot_{base} = MAX(0,​kc*alfapt * {dsatvap*netrad/​lambda*(dsatvap+gamma)}) </m> <m> epot_{base} = MAX(0,​kc*alfapt * {dsatvap*netrad/​lambda*(dsatvap+gamma)}) </m>
  
 === Model 5 - FAO Penman-Monteith === === Model 5 - FAO Penman-Monteith ===
-The FOA Penman-Monteith potential evaporation depends on net downward radiation (//​netrad//​),​ slope of saturated vapour pressure curve (//​dsatvap//​),​ saturated and actual vapour pressure (//satvap// and //​actvap//​),​ temperature (//temp//), wind speed (//wind//) and a psychrometric constant (<​m>​gamma</​m>​). One land use dependent parameter (crop coefficient //kc5// or //kc//) is used.+The FAO Penman-Monteith potential evaporation depends on net downward radiation (//​netrad//​),​ slope of saturated vapour pressure curve (//​dsatvap//​),​ saturated and actual vapour pressure (//satvap// and //​actvap//​),​ temperature (//T//), wind speed (//wind//) and a psychrometric constant (<​m>​gamma</​m>​). One land use dependent parameter (crop coefficient //kc5// or //kc//) is used.
  
-<m> epot_{base} = MAX(0,​kc*{0.408 * dsatvap*netrad + gamma*{{900}/​{temp+273}}*wind*(satvap-actvap)}/​{dsatvap+gamma*(1+0.34*wind)}) </m>+<m> epot_{base} = MAX(0,​kc*{0.408 * dsatvap*netrad + gamma*{{900}/​{T+273}}*wind*(satvap-actvap)}/​{dsatvap+gamma*(1+0.34*wind)}) </m>
  
 ==== Input to alternative potential evaporation models ==== ==== Input to alternative potential evaporation models ====
  
 Summary of alternative input to PET models, and link to file reference. Summary of alternative input to PET models, and link to file reference.
-^ Model ^ Parameters ([[start:​hype_file_reference:​par.txt|par.txt]])^ Static data ([[start:​hype_file_reference:​geodata.txt|GeoData.txt]])^ Forcing data ([[start:​hype_file_reference#​observation_data_files|files]])^ +^ Model                               ​^ Parameters ([[start:​hype_file_reference:​par.txt|par.txt]]) ​ ^ Static data ([[start:​hype_file_reference:​geodata.txt|GeoData.txt]]) ​ ^ Forcing data ([[start:​hype_file_reference#​observation_data_files|files]]) ​ 
-| 0 | cevp, ttmp | | Xobs:repo, Tobs | +| 0                                   ​| cevp, ttmp                                                                                                                       | Xobs:repo, Tobs                                                            
-| 1 | cevp, ttmp | | Tobs | +| 1                                   ​| cevp, ttmp                                                                                                                       | Tobs                                                                       ​
-| 2: modified Jensen-Haise/​McGuiness | jhtadd, jhtscale, kc | latitude | Tobs | +| 2: modified Jensen-Haise/​McGuiness ​ | jhtadd, jhtscale, kc                                        | latitude ​                                                            ​| Tobs                                                                       ​
-| 3: modified Hargreaves-Samani | kc, krs | elevation, latitude | SWobs, Tobs | +| 3: modified Hargreaves-Samani ​      ​| kc, krs                                                     ​| elevation, latitude ​                                                 | SWobs, Tobs                                                                
-| 3: modified Hargreaves-Samani | kc, krs | elevation, latitude | TMINobs, TMAXobs, Tobs | +| 3: modified Hargreaves-Samani ​      ​| kc, krs                                                     ​| elevation, latitude, cloudiness ​                                     | Tobs                                                                       | 
-| 4: Priestly-Taylor | alb, alfapt, kc | elevation, latitude | RHobs, SWobs, TMINobs, TMAXobs, Tobs | +| 3: modified Hargreaves-Samani ​      | kc, krs                                                     | elevation, latitude ​                                                 ​| TMINobs, TMAXobs, Tobs                                                     ​
-| 4: Priestly-Taylor | alb, alfapt, kc, krs | elevation, latitude | SWobs, TMINobs, TMAXobs, Tobs | +| 4: Priestly-Taylor ​                 | alb, alfapt, kc                                             ​| elevation, latitude ​                                                 | RHobs, SWobs, TMINobs, TMAXobs, Tobs                                       ​
-| 4: Priestly-Taylor | alb, alfapt, kc, krs | elevation, latitude | TMINobs, TMAXobs, Tobs | +| 4: Priestly-Taylor ​                 | alb, alfapt, kc, krs                                        | elevation, latitude ​                                                 | SWobs, TMINobs, TMAXobs, Tobs                                              
-| 5: FAO Penman-Monteith | alb, kc, roughness, zphd, zwind, zwish | elevation, latitude | RHobs, SWobs, TMINobs, TMAXobs, Tobs, Uobs | +| 4: Priestly-Taylor ​                 | alb, alfapt, kc, krs                                        | elevation, latitude ​                                                 | TMINobs, TMAXobs, Tobs                                                     | 
-| 5: FAO Penman-Monteith | alb, kc, mwind | elevation, latitude | RHobs, SWobs, TMINobs, TMAXobs, Tobs | +| 4: Priestly-Taylor ​                 | alb, alfapt, kc, krs                                        | elevation, latitude, cloudiness ​                                     | Tobs                                                                       
-| 5: FAO Penman-Monteith | alb, kc, krs, roughness, zphd, zwind, zwish | elevation, latitude | SWobs, TMINobs, TMAXobs, Tobs, Uobs | +| 5: FAO Penman-Monteith ​             | alb, kc, roughness, zphd, zwind, zwish                      | elevation, latitude ​                                                 | RHobs, SWobs, TMINobs, TMAXobs, Tobs, Uobs                                 ​
-| 5: FAO Penman-Monteith | alb, kc, krs, mwind | elevation, latitude | SWobs, TMINobs, TMAXobs, Tobs | +| 5: FAO Penman-Monteith ​             | alb, kc, mwind                                              | elevation, latitude ​                                                 | RHobs, SWobs, TMINobs, TMAXobs, Tobs                                       ​
-| 5: FAO Penman-Monteith | alb, kc, krs, roughness, zphd, zwind, zwish | elevation, latitude | TMINobs, TMAXobs, Tobs, Uobs | +| 5: FAO Penman-Monteith ​             | alb, kc, krs, roughness, zphd, zwind, zwish                 ​| elevation, latitude ​                                                 | SWobs, TMINobs, TMAXobs, Tobs, Uobs                                        
-| 5: FAO Penman-Monteith | alb, kc, krs, mwind | elevation, latitude | TMINobs, TMAXobs, Tobs |+| 5: FAO Penman-Monteith ​             | alb, kc, krs, mwind                                         ​| elevation, latitude ​                                                 | SWobs, TMINobs, TMAXobs, Tobs                                              
 +| 5: FAO Penman-Monteith ​             | alb, kc, krs, roughness, zphd, zwind, zwish                 ​| elevation, latitude ​                                                 | TMINobs, TMAXobs, Tobs, Uobs                                               ​
 +| 5: FAO Penman-Monteith ​             | alb, kc, krs, mwind                                         ​| elevation, latitude ​                                                 | TMINobs, TMAXobs, Tobs                                                     | 
 +| 5: FAO Penman-Monteith ​             | alb, kc, krs, mwind                                         | elevation, latitude, cloudiness ​                                     | Tobs                                                                       |
  
  
 === Actual vapour pressure === === Actual vapour pressure ===
-Actual vapour pressure (//​actvap//​) is calculated following FAO recommended procedure and function/​data priority. Depending on availability of minimum, mean and maximum relative humidity (//rh//) and minimum, mean and maximum air temperature (//temp//) equations with different combinations of saturated vapour pressure (calculated from temperature) times relative humidity is used. For example:+Actual vapour pressure (//​actvap//​) is calculated following FAO recommended procedure and function/​data priority. Depending on availability of minimum, mean and maximum relative humidity (//rh//) and minimum, mean and maximum air temperature (<​m>​T_min,​ T, T_max</m>) equations with different combinations of saturated vapour pressure (calculated from temperature) times relative humidity is used. For example:
  
-<m> actvap = {satvap(temp_max)*rh_min+satvap(temp_min)*rh_max}/2 </m>+<m> actvap = {satvap(T_max)*rh_min+satvap(T_min)*rh_max}/2 </m>
  
-<m> actvap = satvap(temp_min)*rh_max </m>+<m> actvap = satvap(T_min)*rh_max </m>
  
-<m> actvap = satvap(temp)*rh_mean </m>+<m> actvap = satvap(T)*rh_mean </m>
  
-<m> actvap = satvap(temp_min)*1 </m>+<m> actvap = satvap(T_min)*1 </m>
  
 In case not enough data is available, minimum temperature is calculated from turbidity and a general parameter (//krs//) and the last equation of those above is used. In case not enough data is available, minimum temperature is calculated from turbidity and a general parameter (//krs//) and the last equation of those above is used.
  
-<​m> ​temp_min ​temp_mean ​- 0.5*(turbidity/​krs)^2 </m>+<​m> ​T_min - 0.5*(turbidity/​krs)^2 </m>
  
 Eventually actual vapour pressure is limited by the calculated saturated vapour pressure. ​ Eventually actual vapour pressure is limited by the calculated saturated vapour pressure. ​
Line 240: Line 236:
  
 === Latent heat of vaporization === === Latent heat of vaporization ===
-Latent heat of vaporization (<​m>​lambda</​m>​) is a function of temperature (//temp//).+Latent heat of vaporization (<​m>​lambda</​m>​) is a function of temperature (//T//).
  
-<m> lambda = 2.501-0.002361*temp </m>+<m> lambda = 2.501-0.002361*</m>
  
 === Net downward radiation === === Net downward radiation ===
-The net downward radiation (//​netrad//​) is used explicitly for PET model 4 and 5 (Priestly-Taylor and FAO Penman-Monteith). The net radiation is calculated following FAO recommended procedure. It is calculated as net shortwave radiation minus net longwave radiation. Net shortwave radiation (<​m>​net_short</​m>​) is calculated from the shortwave radiation (//swrad//) and the land use dependent albedo parameter (//alb//). Net longwave radiation (<​m>​net_long</​m>​) is calculated using temperature (//tmintmaxor tmean//), actual vapour pressure (//​actvap//​) and relative shortwave radiation (//relsh//) if those are available, otherwise it is set to zero. The relative shortwave radiation is shortwave radiation in relation to clear sky shortwave radiation.+The net downward radiation (//​netrad//​) is used explicitly for PET model 4 and 5 (Priestly-Taylor and FAO Penman-Monteith). The net radiation is calculated following FAO recommended procedure. It is calculated as net shortwave radiation minus net longwave radiation. Net shortwave radiation (<​m>​net_short</​m>​) is calculated from the shortwave radiation (//swrad//) and the land use dependent albedo parameter (//alb//). Net longwave radiation (<​m>​net_long</​m>​) is calculated using temperature (<​m>​T_minT_maxT</m>), actual vapour pressure (//​actvap//​) and relative shortwave radiation (//relsh//) if those are available, otherwise it is set to zero. The relative shortwave radiation is shortwave radiation in relation to clear sky shortwave radiation.
  
 <m> net_short = swrad*(1-alb) </m> <m> net_short = swrad*(1-alb) </m>
  
-<m> net_long = 4.903*10^9*{{(temp_max+273.15)^4+(temp_min+273.15)^4}/​2}*(0.34-0.14*actvap^0.5)*(1.35*relsh-0.35) </m>+<m> net_long = 4.903*10^9*{{(T_max+273.15)^4+(T_min+273.15)^4}/​2}*(0.34-0.14*actvap^0.5)*(1.35*relsh-0.35) </m>
  
 <m> relsh = turbidity/​clearturb </m> <m> relsh = turbidity/​clearturb </m>
Line 264: Line 260:
  
 === Slope of saturated vapour pressure curve === === Slope of saturated vapour pressure curve ===
-The slope of saturated vapour pressure temperature function (//​dsatvap//​) is used explicitly for PET model 4 and 5 (Priestly-Taylor and FAO Penman-Monteith). The slope is calculated from air temperature (//temp//).+The slope of saturated vapour pressure temperature function (//​dsatvap//​) is used explicitly for PET model 4 and 5 (Priestly-Taylor and FAO Penman-Monteith). The slope is calculated from daily mean air temperature (//T//).
  
-<m> dsatvap=4098*0.6108*{EXP({17.27*temp}/{temp+237.3})}*{{1}/​{(temp+237.3)^2}} </m>+<m> dsatvap=4098*0.6108*{EXP({17.27*T}/{T+237.3})}*{{1}/​{(T+237.3)^2}} </m>
  
 === Turbidity === === Turbidity ===
Line 278: Line 274:
 <m> clearturb = 0.75+elev*0.00002 </m> <m> clearturb = 0.75+elev*0.00002 </m>
  
-where //elev// is subbasin elevation in meter above sea level. If no shortwave radiaton time series are given, but time series of daily minimum and maximum temperature are, the turbidity is calculated as in the "​ordinary"​ Hargreaves-Samani turbidity function:+where //elev// is subbasin elevation in meter above sea level. If no shortwave radiaton time series are given, but montly cloudiness climatology is provided (//​cloudiness//​), the turbidity is calculated as 
  
-<m> turbidity = krs*SQRT(Tmax Tmin) </m>+<m> turbidity = (clearturb - 0.25)*(1-cloudiness) + 0.25 </​m>​ 
 + 
 +If no cloudiness are given either, but time series of daily minimum and maximum temperature are, the turbidity is calculated as in the "​ordinary"​ Hargreaves-Samani turbidity function: 
 + 
 +<m> turbidity = krs*SQRT(T_max T_min) </m>
  
 but still limited by the minimum turbidity value and the calculated clearsky turbidity. but still limited by the minimum turbidity value and the calculated clearsky turbidity.
Line 293: Line 293:
 ==== Links to file reference ==== ==== Links to file reference ====
  
-^Section ^Symbol ^Parameter/​Data ^File ^ +^ Section ​                                           ^ Symbol ​             ^ Parameter/​Data ​                                                              ​^ File                                                     ​
-|Evaporation|<​m>​T_i<​/m>​| ​|[[start:​hype_file_reference:​tobs.txt|Tobs.txt]]| +| Evaporation ​                                       ​| ​                    | //cevp, ttmp, cevpam, cevpph, cevpcorr, epotdist, lp, ttrig, tredA, tredB//  ​| [[start:​hype_file_reference:​par.txt|par.txt]] ​           
-|:::|//elev//|//elev_mean//|[[start:hype_file_reference:geodata.txt|GeoData.txt]]+| :::                                                | //wp//              calculated from //wcwp, wcwp1, wcwp2, wcwp3// and soillayerdepth ​            | :::                                                      ​
-|:::|<​m>​{Delta}h<​/m>|//dhslc_nn//|:::| +| :::                                                | //fc//              calculated from //wcfc, wcfc1, wcfc2, wcfc3// and soillayerdepth ​            | :::                                                      ​
-|:::​|<​m>​elev_obs<​/m>|//tobselev//|[[start:hype_file_reference:forckey.txt|ForcKey.txt]]+| :::                                                | //soillayerdepth//  ​| ​                                                                             ​| [[start:​hype_file_reference:​geoclass.txt|GeoClass.txt]] ​ 
-|:::|//tcelevadd, tcobselev, monthlapse, tempcorr, tcalt//​|[[start:​hype_file_reference:​par.txt|par.txt]]| +| Alternative potential evaporation models ​          ​| //​epot// ​           ​                                                                             | [[start:​hype_file_reference:​xobs.txt|Xobs.txt]] ​         
-|Alternative potential evaporation models|<​m>​P_i<​/m>| |[[start:​hype_file_reference:​pobs.txt|Pobs.txt]]| +| :::                                                                    ​| //jhtaddjhtscalekckc2kc3kc4kc5krsalfapt//                    | [[start:​hype_file_reference:​par.txt|par.txt]] ​           
-|:::| |//pcaddgpreccorrpcurainpcusnowpcelevthpcelevaddpcelevstdpcelevmaxpcluse//​|[[start:​hype_file_reference:​par.txt|par.txt]]| +Input to alternative potential evaporation models  ​                    ​| //alb, mwind, zwind, zwish, roughness, zpdh//                                | [[start:​hype_file_reference:​par.txt|par.txt]] ​           
-|:::|<​m>​{Delta}h</​m>​|//dhslc_nn//​|[[start:​hype_file_reference:​geodata.txt|GeoData.txt]]| +| :::                                                | <m>U_i</​m> ​                                                                                      [[start:hype_file_reference:uobs.txt|Uobs.txt]] ​         ​
-|:::​|<​m>​elev_std</m>|//​elev_std//​|:::+| :::                                                | //swrad//           ​| calculated or from                                                           ​| [[start:​hype_file_reference:​swobs.txt|SWobs.txt]] ​       
-|:::|//snfrac//​|calculated ​based on <​m>​T_i</​m> ​or from |[[start:​hype_file_reference:​sfobs.txt|SFobs.txt]]| +:::                                                ​//​elev// ​           ​| //elev_mean//                                                                | [[start:​hype_file_reference:​geodata.txt|GeoData.txt]] ​   
-|Input to alternative potential evaporation models| |//mwind, zwind, zwish, roughness, zpdh//​|[[start:​hype_file_reference:​par.txt|par.txt]]| +| :::                                                                    | //latitude, cloudiness//                                                     | :::                                                      ​|
-|:::|<​m>​U_i<​/m>|[[start:hype_file_reference:uobs.txt|Uobs.txt]]|+
  
  
Line 324: Line 323:
  
  
-===== Atmospheric deposition ​of nitrogen and phosphorus ​=====+===== Atmospheric deposition ​ =====
  
 +Atmospheric deposition can be added to the model as load or as concentration of precipitation.
 ==== Wet deposition ==== ==== Wet deposition ====
-Atmospheric deposition in the form of wet deposition of IN and SP is added as a concentration of rainfall. You can specify a time series of the concentration in precipitation in Xobs.txt (implemented for IN, SP, and T1). Otherwise ​nitrogen ​wet deposition (as a concentration) is specified in GeoData.txt for each subbasin, while the wet deposition of phosphorus is specified by a general model parameters (//​wetdepsp//​)+Atmospheric deposition in the form of wet deposition of IN and SP is added as a concentration of rainfall. You can specify a time series of the concentration in precipitation in Xobs.txt (implemented for IN, SP, and T1). Otherwise wet deposition (as a concentration) is specified in AtmdepData.txt for each subbasin. ​
  
 If parameter (//​aloadconst//​) is set, the wet deposition load in considered constant and not dependent on precipitation corrections. Thus the concentration of precipitation is changed to keep the load constant, when precipitation correction is applied. ​ If parameter (//​aloadconst//​) is set, the wet deposition load in considered constant and not dependent on precipitation corrections. Thus the concentration of precipitation is changed to keep the load constant, when precipitation correction is applied. ​
Line 335: Line 335:
 ==== Atmospheric deposition to the soil ==== ==== Atmospheric deposition to the soil ====
  
-Nitrogen dry deposition is specified in GeoData.txt for each subbasin ​and different vegetation ​groups, while dry deposition of phosphorus is specified by a model parameter //​drydepPP//​ (land use dependent)+Dry deposition is specified in AtmdepData.txt for each subbasin. It can be specified for different vegetation ​types or land uses
  
 Dry deposition of nitrogen and phosphorus is added to the snow or, if there is no snow, directly to the ground. Phosphorus deposition is added to PartP-pool in the upper soil layer and nitrogen deposits to the IN dissolved in soil water if the parameter //ponatm// is not set. A new concentration of IN in the soil water is then calculated. The parameter //ponatm// indicates that some of the nitrogen deposition will be added to organic nitrogen pool (//fastN//) instead of to the IN pool. Dry deposition of nitrogen and phosphorus is added to the snow or, if there is no snow, directly to the ground. Phosphorus deposition is added to PartP-pool in the upper soil layer and nitrogen deposits to the IN dissolved in soil water if the parameter //ponatm// is not set. A new concentration of IN in the soil water is then calculated. The parameter //ponatm// indicates that some of the nitrogen deposition will be added to organic nitrogen pool (//fastN//) instead of to the IN pool.
  
-For both nitrogen and phosphorus wet deposition is added through the concentration of precipitation. Precipitation may fall as snow and be added to the snow pack or if it is rain added to the potential infiltration. Depending on the fate of the infiltration,​ the wet atmospheric deposition will mix with the recieving water (e.g. surface runoff, soil layer water, macropore flow).+For both nitrogen and phosphorus wet deposition is added through the concentration of precipitation ​(as described above). Precipitation may fall as snow and be added to the snow pack or if it is rain added to the potential infiltration. Depending on the fate of the infiltration,​ the wet atmospheric deposition will mix with the recieving water (e.g. surface runoff, soil layer water, macropore flow).
 ==== Atmospheric deposition to rivers and lakes ==== ==== Atmospheric deposition to rivers and lakes ====
  
-Nitrogen dry deposition on water surfaces ​is specified in GeoData.txt for each subbasin, while dry deposition of phosphorus ​is specified by a model parameter //​drydepPP// ​(land use dependent). +Deposition ​is specified in AtmdepData.txt for each subbasin, as load and/or as concentration for wet deposition. It can be specified for different vegetation types or land uses, and thus water surfaces may have a different deposition than land surfaces. In addition monthly deposition can be specified. 
 + 
 +For both nitrogen and phosphorus wet deposition is added through the concentration of precipitation (as described above), while for dry deposition ​an amount ​of the nutrient ​is added to the river (if it has a class-areaor lake water.
  
-For both nitrogen and phosphorus wet deposition is added through the concentration of precipitation (as described above), while for dry deposition an amount of the nutrient is added to the river (if it has a class-area) or lake water. If the lake is divided atmospheric deposition are added to the fast lake part (FLP). 
  
-Alternatively wet deposition of phosphorus on water surfaces can be specified by a general model parameter (//​wetdepspl//​) as a load. Monthly load of IN atmosperic depostion on water surfaces can be specified in GeoData.txt for each subbasin. 
  
 ==== Links to file reference ==== ==== Links to file reference ====
Line 352: Line 352:
 ^Section ^Parameter/​Data ^File ^ ^Section ^Parameter/​Data ^File ^
 |Wet deposition|//​cpT1,​ cpIN, cpSP//​|[[start:​hype_file_reference:​xobs.txt|Xobs.txt]]| |Wet deposition|//​cpT1,​ cpIN, cpSP//​|[[start:​hype_file_reference:​xobs.txt|Xobs.txt]]|
-|:::|//wetdep_n//​|[[start:​hype_file_reference:​geodata.txt|GeoData.txt]]| +|:::|//XX_WD, XX_WD_Ln, XX_WD_Vn// (//XX// is substance, //n// is index of landuse or vegetation type)|[[start:​hype_file_reference:​atmdepdata.txt|AtmdepData.txt]]| 
-|:::|//wetdepsp, ​aloadconst//​|[[start:​hype_file_reference:​par.txt|par.txt]]| +|:::​|//​aloadconst//​|[[start:​hype_file_reference:​par.txt|par.txt]]| 
-|Atmospheric deposition to the soil|//drydep_n1,drydep_n2//​|[[start:​hype_file_reference:​geodata.txt|GeoData.txt]]| +|Atmospheric deposition to the soil|//XX_DDXX_DD_Ln, XX_DD_Vn, XX_DD_Mn_Vn// (//XX// is substance, //n// is index of landuse, vegetation type, or month)|[[start:​hype_file_reference:​atmdepdata.txt|AtmdepData.txt]]| 
-|:::|//drydepPP, ​ponatm//​|[[start:​hype_file_reference:​par.txt|par.txt]]| +|:::​|//​ponatm//​|[[start:​hype_file_reference:​par.txt|par.txt]]| 
-|Atmospheric deposition to rivers and lakes|//drydep_n3deploadn1-deploadn12//|[[start:​hype_file_reference:​geodata.txt|GeoData.txt]]| +|Atmospheric deposition to rivers and lakes|//XX_DDXX_DD_Ln, XX_DD_Vn, XX_DD_Mn_Vn// (//XX// is substance, //n// is index of landuse, vegetation type, or month)|[[start:​hype_file_reference:​atmdepdata.txt|AtmdepData.txt]]|
-|:::|//drydepPPwetdepspl//​|[[start:​hype_file_reference:​par.txt|par.txt]]|+
  
 ==== Links to relevant procedures in the code ==== ==== Links to relevant procedures in the code ====
  
 ^Modules (file) ^Procedures ^ ^Modules (file) ^Procedures ^
-|[[http://​hype.sourceforge.net/​doxy-html/​namespacenpc__soil__processes.html|npc_soil_processes (npc_soil_proc.f90)]]|set_class_precipitation_concentration_and_load| +|[[http://​hype.sourceforge.net/​doxy-html/​namespacenpc__soil__processes.html|npc_soil_processes (npc_soil_proc.f90)]]|add_dry_deposition_to_landclass|
-|:::|add_dry_deposition_to_landclass|+
 |:::​|atmdep_in_loss| |:::​|atmdep_in_loss|
-|[[http://​hype.sourceforge.net/​doxy-html/​namespaceatmospheric__processes.html|atmospheric_processes (atm_proc.f90)]]|set_precipitation_concentration+|[[http://​hype.sourceforge.net/​doxy-html/​namespaceatmospheric__processes.html|atmospheric_processes (atm_proc.f90)]]|set_class_precipitation_concentration_and_load| 
-|[[http://​hype.sourceforge.net/​doxy-html/​namespacenpc__surfacewater__processes.html|npc_surfacewater_processes (npc_sw_proc.f90)]]|add_dry_deposition_to_river+|:::​|set_T2_concentration_in_precipitation_on_water
-|:::|add_dry_deposition_to_lake|+|[[http://​hype.sourceforge.net/​doxy-html/​namespacenpc__surfacewater__processes.html|npc_surfacewater_processes (npc_sw_proc.f90)]]|add_deposition_to_river_as_load
 +|:::|add_deposition_to_lake_as_load|
  
  
start/hype_model_description/processes_above_ground.1538467276.txt.gz · Last modified: 2023/11/16 14:28 (external edit)