OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
SnowCheckpoint.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: Apache-2.0
2
11
12#pragma once
13#include <string>
14#include <array>
15namespace openswmm {
17namespace snow {
18struct SnowSoA;
19}
20namespace detail {
22}
23namespace surface {
24class MeshSnow;
36std::string saveCombinedSnowCheckpoint(const SimulationContext& context, const snow::SnowSoA& snow,
37 const MeshSnow* mesh);
57std::string restoreCombinedSnowCheckpoint(SimulationContext& context, snow::SnowSoA& snow,
58 MeshSnow* mesh, const std::string& bytes, bool apply,
59 bool seed);
60namespace ueb {
61struct HeldState;
62}
63
71std::string snowModelIdentity(const SimulationContext& context, const snow::SnowSoA& snow);
80std::string snowForcingIdentity(const SimulationContext& context);
86std::array<double, 4> snowRuntimeForcing(const SimulationContext& context);
91bool snowTransientForcing(const SimulationContext& context);
118std::string saveSnowCheckpoint(const SimulationContext& context, const snow::SnowSoA& snow);
139 const std::string& bytes, bool apply = true, bool seed = false);
140} // namespace surface
141} // namespace openswmm
Definition CompletedSourceArchive.hpp:25
Owned mixed degree-day/UEB snow on remaining mesh weather footprints. Geometry area is horizontal m2;...
Definition MeshSnow.hpp:54
Definition OutfallExchange.hpp:17
Definition DegreeDaySnow.cpp:36
Definition SnowCheckpoint.hpp:60
Definition GroundHeat.hpp:19
void archiveHeldSnow(detail::CompletedSourceArchive &a, ueb::HeldState &h)
Stream and validate accepted/predicted lumped UEB history and consumption clocks.
Definition SnowCheckpoint.cpp:288
std::string snowForcingIdentity(const SimulationContext &ctx)
Encode configuration and actual weather values controlling held snow predictions.
Definition SnowCheckpoint.cpp:233
std::string restoreCombinedSnowCheckpoint(SimulationContext &ctx, snow::SnowSoA &snow, MeshSnow *mesh, const std::string &bytes, bool apply, bool seed)
Validate native and mesh snow together before ordinary publication.
Definition SnowCheckpoint.cpp:430
std::array< double, 4 > snowRuntimeForcing(const SimulationContext &ctx)
Read the small runtime override key used to invalidate held predictions.
Definition SnowCheckpoint.cpp:216
bool snowTransientForcing(const SimulationContext &ctx)
Test whether temperature or wind has a transient active runtime override.
Definition SnowCheckpoint.cpp:223
std::string saveCombinedSnowCheckpoint(const SimulationContext &ctx, const snow::SnowSoA &snow, const MeshSnow *mesh)
Encode native snow and, when active, the paired mesh snow owner.
Definition SnowCheckpoint.cpp:417
std::string snowModelIdentity(const SimulationContext &ctx, const snow::SnowSoA &snow)
Encode the native snow restart compatibility identity.
Definition SnowCheckpoint.cpp:230
std::string saveSnowCheckpoint(const SimulationContext &ctx, const snow::SnowSoA &s)
Encode native degree-day and UEB accepted/held snow state without owner mutation.
Definition SnowCheckpoint.cpp:306
void archiveDegreeDaySnow(detail::CompletedSourceArchive &a, snow::SnowSoA &s)
Stream fixed-layout native degree-day dynamic state and shared report histories.
Definition SnowCheckpoint.cpp:303
std::string restoreSnowCheckpoint(SimulationContext &ctx, snow::SnowSoA &snow, const std::string &bytes, bool apply, bool seed)
Decode native snow into a compatible model, optionally as a new hot start.
Definition SnowCheckpoint.cpp:316
Definition ExchangeLaw.hpp:60
Central, reentrant simulation context.
Definition SimulationContext.hpp:390
Definition DegreeDaySnow.hpp:66
Definition UebHeld.hpp:20