OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
BedExchange.cpp File Reference

Plan H6b — implementation. See BedExchange.hpp for the derivation. More...

#include "BedExchange.hpp"
#include <cmath>
#include <cstddef>
#include "HeatOverrides.hpp"
#include "SurfaceExchange.hpp"
#include "../../../core/SimulationContext.hpp"
#include "../../../data/TableData.hpp"
#include "../../../hydraulics/XSectBatch.hpp"
Include dependency graph for BedExchange.cpp:

Namespaces

namespace  openswmm
 
namespace  openswmm::transport
 
namespace  openswmm::transport::heat
 

Functions

PairStep openswmm::transport::heat::relaxPair (const BedCoupling &g, double t_w, double t_b, double j0, double j1, double h, double area_m2, double dt) noexcept
 One exact step of the coupled (water, bed) pair.
 
SolutePairStep openswmm::transport::heat::exchangePair (double c_w, double c_b, double vol_w, double vol_b, double q_exch, double dt) noexcept
 One exact step of the two-body solute exchange.
 
bool openswmm::transport::heat::bedExchangeEnabled (const SimulationContext &ctx) noexcept
 True when [HEAT_FLUXES] SEDIMENT_EXCHANGE is on and heat transport is.
 
double openswmm::transport::heat::groundTemperature (SimulationContext &ctx) noexcept
 
double openswmm::transport::heat::linkBedAreaM2 (const SimulationContext &ctx, int link) noexcept
 
double openswmm::transport::heat::linkFreeSurfaceFt2 (const SimulationContext &ctx, int link) noexcept
 
double openswmm::transport::heat::bedExchangeQ (const SedimentConfig &cfg, double bed_m2) noexcept
 
double openswmm::transport::heat::groundTempFor (const SimulationContext &ctx, const SedimentConfig &sc, double t_gr_global) noexcept
 
BedCoupling openswmm::transport::heat::bedCouplingFromContact (const SimulationContext &ctx, const SedimentConfig &sc, double bed_m2, double vol_ft3, double t_gr) noexcept
 The material half of the coupling, geometry already folded in.
 
BedCoupling openswmm::transport::heat::bedCouplingForLink (const SimulationContext &ctx, int link, double vol_ft3, double t_gr) noexcept
 Bed conductances for link j from the deck configuration and the link's current hydraulics.
 
void openswmm::transport::heat::seedBedTemperature (SimulationContext &ctx)
 Size and seed the bed temperature array, idempotently.
 
void openswmm::transport::heat::applyBedSoluteExchange (SimulationContext &ctx, double *link_conc, int n_arr, int offset, int n_total, double dt)
 Step every conduit's bed/channel solute exchange for one dt.
 

Detailed Description

Plan H6b — implementation. See BedExchange.hpp for the derivation.

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
License\n Apache-2.0