OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
GwTransportSections.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: Apache-2.0
2//
3// Copyright 2026 Caleb Buahin
4//
5// Licensed under the Apache License, Version 2.0 (the "License");
6// you may not use this file except in compliance with the License.
7// You may obtain a copy of the License at
8//
9// http://www.apache.org/licenses/LICENSE-2.0
10//
11// Unless required by applicable law or agreed to in writing, software
12// distributed under the License is distributed on an "AS IS" BASIS,
13// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14// See the License for the specific language governing permissions and
15// limitations under the License.
16
29
30#ifndef OPENSWMM_ENGINE_2D_GW_TRANSPORT_SECTIONS_HPP
31#define OPENSWMM_ENGINE_2D_GW_TRANSPORT_SECTIONS_HPP
32
33#include "GwTransportData.hpp"
35
36#include <string>
37#include <vector>
38
39namespace openswmm {
41}
42
43namespace openswmm::twoD {
44
45struct MeshData;
46
48std::string parseGwTransportOptionsLine(const std::vector<std::string>& tokens,
49 GwTransportOptions& opts);
50
53std::string parseGwParamsLine(const std::vector<std::string>& tokens,
54 std::vector<GwParamsRow>& rows);
55
57std::string parseGwSorptionLine(const std::vector<std::string>& tokens,
58 std::vector<GwSorptionRow>& rows);
59
62std::string parseGwInitialQualityLine(const std::vector<std::string>& tokens,
63 std::vector<GwInitialQualityRow>& rows,
64 std::string& file);
65
69std::string parseGwBoundaryQualityLine(const std::vector<std::string>& tokens,
70 std::vector<GwBoundaryQualityRow>& rows);
71
74std::string parseGwSourcesLine(const std::vector<std::string>& tokens,
75 std::vector<GwSourceRow>& rows);
76
79 input::SectionRegistry& registry);
80
92std::vector<std::string> resolveGwTransport(SimulationContext& ctx,
93 const MeshData& mesh,
94 GwTransportData& gw);
95
98std::string gwTransportInertWarning(const GwTransportData& gw);
99
100} // namespace openswmm::twoD
101
102#endif // OPENSWMM_ENGINE_2D_GW_TRANSPORT_SECTIONS_HPP
U4 (2026-09-07) — authoring state for subsurface (groundwater) transport: [GW_TRANSPORT_OPTIONS],...
Registry that maps SWMM section tags to handler functions.
Definition NodeCoupling.cpp:16
void registerGwTransportSections(GwTransportData &gw, input::SectionRegistry &registry)
Register every [GW_*] handler against registry, writing into gw.
Definition GwTransportSections.cpp:449
std::string parseGwParamsLine(const std::vector< std::string > &tokens, std::vector< GwParamsRow > &rows)
Definition GwTransportSections.cpp:248
std::string parseGwTransportOptionsLine(const std::vector< std::string > &tokens, GwTransportOptions &o)
One [GW_TRANSPORT_OPTIONS] line (KEY VALUE [ARG…]). Empty = OK.
Definition GwTransportSections.cpp:151
std::vector< std::string > resolveGwTransport(SimulationContext &ctx, const MeshData &mesh, GwTransportData &gw)
Validate the authored rows against the model and the species registry, once the mesh and the species ...
Definition GwTransportSections.cpp:482
std::string parseGwInitialQualityLine(const std::vector< std::string > &tokens, std::vector< GwInitialQualityRow > &rows, std::string &file)
Definition GwTransportSections.cpp:314
std::string parseGwSorptionLine(const std::vector< std::string > &tokens, std::vector< GwSorptionRow > &rows)
One [GW_SORPTION] line: scope, SPECIES, Kd [decay]. Empty = OK.
Definition GwTransportSections.cpp:287
std::string parseGwBoundaryQualityLine(const std::vector< std::string > &tokens, std::vector< GwBoundaryQualityRow > &rows)
Definition GwTransportSections.cpp:357
std::string parseGwSourcesLine(const std::vector< std::string > &tokens, std::vector< GwSourceRow > &rows)
Definition GwTransportSections.cpp:389
std::string gwTransportInertWarning(const GwTransportData &gw)
Definition GwTransportSections.cpp:631
Definition NodeCoupling.cpp:16
Central, reentrant simulation context.
Definition SimulationContext.hpp:353
Every [GW_*] authoring row of one model.
Definition GwTransportData.hpp:180
Definition GwTransportData.hpp:77
SoA storage for 2D mixed triangle/quad mesh geometry and topology.
Definition MeshData.hpp:67