25 {{
"Mesh2_face_snow_model",
"snow model (-1 unassigned, 0 degree-day, 1 UEB)",
"1"},
26 {
"Mesh2_face_snow_completed",
"snow state time since start",
"s"},
27 {
"Mesh2_face_snow_swe",
"snow water equivalent",
"m"},
28 {
"Mesh2_face_snow_cover",
"snow covered fraction",
"1"},
29 {
"Mesh2_face_snow_melt",
"snowpack liquid outflow rate",
"m s-1"},
30 {
"Mesh2_face_snow_surface_input",
"snow liquid input to surface (including throughfall)",
32 {
"Mesh2_face_snow_sublimation",
"snow sublimation rate",
"m s-1"},
33 {
"Mesh2_face_snow_energy",
"snow energy relative to ice at zero degrees C",
"kJ m-2"},
34 {
"Mesh2_face_snow_surface_temperature",
"snow surface temperature",
"degC"},
35 {
"Mesh2_face_snow_bulk_temperature",
"snow bulk temperature",
"degC"},
36 {
"Mesh2_face_snow_albedo",
"snow albedo",
"1"},
37 {
"Mesh2_face_snow_surface_age",
"snow dimensionless surface age",
"1"},
38 {
"Mesh2_face_snow_initial",
"initial snow water inventory",
"m3"},
39 {
"Mesh2_face_snow_raw_precipitation",
"cumulative precipitation before snow catch correction",
41 {
"Mesh2_face_snow_precipitation",
"cumulative precipitation after snow catch correction",
43 {
"Mesh2_face_snow_liquid_cum",
"cumulative snow liquid input to surface",
"m3"},
44 {
"Mesh2_face_snow_sublimation_cum",
"cumulative snow sublimation",
"m3"},
45 {
"Mesh2_face_snow_storage",
"stored snow water inventory",
"m3"},
46 {
"Mesh2_face_snow_residual",
"snow water continuity residual",
"m3"},
47 {
"Mesh2_face_snow_net_energy",
"cumulative net snow energy input",
"kJ"},
48 {
"Mesh2_face_snow_initial_energy",
"initial snow/ground energy",
"kJ"},
49 {
"Mesh2_face_snow_stored_energy",
"stored snow/ground energy",
"kJ"},
50 {
"Mesh2_face_snow_energy_residual",
"snow/ground energy continuity residual",
"kJ"}}};
61template <
class State,
class Ledger>
63 return {double(s.model),
71 s.surface_temperature_c,
76 b.raw_precipitation_m3,
85 b.energy_residual_kj};
Definition ExchangeLaw.hpp:60
constexpr std::array< SnowResultField, 23 > meshSnowFields
Definition SnowResults.hpp:24
std::array< double, meshSnowFields.size()> meshSnowValues(const State &s, const Ledger &b)
Copy one accepted mesh snow state/ledger into the shared 23-field result order.
Definition SnowResults.hpp:62
std::array< std::vector< double >, meshSnowFields.size()> MeshSnowSnapshot
Definition SnowResults.hpp:51
Definition SnowResults.hpp:19
const char * name
Definition SnowResults.hpp:20
const char * units
Definition SnowResults.hpp:22
const char * label
Definition SnowResults.hpp:21