modules_CanopyClearing (09/16/13)

CRHM Borland

CanopyClearing.

This module defined in ClassCanopyClearing, models net all-wave radiation at the snow surface under a needleleaf forest canopy from the observed incoming short-wave radiation and the Satterlund (1979) modified form of the Brunt equation. The canopy interception is modelled in summer using 'sparse' Rutter interception model (i.e. Valente 1997) and in winter a coupled forest snow interception and sublimation routine
after Hedstom & Pomeroy / Parviainen & Pomeroy/Ellis:

Observations

  • Qsi (W/m2) - incident short-wave.        *basic module and variation 1  i.e. CanopyClearing or CanopyClearing#1
  • Qli (W/m2) - incident long-wave.           *basic module and variation 2   i.e. CanopyClearing or CanopyClearing#2

Observation Variable.

  • Ts (°C) - snow surface temperature.
  • Qnsn (W/m2) - net all-wave at snow surface.
  • Qsisn (W/m2) - incident short-wave at snow surface.
  • Qlisn (W/m2) - incident long-wave at snow surface.
  • Qlosn (W/m2) -reflected long-wave at surface.

Variables

  • drip_cpy (mm/int) - canopy drip.
  • direct_rain (mm/int) - direct rain through canopy.
  • net_rain (mm/int) - direct rain + drip.
  • cum_net_rain (mm) - cumulative net_rain.
  • Subl_Cpy (mm/int) - canopy snow sublimation.
  • cum_Subl_Cpy (mm) - cumulative canopy snow sublimation.
  • rain_load (mm) - canopy rain load.
  • snow_load (mm) - canopy snow load.
  • direct_snow (mm/int) - direct snow through canopy.
  • SUnload (mm/int) - canopy snow unloaded.
  • net_snow (mm/int) - hru_snow less snow interception.
  • Cum_net_snow (mm) - cumulative net_snow.
  • u_FHt (m/s) - wind speed at canopy top.
  • cc () - canopy coverage.
  • intcp_evap (mm/int) - evaporation from the canopy.
  • cum_intcp_evap (mm) - cumulative canopy evaporation.
  • Pevap (mm/int) - Priestley/Taylor canopy evaporation when snowcover developed.
  • k () - extinction coefficient.
  • Tauc () - short-wave transmissivity through the canopy.
  • ra (s/m) - resistance.
  • Pa (kPa) - atmospheric pressure calculated from the elevation.
  • Qnsn_var (W/m2) - net all-wave at snow surface.
  • Qsisn_var (W/m2) - incident short-wave at snow surface.
  • Qlisn_var (W/m2) - reflected long-wave at snow surface.

Parameters

  • CanopyClearing () - canopy/clearing - 0/1.
  • Ht (m) - canopy height.
  • AlbedoCanopy () - initial average HRU snow cover albedo. Only use by canopy. However should be set to 0.0 for clearing. See note below.
  • hru_elev (m) - HRU mean elevation.
  • basin_area (km^2) - basin area.
  • hru area (km^2) - HRU area.
  • Z0snow (m) - roughness length.
  • Zref (m) - temperature measurement height.
  • Zwind (m) - wind measurement height.
  • LAI (m2/m2) - leaf area index.
  • inhibit_evap (flag) - 0/1 enable/inhibit.
  • Sbar (kg/m^2) - maximum canopy snow interception load.
  • Zvent (m) - ventilation wind speed height.
  • unload_t (°C) - ice-bulb temperature when canopy snow is unloaded as snow. Only use by canopy.
  • unload_t _water(°C) - ice-bulb temperature when canopy snow is unloaded as water. Only use by canopy.

Variable Inputs

  • hru_t (°C) - (*) air temperature.
  • hru_rh (%) - (*) relative humidity.
  • hru_ea (kPa) - (*) vapour pressure.  Often calculated by an observation filter from t and rh.
  • hru_u (m/s) - (*) average wind speed over time step.
  • SWE (mm) - (*) snow water equivalent.
  • SolAng (radians) - (*) from  global or similar module.
  • hru_rain (mm/int) - HRU rain from module obs.
  • hru_snow (mm/int) - HRU snow from module obs.
  • hru_evap (*) (mm/int). - Maximum evaporation when there is no snowcover.
  • QliVt_var (W/m2) - reflected long-wave at snow surface. *variation 1 and 3 i.e. CanopyClearingGap#1 or #3
  • QsiS_var (W/m2) - incident short-wave at snow surface.  *variation 2 and 3 i.e. CanopyClearingGap#2 or #3

 

Notes.

    The parameter Ht is used for the canopy height (vegetation) which is consistent with CRHM..

    A parameter AlbedoCanopy is used for the canopy albedo. This may be handled using an external module or macro if the value changes with the season..

    There is a problem.with the application of  AlbedoCanopy. It modifies Qnsn for canopy and clearing as follows:

        Qnsn[hh] = Qlisn[hh] - Qlosn[hh] + Qsisn[hh]*(1.0 - AlbedoCanopy[hh]) // for both canopy and clearing

        AlbedoCanopy should be set to 0.0 for clearing. Since AlbedoCanopy for canopy is low (say 0.1) the error is usually very small if this is inadvertently used for clearing..

    The canopy Tauc is not corrected to handle the change of radiation extinction path length for slope and aspect effects. Refer to the module CanopyClearingGap.