32#include <meteoio/MeteoIO.h>
78 std::vector<double>
hn3;
143 unsigned short int mk;
215 typedef enum YOUNG_MODULUS {
244 static unsigned short int snowType(
const double& dendricity,
const double& sphericity,
const double& grain_dia,
const unsigned short int& marker,
245 const double& theta_w,
const double& res_wat_cont_loc);
260 std::vector<double>
k;
263 std::vector<double>
c;
308 unsigned short int ID;
309 static const unsigned short int noID;
322 NodeData() :
z(0.),
u(0.),
f(0.),
udot(0.),
T(0.),
S_n(0.),
S_s(0.),
ssi(6.),
rta(0.),
hoar(0.),
384 void reset(
const bool& cumsum_mass);
535 explicit SnowStation(
const bool& i_useCanopyModel=
true,
const bool& i_useSoilLayers=
true,
536 const bool& i_isAlpine3D=
false,
const bool& i_useSeaIceModule=
false,
const bool& i_allow_inflate=
false);
544 void resize(
const size_t& number_of_elements);
551 void splitElements(
const double& max_element_length,
const double& comb_thresh_l);
559 double averageFromTop(
const double& averagingDepth,
const std::function<
double(
const ElementData&)>& Elementproperty)
const;
569 bool isGlacier(
const bool& hydro=
false)
const;
573 size_t find_tag(
const size_t& tag)
const;
639 static double flexibleMaxElemLength(
const double& depth,
const double& comb_thresh_l);
643 unsigned short int maxElementID;
644 bool useSoilLayers, isAlpine3D;
703 void reset(
const bool& cumsum_mass);
753 static std::vector<SnowProfileLayer>
generateProfile(
const mio::Date& dateOfProfile,
const SnowStation& Xdata,
const double hoar_density_surf,
const double hoar_min_size_surf);
783 const mio::Date& dateOfProfile,
const double hoar_density_surf);
802 std::string setHistory();
803 static int hexToDecimal(
const std::string& hex);
804 static double getNumericVersion(std::string version_str);
805 static mio::Date getRunDate();
806 static std::string getCompilationDate();
815 Slope(
const mio::Config& cfg);
828 unsigned int getSectorDir(
const double& dir_or_expo)
const;
829 void setSlope(
const unsigned int slope_sequence, std::vector<SnowStation>& vecXdata,
double& wind_dir);
894 void setMeteoData(
const mio::MeteoData& md,
const double& prevailing_wind_dir);
901 void getFixedPositions(std::vector<double>& positions)
const noexcept {positions = fixedPositions;}
904 static double getHS_last3hours(mio::IOManager &io,
const mio::Date& current_date);
908 void copySolutes(
const mio::MeteoData& md,
const size_t& i_number_of_solutes);
910 bool validMeteoData(
const mio::MeteoData& md,
const std::string& StationName,
const unsigned int& nslopes)
const;
913 double& precip,
const double& lw_in,
const double& hs_a3hl6,
double& tot_mass_in);
954 std::vector<double>
ts;
965 bool compHSrate(
const SnowStation& vecXdata,
const double& hs_a3hl6);
968 static void projectPrecipitations(
const double& SlopeAngle,
double& precips,
double& i_hs);
971 std::unique_ptr<mio::DataGenerator> dataGenerator;
972 std::vector<double> fixedPositions;
973 double minDepthSubsurf;
974 size_t maxNumberMeasTemperatures;
975 size_t numberMeasTemperatures;
976 size_t numberFixedRates;
977 double height_of_wind_value;
979 double wind_scaling_factor;
983 bool enforce_snow_height;
987 bool adjust_height_of_wind_value;
@ SOLID
Solid.
Definition DataClasses.h:43
@ GAS
Gas.
Definition DataClasses.h:45
@ LIQUID
Liquid.
Definition DataClasses.h:44
@ NUMBER_OF_PHASES
Definition DataClasses.h:46
SN_SOIL_DATA
The different soil fields (PERMAFROST)
Definition DataClasses.h:101
@ SOIL_RHO
Bulk density of dry soil component (without accounting for porosity)
Definition DataClasses.h:102
@ SOIL_C
Specific heat of dry soil component.
Definition DataClasses.h:104
@ SOIL_K
Bulk conductivity of dry soil component.
Definition DataClasses.h:103
@ N_SOIL_FIELDS
Definition DataClasses.h:105
double ssa
Single Scattering Albedo.
Definition DataClasses.h:53
double perc
Percentage of Energy.
Definition DataClasses.h:59
double exteff
Extinction Efficiency.
Definition DataClasses.h:52
SN_FIELD
The 3 mathematical fields that can be solved.
Definition DataClasses.h:83
@ SEEPAGE
Water transport.
Definition DataClasses.h:85
@ N_SN_FIELDS
Definition DataClasses.h:87
@ TEMPERATURE
Temperature (phase change and metamorphism)
Definition DataClasses.h:84
@ SETTLEMENT
Creep displacements.
Definition DataClasses.h:86
double nm
Wavelength.
Definition DataClasses.h:58
double ggg
Asymmetry Parameter.
Definition DataClasses.h:51
@ AIR
Air.
Definition DataClasses.h:96
@ WATER_PREF
Water in preferential flow.
Definition DataClasses.h:95
@ SOIL
Soil.
Definition DataClasses.h:92
@ ICE
Ice.
Definition DataClasses.h:93
@ N_COMPONENTS
Definition DataClasses.h:97
@ WATER
Water.
Definition DataClasses.h:94
Optical Properties of snow.
Definition DataClasses.h:50
Spectrum of incoming solar radiation.
Definition DataClasses.h:57
BoundCond is used to set Neumann boundary conditions.
Definition DataClasses.h:650
double qs
sensible heat
Definition DataClasses.h:659
double qg
geothermal heat flux or heat flux at lower boundary
Definition DataClasses.h:662
double ql
latent heat
Definition DataClasses.h:660
BoundCond()
Definition DataClasses.h:653
double lw_out
outgoing longwave radiation
Definition DataClasses.h:657
const std::string toString() const
Definition DataClasses.cc:316
double qr
rain energy
Definition DataClasses.h:661
double lw_net
net longwave radiation
Definition DataClasses.h:658
void reset()
Definition DataClasses.cc:326
Canopy data used as a pointer in the SnowStation structure.
Definition DataClasses.h:366
double wp_fraction
Wilting point, defined as a fraction of water content at field capacity (-)
Definition DataClasses.h:460
CanopyData()
Definition DataClasses.h:368
double wetfraction
fraction of canopy covered by interception [-]
Definition DataClasses.h:485
double intcapacity
maximum interception storage [mm]
Definition DataClasses.h:486
double rc
from canopy to canopy air
Definition DataClasses.h:479
double f3_gd
gd (Pa-1) parameter for canopy surface resistance response to vapour pressure:
Definition DataClasses.h:456
double sigftrunk
radiation interception cross section for trunk layer ()
Definition DataClasses.h:513
double latentcorr
Definition DataClasses.h:501
double LWnet_Trunks
net LW to trunks (>0 towards trunks)
Definition DataClasses.h:517
double rswrac
upward shortwave above canopy
Definition DataClasses.h:488
double rlnet
net longwave radiation
Definition DataClasses.h:497
double snowfac
snowfall above canopy
Definition DataClasses.h:510
double CondFluxTrunks
biomass heat storage flux towards Trunks (if 2L)
Definition DataClasses.h:516
friend std::istream & operator>>(std::istream &is, CanopyData &data)
Definition DataClasses.cc:964
double height
Definition DataClasses.h:475
double CondFluxCanop
biomass heat storage flux towards Canopy (if 1L) towards Leaves (if 2L). (>0 towards canopy)
Definition DataClasses.h:515
double can_alb_snow
Definition DataClasses.h:413
bool canopy_stabilitycorrection
Definition DataClasses.h:428
double krnt_lai
Definition DataClasses.h:414
double zdispl
Definition DataClasses.h:474
double totalalb
total albedo above canopy and snow/soil surface [-]
Definition DataClasses.h:484
double iswrbc
downward shortwave radiation below canopy
Definition DataClasses.h:491
double transp
Definition DataClasses.h:503
double can_rs_mult
1+CAN_RS_MULT = maximum factor to increase Cdata->rs below canopy
Definition DataClasses.h:447
double rswrbc
upward shortwave below canopy
Definition DataClasses.h:490
const std::string toString() const
Definition DataClasses.cc:1054
double rs
from subsurface to canpopy air
Definition DataClasses.h:480
double rlwrbc
upward longwave radiation BELOW canopy
Definition DataClasses.h:495
void multiplyFluxes(const double &factor)
If multiple fluxes have been summed over multiple time steps, the fluxes then need to be averaged by ...
Definition DataClasses.cc:845
double trunkalb
Definition DataClasses.h:424
double rsmin
TRANSPIRATION.
Definition DataClasses.h:450
double ra
from canopy air to reference height
Definition DataClasses.h:478
double SWnet_Trunks
net SW to trunks (>0 towards trunks)
Definition DataClasses.h:518
double rstransp
stomatal surface resistance for transpiration
Definition DataClasses.h:481
void reset(const bool &cumsum_mass)
Definition DataClasses.cc:805
double biomass_heat_capacity
Definition DataClasses.h:419
double HMTrunks
Trunks heat mass (J K-1 /m2 ground surface)
Definition DataClasses.h:523
double interception_timecoef
Definition DataClasses.h:408
double z0m
Definition DataClasses.h:472
double rsnet
net shortwave radiation
Definition DataClasses.h:496
double interception
Definition DataClasses.h:506
double lai
Definition DataClasses.h:471
double can_alb_dry
RADIATION BALANCE.
Definition DataClasses.h:411
double can_ch0
minimum heat exchange (Wm-2K-1) at zero wind
Definition DataClasses.h:445
double ilwrbc
downward longwave radiation BELOW canopy
Definition DataClasses.h:494
double BasalArea
basal area of trees on the stand
Definition DataClasses.h:521
double direct_throughfall
Definition DataClasses.h:476
double lai_frac_top_default
Definition DataClasses.h:421
double biomass_density
Definition DataClasses.h:420
double latent
Definition DataClasses.h:500
void initializeSurfaceExchangeData()
Function called to initialize the canopy "Surface" exchange data (to enable accumulated mass and ener...
Definition DataClasses.cc:1151
double HMLeaves
Leaves heat mass (J K-1 /m2 ground surface)
Definition DataClasses.h:522
double can_alb_wet
Definition DataClasses.h:412
void initialize(const SN_SNOWSOIL_DATA &SSdata, const bool useCanopyModel, const bool isAlpine3D)
Initialize all the CData elements value with values by default or with values read from the SNO file....
Definition DataClasses.cc:592
double int_cap_rain
Specific interception capacity for rain (I_LAI) (mm/LAI)
Definition DataClasses.h:403
double intevap
Definition DataClasses.h:504
double iswrac
downward shortwave radiation above canopy
Definition DataClasses.h:489
double roughmom_to_canopyheight_ratio
Ratio between canopy height and roughness length.
Definition DataClasses.h:430
double rainfac
rainfall above canopy
Definition DataClasses.h:511
double int_cap_snow
Definition DataClasses.h:401
double temp
temperature (K)
Definition DataClasses.h:467
double displ_to_canopyheight_ratio
As above for displacement height.
Definition DataClasses.h:432
double storage
intercepted water (mm or kg m-2)
Definition DataClasses.h:466
double h_wilt
Wilting point pressure head, when using Richards equation for soil.
Definition DataClasses.h:462
double rootdepth
Root depth, determining the soil layers influenced by root water uptake.
Definition DataClasses.h:458
double sigf
radiation transmissivity (1)
Definition DataClasses.h:468
double rlwrac
upward longwave radiation ABOVE canopy
Definition DataClasses.h:493
double liquidfraction
Definition DataClasses.h:512
double snowunload
Definition DataClasses.h:508
double roughheat_to_roughmom_ratio
(~=1, but Not allowed to be exactly 1)
Definition DataClasses.h:443
double sensible
Definition DataClasses.h:499
friend std::ostream & operator<<(std::ostream &os, const CanopyData &data)
Definition DataClasses.cc:874
double trunk_frac_height
Definition DataClasses.h:422
double ilwrac
downward longwave radiation ABOVE canopy
Definition DataClasses.h:492
double Ttrunk
trunk temperature (K)
Definition DataClasses.h:514
double forestfloor_alb
albedo of the forest floor
Definition DataClasses.h:520
double QStrunks
sensible heat flux from trunks (>0 if heat lost from trunk)
Definition DataClasses.h:519
double z0h
Definition DataClasses.h:473
double canopytemp_maxchange_perhour
Maximum allowed canopy temperature change (K hr-1)
Definition DataClasses.h:441
double ec
longwave emissivity (1)
Definition DataClasses.h:469
double raincrease_snow
Definition DataClasses.h:438
double can_diameter
Definition DataClasses.h:416
double canopyalb
canopy albedo [-]
Definition DataClasses.h:483
double throughfall
Definition DataClasses.h:507
double et
Definition DataClasses.h:425
a C. Fierz class ;-) To cumulate various mass fluxes over either hazard or time series time steps
Definition DataClasses.h:867
double precip
Definition DataClasses.h:874
double rain
Definition DataClasses.h:875
double dhs_corr
Definition DataClasses.h:876
Cumsum(const unsigned int nSlopes)
Definition DataClasses.h:870
double snow
Definition DataClasses.h:875
double mass_corr
Definition DataClasses.h:876
double drift
Definition DataClasses.h:875
double runoff
Definition DataClasses.h:875
std::vector< double > erosion
Definition DataClasses.h:877
Class of interpolated meteo data for the current calculation time step.
Definition DataClasses.h:887
std::vector< double > conc
Solute concentrations in precipitation.
Definition DataClasses.h:956
mio::Date date
Date of current meteo data.
Definition DataClasses.h:920
void setMeteoData(const mio::MeteoData &md, const double &prevailing_wind_dir)
Definition DataClasses.cc:3749
double adv_heat
Advective heat to inject in the soil (if ADVECTIVE_HEAT and related parameters set to true)
Definition DataClasses.h:952
void reset(const SnowpackConfig &i_cfg)
Definition DataClasses.cc:3438
void getFixedPositions(std::vector< double > &positions) const noexcept
Definition DataClasses.h:901
double vw
Wind velocity at snow station (m s-1)
Definition DataClasses.h:924
CurrentMeteo()
Definition DataClasses.cc:3385
std::vector< double > getFixedPositions() const noexcept
Definition DataClasses.h:902
double rime_hn
riming index of new snow
Definition DataClasses.h:958
void dataForCurrentTimeStep(SurfaceFluxes &surfFluxes, std::vector< SnowStation > &vecXdata, const Slope &slope, SnowpackConfig &cfg, mio::SunObject &sun, double &precip, const double &lw_in, const double &hs_a3hl6, double &tot_mass_in)
Definition DataClasses.cc:3893
const std::string toString() const
Definition DataClasses.cc:4199
double lwc_hn
liquid water content of new snow
Definition DataClasses.h:959
bool poor_ea
when ilwr has not been measured nor parametrized in good conditions, it could be redone later on
Definition DataClasses.h:961
double z0
The snow roughness length computed in SnowDrift and also used later for the MeteoHeat fluxes (m)
Definition DataClasses.h:931
double psum_ph
precipitation phase for the current timestep (between 0 and 1, 0 is fully solid while 1 is fully liqu...
Definition DataClasses.h:946
double hs_rate
The rate of change in snow depth (m h-1)
Definition DataClasses.h:950
double vw_max
Maximum wind velocity at snow station (m s-1)
Definition DataClasses.h:926
double iswr
Incoming SHORTWAVE radiation (W m-2)
Definition DataClasses.h:933
bool validMeteoData(const mio::MeteoData &md, const std::string &StationName, const unsigned int &nslopes) const
Definition DataClasses.cc:3696
void setMeasTempParameters(const mio::MeteoData &md)
Definition DataClasses.cc:3459
double rho_hn
Measured new snow density (kg m-3)
Definition DataClasses.h:957
friend std::ostream & operator<<(std::ostream &os, const CurrentMeteo &data)
Definition DataClasses.cc:4020
double ta
Air temperature (K)
Definition DataClasses.h:921
double vw_avg
Running mean of wind velocity at snow station (m s-1)
Definition DataClasses.h:925
double lw_net
Net longwave radiation (W m-2)
Definition DataClasses.h:940
double dw
Wind direction at snow station (deg)
Definition DataClasses.h:927
double tss_a24h
Snow surface temperature averaged over past 24 hours (K)
Definition DataClasses.h:943
static double getHS_last3hours(mio::IOManager &io, const mio::Date ¤t_date)
Definition DataClasses.cc:3825
friend std::istream & operator>>(std::istream &is, CurrentMeteo &data)
Definition DataClasses.cc:4107
double dw_drift
Wind direction of blowing and drifting snow (operational: wind ridge station)
Definition DataClasses.h:929
void editMeteoData(mio::MeteoData &md) const
Definition DataClasses.cc:3673
double vw_drift
Wind velocity for blowing and drifting snow (operational: wind ridge station)
Definition DataClasses.h:928
double psum
precipitation sum over the current timestep (mm)
Definition DataClasses.h:945
size_t getNumberMeasTemperatures() const noexcept
Returns the number of measured snow/soil temperatures stored in MeteoData.
Definition DataClasses.h:898
double rswr
Reflected SHORTWAVE radiation (W m-2) divide this value by the ALBEDO to get iswr.
Definition DataClasses.h:934
double diff
Diffuse radiation from the sky (W m-2)
Definition DataClasses.h:936
size_t getNumberFixedRates() const noexcept
Definition DataClasses.h:899
double ustar
The friction velocity (m s-1) computed in Meteo::MicroMet() and also used later for the MeteoHeat flu...
Definition DataClasses.h:930
std::vector< double > zv_ts
Positions of all measured snow or/and soil temperatures (m)
Definition DataClasses.h:955
size_t getMaxNumberMeasTemperatures() const noexcept
Definition DataClasses.h:900
void copySnowTemperatures(const mio::MeteoData &md, const unsigned int ¤t_slope)
Definition DataClasses.cc:3508
double psi_s
Stability correction for scalar heat fluxes.
Definition DataClasses.h:932
double psum_tech
Equivalent precipitation water sum for technical snow over the current timestep (mm)
Definition DataClasses.h:947
double hs_a3h
Snow depth averaged over 3 past hours.
Definition DataClasses.h:949
double rh_avg
Running mean of relative humidity (1)
Definition DataClasses.h:923
double tss_a12h
Snow surface temperature averaged over past 12 hours (K)
Definition DataClasses.h:942
double tss
Snow surface temperature (K)
Definition DataClasses.h:941
double ea
Atmospheric emissivity (1)
Definition DataClasses.h:939
double hs
The measured height of snow (m)
Definition DataClasses.h:948
void copySolutes(const mio::MeteoData &md, const size_t &i_number_of_solutes)
Definition DataClasses.cc:3524
double ts0
Bottom temperatures of snow/soil pack (K)
Definition DataClasses.h:944
std::vector< double > ts
Measured snow or/and soil temperatures (K)
Definition DataClasses.h:954
double rh
Relative humidity (% or 1)
Definition DataClasses.h:922
size_t getNumberFixedPositions() const noexcept
Definition DataClasses.h:903
double geo_heat
Geo heat flux (W/m^2), for the neumann lower boundary condition in the heat equation.
Definition DataClasses.h:951
double elev
Solar elevation to be used in Canopy.c (rad) => see also.
Definition DataClasses.h:938
double mAlbedo
Measured snow albedo.
Definition DataClasses.h:935
double dir_h
Horizontal direct radiation from the sky (W m-2)
Definition DataClasses.h:937
The physical properties of an individual element used in snow layers (one or multiple elements are co...
Definition DataClasses.h:212
double L
Original and present element thickness (m)
Definition DataClasses.h:253
std::vector< double > c
For example, specific heat of TEMPERATURE field (J kg-1 K-1)
Definition DataClasses.h:263
double salinity
bulk salinity (PSU, which is g/kg)
Definition DataClasses.h:279
double Qph_down
Heat source/sink due to phase changes for the heat equation (W/m^3), at the lower node of the element...
Definition DataClasses.h:303
double QIntmf
Apparent change in internal energy due to phase change (caused by difference in heat capacity of wate...
Definition DataClasses.h:283
double neck2VolumetricStrain() const
Relates the neck strain to the global volumetric strain.
Definition DataClasses.cc:1701
vanGenuchten VG
Van Genuchten Model for water retention.
Definition DataClasses.h:295
double soilFieldCapacity() const
Field Capacity Soil is dependent on grain properties. This nice formulation is based on some tedious ...
Definition DataClasses.cc:1589
double Te
mean element temperature (K)
Definition DataClasses.h:254
double Qmf
Subsurface Melting & Freezing Data: change of energy due to phase changes (melt-freeze)
Definition DataClasses.h:282
double CDot
Stress rate (Pa s-1), that is the overload change rate.
Definition DataClasses.h:289
double Eps_e
Definition DataClasses.h:284
unsigned short int getSnowType() const
Determine the type of snow First revisited by Fierz and Bellaire 2006 and 2007 TODO needs to be adap...
Definition DataClasses.cc:1719
double S_dr
Stability Index based on deformation rate (Direct Action Avalanching)
Definition DataClasses.h:293
double soilRelativeHumidity() const
Relative humidity in soil.
Definition DataClasses.cc:1626
double coldContent() const
Computes cold content of an element, taking meltfreeze_tk as reference.
Definition DataClasses.cc:1491
ElementData & operator=(const ElementData &)=default
Assignement operator.
double PrefFlowArea
Preferential flow path relative area (-)
Definition DataClasses.h:297
double Eps_v
Total element strain (GREEN'S strains – TOTAL LAGRANGIAN FORMULATION): Eps_e is elastic and Eps_v is ...
Definition DataClasses.h:284
double res_wat_cont
Residual water content.
Definition DataClasses.h:281
double extinction() const
Density dependent extinction coefficient -> Michi's magic trick... out of his magic hat.
Definition DataClasses.cc:1530
unsigned short int type
grain class
Definition DataClasses.h:277
Young_Modulus
This enum provides names for possible Young's modulus calculations.
Definition DataClasses.h:215
@ Pow
another power law
Definition DataClasses.h:217
@ Exp
exponential law
Definition DataClasses.h:218
@ Sigrist
Sigrist, 2006.
Definition DataClasses.h:216
double sw_abs
total absorbed shortwave radiation by the element (W m-2)
Definition DataClasses.h:268
double theta_i_reservoir_cumul
Volumetric ice content in cumulated ice reservoir (1)
Definition DataClasses.h:300
double M
the total mass of the element (kg m-2)
Definition DataClasses.h:267
double vapTrans_fluxDiff
vapor dissusion flux in the case of vapor transport (W/m^2/s)
Definition DataClasses.h:313
double vapTrans_underSaturationDegree
the degree of undersaturation, (rhov-rohv_sat)/rhov_sat (-)
Definition DataClasses.h:316
double E
Young's modulus of elasticity (Pa)
Definition DataClasses.h:286
double vapTrans_snowDenChangeRate
snow density change rate in the case of vapor transport (kg/m^3/s)
Definition DataClasses.h:314
double metamo
keep track of metamorphism
Definition DataClasses.h:278
double lwc_source
Source/sink term for Richards equation (m^3/m^3 / timestep)
Definition DataClasses.h:296
double rb
grain bond radius (mm)
Definition DataClasses.h:274
friend std::ostream & operator<<(std::ostream &os, const ElementData &data)
Definition DataClasses.cc:1216
size_t mk
grain marker (history dependent)
Definition DataClasses.h:276
unsigned short int ID
Element ID used to track elements.
Definition DataClasses.h:308
double h
capillary pressure head (m)
Definition DataClasses.h:258
std::vector< double > k
For example, heat conductivity of TEMPERATURE field (W m-1 K-1)
Definition DataClasses.h:260
void snowType()
Definition DataClasses.cc:1707
double rg
grain radius (mm)
Definition DataClasses.h:270
double rhov
vapor density...(kg/m^3)
Definition DataClasses.h:311
mio::Array2D< double > conc
Concentration for chemical constituents in (kg m-3)
Definition DataClasses.h:259
double dsm
Dry snow metamorphism factor.
Definition DataClasses.h:305
void heatCapacity()
Computes heat capacity of an element based on volumetric contents.
Definition DataClasses.cc:1474
double hard
Parameterized hand hardness (1)
Definition DataClasses.h:292
double gradT
temperature gradient over element (K m-1)
Definition DataClasses.h:255
double meltfreeze_tk
melt/freeze temperature of layer (principally initialized as 0 degC, but enables possibility for free...
Definition DataClasses.h:256
static double getYoungModule(const double &rho_slab, const Young_Modulus &model)
Definition DataClasses.cc:1385
double theta_w_transfer
Volumetric content of water transferred from preferential flow to matrix domain (1)
Definition DataClasses.h:298
double theta_i_reservoir
Volumetric ice content in ice reservoir (1)
Definition DataClasses.h:299
std::vector< double > theta
volumetric contents: SOIL, ICE, WATER, WATER_PREF, AIR (1)
Definition DataClasses.h:257
mio::Date depositionDate
Date of deposition.
Definition DataClasses.h:252
friend std::istream & operator>>(std::istream &is, ElementData &data)
Definition DataClasses.cc:1298
double s_strength
Parameterized snow shear strength (kPa)
Definition DataClasses.h:291
double Qph_up
Heat source/sink due to phase changes for the heat equation (W/m^3), at the upper node of the element...
Definition DataClasses.h:302
double S
Total Element Stress (Pa), S being the energy conjugate stress.
Definition DataClasses.h:287
double ps2rb
proportion of grain bond growth due to pressure sintering (1)
Definition DataClasses.h:290
double C
Total Element Stress (Pa), C being the real or the Cauchy stress, which is output.
Definition DataClasses.h:288
double Eps_vDot
Total Strain Rate, elastic and viscous, respectively (s-1) (Simply, Eps/sn_dt)
Definition DataClasses.h:285
double Eps_Dot
Definition DataClasses.h:285
double N3
grain Coordination number (1)
Definition DataClasses.h:275
double vapTrans_cumulativeDenChange
cumulative density change in the case of vapor transport (kg/m^3)
Definition DataClasses.h:315
double Eps
Definition DataClasses.h:284
double neckStressEnhancement() const
Computes the enhancement of hydrostatically applied stress (overburden) in the necks (or bonds)
Definition DataClasses.cc:1661
double dth_w
Subsurface Melting & Freezing Data: change of water content.
Definition DataClasses.h:280
double Rho
mean element density (or BULK density; kg m-3), that is, rho=M/V=sum( theta(i)*rho(i) )
Definition DataClasses.h:266
double SlopeParFlux
Slope parallel flux (m^3/m^3 * m / timestep)
Definition DataClasses.h:301
double neckLength() const
Computes the neck (or bond) length (mm)
Definition DataClasses.cc:1690
void updDensity()
Updates element density.
Definition DataClasses.cc:1500
double rime
Rime index.
Definition DataClasses.h:306
double L0
Definition DataClasses.h:253
double ogs
optical equivalent grain size (mm)
Definition DataClasses.h:273
bool checkVolContent()
Check volumetric content.
Definition DataClasses.cc:1413
void opticalEquivalentGrainSize()
Opical equivalent grain size CROCUS implementation as described in Vionnet et al.,...
Definition DataClasses.cc:1516
static const unsigned short int noID
Definition DataClasses.h:309
void snowResidualWaterContent()
Definition DataClasses.cc:1538
std::vector< double > soil
Contains the heat conductivity, capacity and dry density of the soil (solid, non-ice) component phase...
Definition DataClasses.h:265
double dd
snow dendricity: 0 = none, 1 = newsnow
Definition DataClasses.h:271
double snowElasticity() const
SNOW ELASTICITY : This important routine was programmed by Marc Christen, who took it directly from M...
Definition DataClasses.cc:1646
double crit_cut_length
Critical cut length (m)
Definition DataClasses.h:294
const std::string toString() const
Definition DataClasses.cc:1873
double sp
sphericity: 1 = round, 0 = angular
Definition DataClasses.h:272
double concaveNeckRadius() const
A non-generic function to compute the concave neck radius (mm). It is assumed that the neck is bound...
Definition DataClasses.cc:1675
double Qmm
Heat source/sink due to phase changes in the case of vapor transport (W/m^3)
Definition DataClasses.h:312
double dEps
Definition DataClasses.h:284
Parameters of the different layers of the snowpack.
Definition DataClasses.h:113
double sp
Micro-structure : Sphericity.
Definition DataClasses.h:140
double rg
Micro-structure : Grainsize in mm.
Definition DataClasses.h:139
double phiIceReservoir
Volumetric ice reservoir content in %.
Definition DataClasses.h:127
double salinity
bulk salinity (g/kg)
Definition DataClasses.h:147
double phiVoids
Volumetric void content in %.
Definition DataClasses.h:131
double phiSoil
Volumetric soil content in %.
Definition DataClasses.h:125
double phiIce
Volumetric ice content in %.
Definition DataClasses.h:126
double dsm
dry snow metamorphism factor
Definition DataClasses.h:149
double h
capillary pressure head (m)
Definition DataClasses.h:148
std::vector< double > cVoids
Solute concentrations in Air.
Definition DataClasses.h:135
double CDot
Stress rate (Pa s-1), that is the LAST overload change rate.
Definition DataClasses.h:145
mio::Date depositionDate
Date of deposition (mainly used for snow layers)
Definition DataClasses.h:121
std::vector< double > cWater
Solute concentrations in Water.
Definition DataClasses.h:134
double phiIceReservoirCumul
Volumetric cumulated ice reservoir content in %.
Definition DataClasses.h:128
std::vector< double > cIce
Solute concentrations in Ice.
Definition DataClasses.h:133
std::vector< double > cSoil
Solute concentrations in Soil.
Definition DataClasses.h:132
double phiWaterPref
Volumetric preferential water content in %.
Definition DataClasses.h:130
double metamo
keep track of metamorphism
Definition DataClasses.h:146
const std::string toString() const
Definition DataClasses.cc:4468
friend std::istream & operator>>(std::istream &is, LayerData &data)
Definition DataClasses.cc:4416
double rb
Micro-structure : Bond Radius in mm.
Definition DataClasses.h:142
double tl
Temperature at the top of the layer in K.
Definition DataClasses.h:124
double hl
The thickness of the layer in m.
Definition DataClasses.h:122
double hr
Surface hoar Mass in kg m-2.
Definition DataClasses.h:144
double SoilC
Heat Capacity of soil.
Definition DataClasses.h:138
double SoilK
Conductivity of soil.
Definition DataClasses.h:137
friend std::ostream & operator<<(std::ostream &os, const LayerData &data)
Definition DataClasses.cc:4368
double SoilRho
Density of soil in kg m-3.
Definition DataClasses.h:136
LayerData()
Definition DataClasses.cc:4360
double phiWater
Volumetric water content in %.
Definition DataClasses.h:129
double dd
Micro-structure : Dendricity.
Definition DataClasses.h:141
unsigned short int mk
Micro-structure : Marker.
Definition DataClasses.h:143
size_t ne
Number of finite elements in the the layer (hl/ne defines elm. size)
Definition DataClasses.h:123
Definition DataClasses.h:835
double backup_days_between
Interval (days) between Xdata backups.
Definition DataClasses.h:848
double tsdaysbetween
Interval (days) between time series dumps.
Definition DataClasses.h:844
bool sdbDump
Dump to data base if required in operational mode.
Definition DataClasses.h:859
bool HzDump
Calculation of hazard information will be performed.
Definition DataClasses.h:856
void reset()
Reset all fields not read from the config file to zero or false.
Definition DataClasses.cc:4607
bool resFirstDump
Flag to dump initial state of snowpack.
Definition DataClasses.h:860
double profdaysbetween
Interval (days) between profile dumps.
Definition DataClasses.h:846
double calculation_step_length
Length of each calculation step (minutes)
Definition DataClasses.h:849
bool PrDump
Flag for profile dump.
Definition DataClasses.h:857
double sn_dt
calculation step length in seconds
Definition DataClasses.h:850
bool XdataDump
Backup of Xdata will be performed.
Definition DataClasses.h:858
size_t nStep
Time step number.
Definition DataClasses.h:852
bool TsDump
Flag for time series dump.
Definition DataClasses.h:855
double tsstart
Start time for time series dump (Julian)
Definition DataClasses.h:843
size_t nAvg
Number of calculation time steps to average fluxes etc.
Definition DataClasses.h:853
double first_backup
Start time for first Xdata backup (Julian)
Definition DataClasses.h:847
void getOutputControl(const mio::Date &step, const mio::Date &sno_step)
Determine which outputs need to be done for the current time step.
Definition DataClasses.cc:4580
double profstart
Start time for profile dump (Julian)
Definition DataClasses.h:845
size_t HzStep
Hazard step number (should be half of nStep in operational mode)
Definition DataClasses.h:854
NODAL DATA used as a pointer in the SnowStation structure.
Definition DataClasses.h:320
double udot
downward creep velocity in m s-1
Definition DataClasses.h:332
double rhov
nodal vapor density in kg/m^3
Definition DataClasses.h:348
double Sigdsm
Definition DataClasses.h:343
double S_n
Stability Index for natural avalanches.
Definition DataClasses.h:334
double dsm
Dry snow metamorphism factor.
Definition DataClasses.h:341
double S_s
Stability Index for skier triggered avalanches.
Definition DataClasses.h:335
double hoar
Mass of surface hoar collected while node was exposed to surface.
Definition DataClasses.h:338
friend std::ostream & operator<<(std::ostream &os, const NodeData &data)
Definition DataClasses.cc:1896
NodeData()
Definition DataClasses.h:322
double f
reaction or unbalanced forces (CREEP)
Definition DataClasses.h:331
double rta
Relative Threshold Sum apprach.
Definition DataClasses.h:337
double u
creep displacements in m
Definition DataClasses.h:330
double ssi
Structural Stability Index.
Definition DataClasses.h:336
double T
nodal temperature in K
Definition DataClasses.h:333
const std::string toString() const
Definition DataClasses.cc:1938
friend std::istream & operator>>(std::istream &is, NodeData &data)
Definition DataClasses.cc:1917
double water_flux
Water flowing through the node (kg/m2). Positive values denote downward fluxes.
Definition DataClasses.h:346
double S_dsm
Definition DataClasses.h:342
double rime
Definition DataClasses.h:344
double z
nodal height from ground in m
Definition DataClasses.h:329
class to collect the information about the current simulation (version, date)
Definition DataClasses.h:787
const mio::Date computation_date
Date of computation.
Definition DataClasses.h:795
const double version_num
SNOWPACK version formatted as a number.
Definition DataClasses.h:794
const std::string version
SNOWPACK version.
Definition DataClasses.h:793
const std::string hostname
hostname of the computer running the simulation
Definition DataClasses.h:798
RunInfo()
Definition DataClasses.cc:61
const std::string compilation_date
Date of compilation.
Definition DataClasses.h:796
const std::string user
logname of the user running the simulation
Definition DataClasses.h:797
RunInfo & operator=(const RunInfo &)
Definition DataClasses.h:791
const std::string history
History string, like in ACDD, combining several of the information below.
Definition DataClasses.h:799
SN_SNOWSOIL_DATA includes all important station parameters as well as LayerData.
Definition DataClasses.h:157
const std::string toString() const
Definition DataClasses.cc:4297
double TimeCountDeltaHS
Definition DataClasses.h:190
double Canopy_alb_dry
Definition DataClasses.h:196
mio::Date profileDate
Date of profile.
Definition DataClasses.h:176
double Height
Total height of soil-snow column in m (sum of the layer heights)
Definition DataClasses.h:178
size_t nN
Total number of FE nodes after loading.
Definition DataClasses.h:177
int ErosionLevel
Erosion Level in operational mode (flat field virtual erosion)
Definition DataClasses.h:189
double Canopy_Direct_Throughfall
Direct throughfall [fraction of precipitation].
Definition DataClasses.h:188
mio::StationData meta
Station meta data.
Definition DataClasses.h:175
friend std::ostream & operator<<(std::ostream &os, const SN_SNOWSOIL_DATA &data)
Definition DataClasses.cc:4231
double Canopy_alb_wet
Definition DataClasses.h:197
double Canopy_BasalArea
OPTIONAL PARAMETERS, a warning will be thrown in CANOPY::Initialize if no value is provided.
Definition DataClasses.h:192
double Emissivity_soil
OPTIONAL PARAMETERS, if not provided Constants::emissivity_soil will be used.
Definition DataClasses.h:200
size_t nLayers
Total number of soil and snow layers at loading.
Definition DataClasses.h:179
double Canopy_LAI
Canopy Leaf Area Index in m2 m-2.
Definition DataClasses.h:187
double Canopy_diameter
Average canopy (tree) diameter [m], parameter in the new radiation transfer model.
Definition DataClasses.h:193
double SoilAlb
Soil albedo, default 0.2.
Definition DataClasses.h:184
double Canopy_Height
Canopy Height in m.
Definition DataClasses.h:186
SN_SNOWSOIL_DATA()
Definition DataClasses.h:159
std::vector< LayerData > Ldata
contains all the information required to construct the Xdata
Definition DataClasses.h:180
double Canopy_int_cap_snow
Specific interception capacity for rain (I_LAI) (mm/LAI)
Definition DataClasses.h:195
double BareSoil_z0
Bare soil roughness in m, default 0.02 m.
Definition DataClasses.h:185
double Canopy_lai_frac_top_default
fraction of total LAI that is attributed to the uppermost layer. Here calibrated for Alptal.
Definition DataClasses.h:194
double Canopy_alb_snow
Definition DataClasses.h:198
friend std::istream & operator>>(std::istream &is, SN_SNOWSOIL_DATA &data)
Definition DataClasses.cc:4263
double Albedo
REQUIRED PARAMETERS, an error will be thrown at reading (SnowpackIO) if no parameter are provided.
Definition DataClasses.h:183
double HS_last
Definition DataClasses.h:181
Slope a C. Fierz class ;-) to handle the multiple expositions in Snowpack standalone.
Definition DataClasses.h:812
unsigned int luv
Definition DataClasses.h:822
bool south
Definition DataClasses.h:824
bool snow_redistribution
Definition DataClasses.h:826
unsigned int mainStation
main station, flat field or slope
Definition DataClasses.h:819
unsigned int getSectorDir(const double &dir_or_expo) const
Determine either direction of blowing wind or slope exposition. NOTE that station slope....
Definition DataClasses.cc:4511
bool snow_erosion
Definition DataClasses.h:825
bool luvDriftIndex
Definition DataClasses.h:826
void setSlope(const unsigned int slope_sequence, std::vector< SnowStation > &vecXdata, double &wind_dir)
Set slope variables.
Definition DataClasses.cc:4527
unsigned int nSlopes
Definition DataClasses.h:818
bool north
Definition DataClasses.h:824
unsigned int lee
Definition DataClasses.h:823
unsigned int first
first virtual slope station in computing sequence
Definition DataClasses.h:821
bool mainStationDriftIndex
Definition DataClasses.h:825
double prevailing_wind_dir
Definition DataClasses.h:817
unsigned int sector
main station (0) or current slope sector (1:nSlopes)
Definition DataClasses.h:820
Defines structure for snow profile layers.
Definition DataClasses.h:748
double theta_w
0 to 1, volume fraction of water (-)
Definition DataClasses.h:768
double height
Height of snow or snow depth; 0 to 1000 (cm)
Definition DataClasses.h:762
double theta_a
0 to 1, volume fraction of air (-)
Definition DataClasses.h:769
void average(const double &w1, const double &w2, const SnowProfileLayer &Pdata)
Determines the averaged quantities of the current layer with another layer.
Definition DataClasses.cc:292
double T
-50 to 50, snow temperature at top of layer (degC)
Definition DataClasses.h:764
double hard
0. to 5. (1)
Definition DataClasses.h:778
mio::Date profileDate
Date of profile.
Definition DataClasses.h:756
mio::Date depositionDate
Date of deposition (mainly used for snow layers)
Definition DataClasses.h:761
unsigned short int marker
0 to 999 (1)
Definition DataClasses.h:776
SnowProfileLayer()
Definition DataClasses.cc:175
static std::vector< SnowProfileLayer > generateProfile(const mio::Date &dateOfProfile, const SnowStation &Xdata, const double hoar_density_surf, const double hoar_min_size_surf)
Generates a snow profile from snow station data (1 element = 1 layer)
Definition DataClasses.cc:247
double v_strain_rate
0 to 1.0e-5, viscous strain rate (s-1)
Definition DataClasses.h:766
std::string stationname
Definition DataClasses.h:757
unsigned char loc_for_wind
Definition DataClasses.h:759
double coordin_num
0 to 10 (1)
Definition DataClasses.h:775
unsigned char loc_for_snow
Definition DataClasses.h:758
double ogs
0 to 100, optical equivalent grain size (mm)
Definition DataClasses.h:774
double rho
0 to 1000 (kg m-3)
Definition DataClasses.h:763
short unsigned int type
0 to 999 (1)
Definition DataClasses.h:777
double sphericity
0 to 1 (1)
Definition DataClasses.h:773
double grain_size
0 to 100 (mm)
Definition DataClasses.h:770
double gradT
-1000 to 1000, temperature gradient across layer (K m-1)
Definition DataClasses.h:765
double dendricity
0 to 1 (1)
Definition DataClasses.h:772
double bond_size
0 to 100 (mm)
Definition DataClasses.h:771
double theta_i
0 to 1, volume fraction of ice (-)
Definition DataClasses.h:767
Station data including all information on snowpack layers (elements and nodes) and on canopy.
Definition DataClasses.h:533
void combineElements(const size_t &number_top_elements, const bool &reduce_n_elements, const size_t &cond, const double &comb_thresh_l)
If more than NUMBER_TOP_ELEMENTS snow elements exist, attempt to reduce their number in the FEM mesh,...
Definition DataClasses.cc:2346
double findMarkedReferenceLayer() const
returns the height of a marked reference layer inside the model domain Searches for the layer that is...
Definition DataClasses.cc:3158
static const double comb_thresh_sp
Sphericity (1)
Definition DataClasses.h:632
size_t SoilNode
The top soil node, 0 in case of SNP_SOIL == 0.
Definition DataClasses.h:593
void deflateInflate(const CurrentMeteo &Mdata, double &dhs_corr, double &mass_corr, const bool &prn_check)
Deflates or inflates the snowpack for warning service purposes.
Definition DataClasses.cc:2984
size_t getNumberOfNodes() const
Definition DataClasses.cc:2298
bool hasSoilLayers() const
Definition DataClasses.cc:2319
double z_S_n
Depth of Minimum S_n.
Definition DataClasses.h:612
void initialize(const SN_SNOWSOIL_DATA &SSdata, const size_t &i_sector)
This routine initializes the snow cover structure which contains all information about a station incl...
Definition DataClasses.cc:2459
size_t getNumberOfElements() const
Definition DataClasses.cc:2293
char S_class1
Stability class based on hand hardness, grain class ...
Definition DataClasses.h:607
static const double thresh_moist_soil
Definition DataClasses.h:633
static void mergeElements(ElementData &Edata0, const ElementData &Edata1, const bool &merge, const bool &topElement, const bool &VapourTransport=false)
Merging two elements.
Definition DataClasses.cc:2828
friend std::istream & operator>>(std::istream &is, SnowStation &data)
Definition DataClasses.cc:3254
double S_n
Minimum natural stability index.
Definition DataClasses.h:611
double S_s
Minimum skier stability index sk38 (Sk38)
Definition DataClasses.h:613
double hn
Depth of new snow to be used on slopes.
Definition DataClasses.h:602
mio::StationData meta
Station meta data.
Definition DataClasses.h:581
size_t find_tag(const size_t &tag) const
Find element with corresponding tag or return IOUtils::npos if not found.
Definition DataClasses.cc:2308
double SoilAlb
Soil albedo.
Definition DataClasses.h:590
double rime_hn
rime of new snow to be used on slopes
Definition DataClasses.h:604
double ErosionMass
Eroded mass either real or virtually (storage if less than one element)
Definition DataClasses.h:606
static const size_t number_top_elements
Number of top elements left untouched by the join functions.
Definition DataClasses.h:634
SeaIce * Seaice
Pointer to sea ice class.
Definition DataClasses.h:586
double S_d
Minimum deformation rate stability index.
Definition DataClasses.h:609
double swc_sum_soil
Total solid water in soil.
Definition DataClasses.h:601
double dIntEnergy
Internal energy change of snowpack (J m-2)
Definition DataClasses.h:624
void * Kt
Pointer to pseudo-conductivity and stiffnes matrix.
Definition DataClasses.h:621
double cos_sl
Cosinus of slope angle, initialized once!
Definition DataClasses.h:582
void resize(const size_t &number_of_elements)
Reallocate element and node data Edata and Ndata as well as nElems and nNodes are reallocated or res...
Definition DataClasses.cc:2273
double z_S_4
Depth of Minimum S_4.
Definition DataClasses.h:616
double rho_hn
Density of new snow to be used on slopes.
Definition DataClasses.h:603
~SnowStation()
Definition DataClasses.cc:2070
double z_S_s
Depth of Minimum S_s.
Definition DataClasses.h:614
double meltFreezeEnergy
Melt freeze part of internal energy change of snowpack (J m-2)
Definition DataClasses.h:626
double getTotalLateralFlowSoil() const
Computes the total lateral flow in soil (kg / m2)
Definition DataClasses.cc:2245
double lwc_sum_soil
Total liquid water in soil.
Definition DataClasses.h:600
double ColdContent
Cold content of snowpack (J m-2)
Definition DataClasses.h:622
double S_4
placeholder - currently Minimum structural stability index (SSI)
Definition DataClasses.h:615
bool windward
True for windward (luv) slope.
Definition DataClasses.h:629
double S_5
placeholder
Definition DataClasses.h:617
void splitElement(const size_t &e)
Split the element provided as first argument.
Definition DataClasses.cc:2742
double ColdContentSoil
Cold content of soil (J m-2)
Definition DataClasses.h:623
double getModelledTemperature(const double &z) const
Returns modelled internal snow or/and soil temperature (instantaneous value; degC),...
Definition DataClasses.cc:2212
double mass_sum
Total mass summing mass of snow elements.
Definition DataClasses.h:597
double swe
Total mass summing snow water equivalent of elements.
Definition DataClasses.h:598
static const double comb_thresh_rg
Grain radius (mm)
Definition DataClasses.h:632
bool allow_inflate
Definition DataClasses.h:636
void compSnowpackMasses()
Computes the actual total masses of the snowpack (kg m-2)
Definition DataClasses.cc:2093
void reduceNumberOfElements(const size_t &rnE)
Remove the upper "marked" element of two (snow only) .
Definition DataClasses.cc:2392
double z_S_d
Depth of Minimum S_d.
Definition DataClasses.h:610
std::vector< NodeData > Ndata
pointer to nodal data array (e.g. T, z, u, etc..)
Definition DataClasses.h:619
double ReSolver_dt
Last used RE time step in the previous SNOWPACK time step.
Definition DataClasses.h:628
static unsigned short number_of_solutes
The model treats that number of solutes.
Definition DataClasses.h:635
double BareSoil_z0
Bare soil roughness in m.
Definition DataClasses.h:592
static const double comb_thresh_dd
Dendricity (1)
Definition DataClasses.h:632
void reset_water_fluxes()
Definition DataClasses.cc:2324
double mH
The MEASURED height, including soil depth if SNP_SOIL == 1.
Definition DataClasses.h:596
SnowStation & operator=(const SnowStation &)
Assignement operator.
Definition DataClasses.cc:2004
std::vector< ElementData > Edata
pointer to element data array (e.g. Te, L, Rho, etc..)
Definition DataClasses.h:620
double Albedo
Snow albedo used by the model.
Definition DataClasses.h:589
double dIntEnergySoil
Internal energy change of soil (J m-2)
Definition DataClasses.h:625
double z_S_5
Depth of Minimum S_5.
Definition DataClasses.h:618
friend std::ostream & operator<<(std::ostream &os, const SnowStation &data)
Definition DataClasses.cc:3171
double getTotalLateralFlowSnow() const
Computes the total lateral flow in snow (kg / m2)
Definition DataClasses.cc:2230
bool useCanopyModel
Definition DataClasses.h:636
static const double comb_thresh_water
Water content (1)
Definition DataClasses.h:631
size_t sector
current slope sector of width 360./max(1, nSlopes-1)
Definition DataClasses.h:583
double Ground
The ground height – meaning the height of the top soil node.
Definition DataClasses.h:594
const std::string toString() const
Definition DataClasses.cc:3342
void resetSlopeParFlux()
Reset lateral flow.
Definition DataClasses.cc:2260
static const double comb_thresh_ice
Volumetric ice content (1), i.e., about 46 kg m-3.
Definition DataClasses.h:631
double averageFromTop(const double &averagingDepth, const std::function< double(const ElementData &)> &Elementproperty) const
Extracts a weighted average of a snow bulk property from the top down to a given depth.
Definition DataClasses.cc:2174
bool needDeflateInflate(const double &sn_dt)
Check if deflateInfate should be called.
Definition DataClasses.cc:2932
char S_class2
Stability class based on hand hardness, grain class ...
Definition DataClasses.h:608
double getLiquidWaterIndex() const
Computes the liquid water index defined as the ratio of total liquid water content (in mm w....
Definition DataClasses.cc:2200
double forcedErosion(const double hs)
Forced erosion of a missed event.
Definition DataClasses.cc:3092
void compSoilInternalEnergyChange(const double &sn_dt)
Computes the internal energy change of the soil during one computation time step (J m-2)
Definition DataClasses.cc:2134
bool isGlacier(const bool &hydro=false) const
returns if a snow profile can be considered as a glacier. Practically, the hydrological criteria is t...
Definition DataClasses.cc:3117
double SoilEmissivity
Soil emissivity.
Definition DataClasses.h:591
double TimeCountDeltaHS
Time counter tracking erroneous settlement in operational mode.
Definition DataClasses.h:630
double lwc_sum
Total liquid water in snowpack.
Definition DataClasses.h:599
static const double comb_thresh_l_ratio
The default ratio between height_new_elem and comb_thresh_l, in case comb_thresh_l is not explicitly ...
Definition DataClasses.h:631
double cH
The CALCULATED height, including soil depth if SNP_SOIL == 1.
Definition DataClasses.h:595
double meltFreezeEnergySoil
Melt freeze part of internal energy change of soil (J m-2)
Definition DataClasses.h:627
double pAlbedo
Parameterized snow albedo.
Definition DataClasses.h:588
void splitElements(const double &max_element_length, const double &comb_thresh_l)
Split elements when they are near the top of the snowpack, when REDUCE_N_ELEMENTS is used.
Definition DataClasses.cc:2790
size_t ErosionLevel
Element where snow erosion stopped previously for the drift index.
Definition DataClasses.h:605
static bool combineCondition(const ElementData &Edata0, const ElementData &Edata1, const double &depth, const bool &reduce_n_elements, const double &comb_thresh_l)
Boolean routine to check whether two snow elements can be combined.
Definition DataClasses.cc:2691
void compSnowpackInternalEnergyChange(const double &sn_dt)
Computes the internal energy change of the snowpack during one computation time step (J m-2)
Definition DataClasses.cc:2112
CanopyData Cdata
Pointer to canopy data.
Definition DataClasses.h:585
static const double thresh_moist_snow
Snow elements with a LWC above this threshold are considered at least to be moist.
Definition DataClasses.h:633
Definition SnowpackConfig.h:28
The surface fluxes data as computed by Snowpack.
Definition DataClasses.h:671
SN_MASS_CHANGES
The different types of mass fluxes: Mass fluxes in kg m-2 Rates in kg m-2 h-1 (MS_HNW,...
Definition DataClasses.h:678
@ MS_WATER
The total amount of water in the snowpack at the present time.
Definition DataClasses.h:681
@ MS_SUBLIMATION
The mass loss or gain of the top element due to snow (ice) sublimating.
Definition DataClasses.h:688
@ MS_TOTALMASS
This of course is the total mass of the snowpack at the present time.
Definition DataClasses.h:679
@ MS_HNW
Solid precipitation rate.
Definition DataClasses.h:684
@ MS_WIND
Mass loss rate due to wind erosion.
Definition DataClasses.h:686
@ MS_FLOODING
The mass gain due to adding ocean water to snow- seaice by flodding process.
Definition DataClasses.h:692
@ MS_ICE_SOIL
The total amount of ice in the soil at the present time.
Definition DataClasses.h:683
@ MS_SWE
This too, of course, but summing rho*L.
Definition DataClasses.h:680
@ MS_SOIL_RUNOFF
Equivalent to MS_SNOWPACK_RUNOFF but at bottom soil node.
Definition DataClasses.h:691
@ MS_SNOWPACK_RUNOFF
The mass loss of snowpack from snow melt due to water transport (virtual lysimeter)
Definition DataClasses.h:689
@ MS_WATER_SOIL
The total amount of water in the soil at the present time.
Definition DataClasses.h:682
@ MS_EVAPORATION
The mass loss or gain of the top element due to water evaporating.
Definition DataClasses.h:687
@ N_MASS_CHANGES
Total number of different mass change types.
Definition DataClasses.h:694
@ MS_RAIN
Rain rate.
Definition DataClasses.h:685
@ MS_SURFACE_MASS_FLUX
The total mass loss of snowpack due to water transport (virtual lysimeter)
Definition DataClasses.h:690
@ MS_ICEBASE_MELTING_FREEZING
The mass gain/loss of the ice base due to melting-freezing.
Definition DataClasses.h:693
std::vector< double > load
Total load (kg m-2) in water runoff from solutes like nitrate.
Definition DataClasses.h:738
friend std::ostream & operator<<(std::ostream &os, const SurfaceFluxes &data)
Definition DataClasses.cc:498
double lw_in
Energy fluxes: Energy change of snowpack in kJ m-2 (dIntEnergy) Fluxes in W m-2.
Definition DataClasses.h:713
double sw_dir
incoming direct shortwave radiation; on slopes: projected
Definition DataClasses.h:726
double sw_hor
incoming global shortwave radiation on horizontal surface
Definition DataClasses.h:722
double sw_diff
incoming diffuse shortwave radiation
Definition DataClasses.h:727
double mAlbedo
measured Albedo (used for OUTPUT only)
Definition DataClasses.h:729
double cRho_hn
Computed new snow density (kg m-3)
Definition DataClasses.h:740
SurfaceFluxes()
Definition DataClasses.cc:336
friend std::istream & operator>>(std::istream &is, SurfaceFluxes &data)
Definition DataClasses.cc:538
void collectSurfaceFluxes(const BoundCond &Bdata, SnowStation &Xdata, const CurrentMeteo &Mdata)
Assign surface data from SnowStation and BoundCond to SurfaceFluxes.
Definition DataClasses.cc:405
double qr
rain energy
Definition DataClasses.h:719
std::vector< double > mass
Total mass of snowpack PLUS different amounts of total mass change, sublimation, runoff,...
Definition DataClasses.h:737
double lw_net
net longwave radiation
Definition DataClasses.h:715
double qg
geothermal heat flux or heat flux at lower boundary
Definition DataClasses.h:720
double sw_in
incoming global shortwave radiation; on slopes: projected
Definition DataClasses.h:723
void reset(const bool &cumsum_mass)
Definition DataClasses.cc:341
double drift
Other surface data:
Definition DataClasses.h:736
double pAlbedo
parameterized Albedo (used for OUTPUT only)
Definition DataClasses.h:728
double lw_out
outgoing longwave radiation
Definition DataClasses.h:714
double meltFreezeEnergySoil
Melt freeze part of internal energy change in J m-2 in soil (used for OUTPUT only)
Definition DataClasses.h:733
double hoar
mass of surface hoar formed or sublimated
Definition DataClasses.h:718
double dIntEnergySoil
Internal energy change in J m-2 in soil (used for OUTPUT only)
Definition DataClasses.h:731
double dIntEnergy
Internal energy change in J m-2 in snowpack (used for OUTPUT only)
Definition DataClasses.h:730
double sw_out
reflected shortwave radiation
Definition DataClasses.h:724
double qw
net shortwave radiation at the surface (absorbed within the snowpack)
Definition DataClasses.h:725
const std::string toString() const
Definition DataClasses.cc:4331
void multiplyFluxes(const double &factor)
If multiple surface fluxes have been summed over multiple time steps, the fluxes then need to be aver...
Definition DataClasses.cc:476
void compSnowSoilHeatFlux(const SnowStation &Xdata)
Compute ground heat flux at soil/snow boundary.
Definition DataClasses.cc:375
double dhs_corr
operational mode only: snow depth correction in case of squeezing or blow-up (m)
Definition DataClasses.h:739
double qg0
ground heat flux at soil-snow interface
Definition DataClasses.h:721
double qs
sensible heat
Definition DataClasses.h:716
double mRho_hn
Measured new snow density (kg m-3)
Definition DataClasses.h:741
double meltFreezeEnergy
Melt freeze part of internal energy change in J m-2 in snowpack (used for OUTPUT only)
Definition DataClasses.h:732
double ql
latent heat
Definition DataClasses.h:717
This module contains water vapour transport routines for the 1d snowpack model.
Definition VapourTransport.h:50
ZwischenData contains "memory" information mainly for operational outputs.
Definition DataClasses.h:68
ZwischenData()
Definition DataClasses.h:70
void reset()
Sets all the values in the vectors to 0.0.
Definition DataClasses.cc:136
std::vector< double > hn24
Twenty-four hour snow heights every half-hour over three days 144.
Definition DataClasses.h:79
std::vector< double > hn3
Three hour new snow heights every half-hour over three days 144.
Definition DataClasses.h:78
std::vector< double > drift24
Twenty-four hour hoar index every half-hour over one day 48.
Definition DataClasses.h:77
friend std::ostream & operator<<(std::ostream &os, const ZwischenData &data)
Definition DataClasses.cc:144
std::vector< double > hoar24
Twenty-four hour hoar index every half-hour over one day 48.
Definition DataClasses.h:76
friend std::istream & operator>>(std::istream &is, ZwischenData &data)
Definition DataClasses.cc:158
This module contains the van Genuchten model for the water retention curve.
Definition vanGenuchten.h:36
Definition Constants.h:43