2.0.0b10
catchment modelling framework
Loading...
Searching...
No Matches
ShuttleworthWallace Class Reference

Calculates the sum of soil evaporation and transpiration according to Shuttleworth & Wallace 1985, as implemented in BROOK 90 (Federer 1990) More...

+ Inheritance diagram for ShuttleworthWallace:
+ Collaboration diagram for ShuttleworthWallace:

Detailed Description

Calculates the sum of soil evaporation and transpiration according to Shuttleworth & Wallace 1985, as implemented in BROOK 90 (Federer 1990)

The difference to BROOK90 is, that the actual transpiration is not calculated by plant resitance and potential gradient between plant and soil, but by an piecewise linear function of the pF value \( pF = \log_{10}\left(-\Psi [hPa]\right) \):

\[ \frac{T_{act}}{T_{pot}} = \begin{cases}1 & pF \le 3.35 \\ \frac{pF - 4.2}{3.35 - 4.2} & pF \in [3.35 .. 4.2] \\ 0 & pF \ge 4.2\end{cases} \]

Calculation procedure, as in BROOK 90:

Evapotranspiration from the canopy: \(\lambda ET_{canopy} = \frac {r_{ac} \Delta\ R_{n,canopy} + c_p\rho D_0}{\Delta \gamma r_{ac} + \gamma r_{sc}} \)

Evaporation from the ground: \(\lambda E_{ground} = \frac {r_{as} \Delta\ R_{n,ground} + c_p\rho D_0}{\Delta \gamma r_{as} + \gamma r_{ss}} \)

In case of a complete surface water covered ground, the surface resistance \(r_{ss}\) becomes 0. (GIR)

with

  • \( \Delta = \frac{de_s}{dT} = 4098\ 0.6108 \exp\left(\frac{17.27 T}{T+237.3}\right)(T+237.3)^{-2} \), the slope of the sat. vap. press. T function
  • \( R_{n,ground} = R_n \exp(-C_R LAI) \), the net radiation flux to the ground
  • \( R_{n,canopy} = R_n - R_{n,ground} \), the net radiation flux to the canopy
  • \( \lambda,c_p\rho,\gamma\) latent heat of vaporization, heat capacity of air, psychrometer constant
  • \( D_0 \) vapor pressure deficit at effective source height, see function D0
  • \( r_{ac}, r_{sc}, r_{as}, r_{ss} \) Resistances for the vapor pressure (see below)

Public Member Functions

 ShuttleworthWallace (cmf::upslope::Cell &cell, bool allow_dew=true)
 Calculates the transpiration and the soil evaporation from dry surfaces.
 
virtual void get_aerodynamic_resistance (double &r_ag, double &r_ac, cmf::math::Time t) const
 aerodynamic resistance from ground to atmosphere (r_ag) and from canopy to atmosphere (r_ac)
 
void refresh (cmf::math::Time t)
 Calculates all the values.
 

Static Public Member Functions

static void set_RSS_parameters (double _RSSa=500., double _RSSb=1.0, double _RSSa_pot=-3.22)
 Sets the parameters of the soil surface resistance, a function of the actual water potential.
 
static ShuttleworthWallace::ptr use_for_cell (cmf::upslope::Cell &cell)
 Uses ShuttleworthWallace for the complete ET system of the cell.
 

Public Attributes

double AIR
 Actual leaf evaporation rate in mm/day.
 
bool allow_dew
 If allow_dew is true (default), negative net radiation can lead to the formation of dew and rime.
 
double ASNVP
 Actual snow evaporation rate in mm/day.
 
cmf::math::num_array ATR
 actual transpiration rate per layer in mm/day
 
double ATR_sum
 potential surface water evaporation rate in mm/day, actual rate depends on surfacewater coverage
 
double GER
 Ground evaporation rate in mm/day (either from soil or from surfacewater)
 
double KSNVP
 multiplier to reduce snow evaporation, dimensionless.
 
double PIR
 Potential leaf evaporation rate in mm/day.
 
double PSNVP
 Potential snow evaporation rate in mm/day.
 
double PTR
 Potential transpiration rate in mm/day.
 
double RAA
 Aerodynamic resistance between the effective source height to the free atmosphere.
 
double RAC
 Aerodynamic resistance inside of the canopy.
 
double RAS
 Aerodynamic resistance from the ground to the effective source height.
 
double RSC
 Surface resistance of the canopy (depending on stomatal resistance and LAI)
 
double RSS
 Surface resistance of the soil (depending on the topsoil matrix potential)
 

Member Function Documentation

◆ set_RSS_parameters()

static void set_RSS_parameters ( double _RSSa = 500.,
double _RSSb = 1.0,
double _RSSa_pot = -3.22 )
static

Sets the parameters of the soil surface resistance, a function of the actual water potential.

\[ r_{ss} = RSS_a \left(\frac{\Psi}{\Psi_{RSS_a}}\right)^{RSS_b} \]

Parameters
_RSSaResistance in s/m at potential in RSSa_pot
_RSSbExponent for curve shape
_RSSa_potMatrix potential (m), where \(r_{ss} = RSS_a\)

◆ use_for_cell()

static ShuttleworthWallace::ptr use_for_cell ( cmf::upslope::Cell & cell)
static

Uses ShuttleworthWallace for the complete ET system of the cell.

The installation includes the following:

  • Create a new ShuttleworthWallace instance (SW) as central calculation unit
  • Connect each soil layer with cell.transpiration using the generic "transpiration" connection, controlled by SW
  • Connect the top soil layer with cell.evaporation using the generic "soilevaporation" connection, controlled by SW
  • If a canopy water storage exists, use SW for Canopy evaporation
  • If a snow storage exist, use SW for snow evaporation
  • if a surface water storage exist, create a connection between it and evaporation (open water transpiration)

Member Data Documentation

◆ allow_dew

bool allow_dew

If allow_dew is true (default), negative net radiation can lead to the formation of dew and rime.

Setting it to false, checks each evapotranspiration term to be negative and turns it then to zero.

◆ KSNVP

double KSNVP

multiplier to reduce snow evaporation, dimensionless.

KSNVP is an arbitrary and frustrating correction factor needed for snow evaporation (SNVP) to substantially reduce its value. This is the only arbitrary fudge factor in BROOK90 and is needed because the Shuttleworth-Gurney aerodynamic resistances as corrected for SAI are much too low to give reasonable snow evaporation from forests