Class Richard_albedo#
Defined in File Richard_albedo.hpp
Nested Relationships#
Nested Types#
Inheritance Relationships#
Base Type#
public module_base(Class module_base)
Class Documentation#
-
class Richard_albedo : public module_base#
Slow albedo changes for cold snow are neglected, but an exponential decay to an asymptotic minimum of 0.5 with an adjustable time constant applied to melting snow.
Somewhat mis-named as although this is detailed in Essery and Etchevers (2004), the original source is from CLASS detailed in Verseghy, et al (1991).
Depends:
Snow Water Equivalent “swe” [mm]
Snow surface temperature “T_s_0” [ \( K \) ]
Precipitation, snow phase “p_snow” [ \( mm \cdot dt^{-1} \) ]
Provides:
Snow albedo “snow_albedo” [0-1]
True if a melting snow albedo is being used “melting_albedo” [0 or 1]
Configuration:
{ "albedo_min": 0.5, "albedo_max": 0.84, "a1": 1.08e7, "a2": 7.2e5, "min_swe_refresh": 1.0, "init_albedo_snow": 0.85, "init_albedo_bare": 0.17 }
- albedo_min#
Minimum snow albedo
- albedo_max#
Maximum snow albedo
- a1#
Cold snow decay constant
- a2#
Melting snow decay constant
- init_albedo_snow#
Initial fresh snow albedo
- init_albedo_bare#
Bare ground albedo
References:
Equation 4 and 5
Essery, R., and P. Etchevers (2004), Parameter sensitivity in simulations of snowmelt, J. Geophys. Res., 109(D20111), 1–15, doi:10.1029/2004JD005036.
Verseghy, D. L.: Class – A Canadian land surface scheme for GCMS, I. Soil model, Int. J. Climatol., 11, 111–133, https://doi.org/10.1002/joc.3370110202, 1991
- Type:
double
- Default:
0.5
- Type:
double
- Default:
0.84
- Type:
double
- Default:
1.08e7 s
- Type:
double
- Default:
7.2e5 s
- Type:
double
- Default:
0.85
- Type:
double
- Default:
0.17
Public Functions
-
Richard_albedo(config_file cfg)#
-
~Richard_albedo()#
-
virtual void run(mesh_elem &face)#
Needs to be implemented by each data parallel module. This will be called and executed for each timestep
- Parameters:
face – The terrain element (triangle) to be worked upon for an element parallel domain
global_param – A pointer to the shared global paramter space with domain-wide paramters
-
virtual void init(mesh &domain)#
-
virtual void checkpoint(mesh &domain, netcdf &chkpt)#
Checkpoint (save state) the current module. By default this errors out if the modules does not support checkpointing.
- Parameters:
domain –
data –
-
virtual void load_checkpoint(mesh &domain, netcdf &chkpt)#