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

Calculates the Evapotranspiration using Hargreave's equation. More...

+ Inheritance diagram for HargreaveET:
+ Collaboration diagram for HargreaveET:

Detailed Description

Calculates the Evapotranspiration using Hargreave's equation.

\[ET_{rc} = 0.0135 K_T\ s_0 \sqrt{\Delta T} (T + 17.8)\]

where:

  • \( ET_{rc} \) the reference crop evapotranspiration in mm/day
  • \( K_T = 0.00185 {\Delta T}^2 - 0.0433 \Delta T + 0.4023\) Continentality factor as given in the reference
  • \( \Delta T = |T_{max} - T_{min}|[K]\) Daily temperature range
  • \( T [^\circ C]\) daily mean temperature
  • \( s_0 = 15.392 d_r \left(\omega_s\sin(\Phi) \sin{\gamma} + \cos{\Phi}\cos{\gamma} * \sin(\omega_s)\right)\) the extraterrestrial solar radiation in mm/day
  • \( d_r = 1 + 0.0033 \cos(DOY\frac{2 \pi}{365})\) relative distance between earth and sun
  • \( \omega_s = \arccos(-\tan{\Phi} \tan{\gamma}) \) sunset hour angle (radians)
  • \( \gamma = 0.4039 \sin(DOY\frac{2 \pi}{365} - 1.405) \) solar declination (radians)
  • \( \Phi\) geographic latitude (radians)
See also
SAMANI, Zohrab. Estimating solar radiation and evapotranspiration using minimum climatological data. Journal of Irrigation and Drainage Engineering, 2000, 126. Jg., Nr. 4, S. 265-267.

Crop specific potential evapotranspiration is scaled by LAI: \( ET_{pot} = ET_{rc} \frac{LAI}{2.88}\).

Public Member Functions

real conc (cmf::math::Time t, const cmf::water::solute &_Solute)
 Returns the concentration of the flux.
 
flux_node::ptr get_target (const flux_node &inquirer)
 Returns the other end of a connection than the asking end.
 
flux_node::ptr get_target (int index) const
 With index 0, the left node is returned, with index 1 the right node of the connection.
 
real get_tracer_filter ()
 A value ranging from 0 to 1 to filter tracers out of the water flux.
 
real get_tracer_filter (solute S)
 A value ranging from 0 to 1 to filter tracers out of the water flux.
 
bool kill_me ()
 Deregisters this connection from its nodes. Returns true if only one reference is left.
 
flux_node::ptr left_node () const
 Returns the left node of this connection.
 
real q (const flux_node &inquirer, cmf::math::Time t)
 Returns the current flux through a connection. Negative signs mean out of the inquirer, positive are inflows to the inquirer.
 
void refresh (cmf::math::Time t)
 Performes a new calculation of the flux.
 
flux_node::ptr right_node () const
 returns the right node of this connection
 
void set_tracer_filter (real value)
 A value ranging from 0 to 1 to filter tracers out of the water flux.
 

Static Public Member Functions

static void use_for_cell (cmf::upslope::Cell &cell)
 Connects all soil layers with the transpiration node of the cell.
 

Public Attributes

const std::string type
 A string describing the type of the connection.
 

Member Function Documentation

◆ conc()

real conc ( cmf::math::Time t,
const cmf::water::solute & _Solute )
inherited

Returns the concentration of the flux.


If not overridden, it returns the concentration of the source of the flux (direction depending)

◆ get_tracer_filter()

real get_tracer_filter ( )
inherited

A value ranging from 0 to 1 to filter tracers out of the water flux.

1.0 is no filter and 0.0 means no solute is crossing this connection

◆ set_tracer_filter()

void set_tracer_filter ( real value)
inherited

A value ranging from 0 to 1 to filter tracers out of the water flux.

1.0 is no filter and 0.0 means no solute is crossing this connection