Class Harder_precip_phase

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

Class Documentation

class Harder_precip_phase : public module_base

Calculates precipitation phase via falling hydrometeor energy balance following Harder, et al (2013)

Depends:

  • Air temperature “t” [ \( {}^\circ C\) ]

  • Relative Humidity “rh” [%]

  • Precip “p” [ \(mm \cdot dt^{-1}\) ]

Provides:

  • Snow precip p_snow [ \(mm \cdot dt^{-1}\)]

  • Liquid precip p_rain [ \(mm \cdot dt^{-1}\)]

  • Fraction of rain “frac_precip_rain” [-]

  • Fraction of snow “frac_precip_snow” [-]

  • Cumulated snow precip “acc_snow” [mm]

  • Cumulated liquid precip “acc_rain” [mm]

References:

  • Harder, P., Pomeroy, J. (2013). Estimating precipitation phase using a psychrometric energy balance method Hydrological Processes 27(13), 1901-1914. https://dx.doi.org/10.1002/hyp.9799

Public Functions

Harder_precip_phase(config_file cfg)
~Harder_precip_phase()
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)

Public Members

double b
double c
class data : public face_info

Public Members

double hours_since_snowfall
double acc_rain
double acc_snow