OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
NativeSnow.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: Apache-2.0
2
11
12#pragma once
13#include "DegreeDaySnow.hpp"
14#include <string>
15#include <array>
16namespace openswmm::surface {
31std::string initializeNativeSnow(SimulationContext& context, snow::SnowSolver& solver);
37bool hasUebSnow(const SimulationContext& context);
51std::array<double, 10> nativeSnowResults(const SimulationContext& context,
52 const snow::SnowSoA& state, int subcatch);
59double nativeSnowDepth(const snow::SnowSoA& state, int subcatch);
60// Physical inventory includes retained free water; the legacy depth report
61// above includes ice only. Areas are actual non-LID square feet.
68double nativeSnowVolume(const snow::SnowSoA& state, int subcatch, double area_ft2);
69}
Snowmelt — degree-day and rain-on-snow methods.
DegreeDaySnow SnowSolver
Definition DegreeDaySnow.hpp:324
Definition GroundHeat.hpp:19
std::string initializeNativeSnow(SimulationContext &ctx_, snow::SnowSolver &snow_)
Load native degree-day geometry/history and initialize assigned UEB packs.
Definition NativeSnow.cpp:78
double nativeSnowDepth(const snow::SnowSoA &s, int sc)
Compute the legacy reported solid-snow depth for a native source.
Definition NativeSnow.cpp:62
double nativeSnowVolume(const snow::SnowSoA &s, int sc, double area)
Compute physical solid-plus-free-water inventory over actual source area.
Definition NativeSnow.cpp:70
bool hasUebSnow(const SimulationContext &c)
Detect an enabled authored UEB snowpack assignment without initializing it.
Definition NativeSnow.cpp:20
std::array< double, 10 > nativeSnowResults(const SimulationContext &c, const snow::SnowSoA &s, int sc)
Assemble SI UEB snow-report fields from accepted native owner snapshots.
Definition NativeSnow.cpp:28