OpenSWMM Engine  6.0.0-alpha.3
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.3)
Loading...
Searching...
No Matches
Link.hpp File Reference

Link hydraulics — velocity, Froude, Manning conveyance, settings. More...

#include "../data/LinkData.hpp"
#include "XSectBatch.hpp"
#include "Node.hpp"
#include "Transect.hpp"
#include <vector>
Include dependency graph for Link.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  openswmm
 
namespace  openswmm::link
 

Functions

double openswmm::link::getVelocity (const XSectParams &xs, double flow, double depth, int barrels=1)
 Compute flow velocity from flow and depth.
 
double openswmm::link::getFroude (const XSectParams &xs, double v, double y)
 Compute Froude number from velocity and depth.
 
void openswmm::link::computeConveyance (double roughness, double slope, double s_full, double &beta, double &rough_factor, double &q_full)
 Compute Manning conveyance coefficients for a conduit.
 
double openswmm::link::getDepthFromFlow (const XSectParams &xs, double beta, double q)
 Compute normal-flow depth from flow rate (inverse Manning).
 
double openswmm::link::getCapacity (const XSectParams &xs, double depth)
 Compute the capacity fraction (depth / full depth for conduits, setting for other links).
 
double openswmm::link::getHydPower (double flow, double head_upstream, double head_downstream)
 Compute hydraulic power dissipated in a link.
 
XSectParams openswmm::link::buildXSectParams (const LinkData &links, std::size_t uj, const std::vector< transect::TransectData > *transects=nullptr)
 Build XSectParams from LinkData SoA arrays.
 
int openswmm::link::translateShape (XsectShape link_shape)
 Translate LinkData::XsectShape to batch XSectShape int code.
 
void openswmm::link::applyTabulatedXSectParams (XSectParams &xs, const transect::TransectData &td, double y_full, int transect_idx)
 Derive the full-flow properties of a tabulated cross-section.
 

Detailed Description

Link hydraulics — velocity, Froude, Manning conveyance, settings.

Provides per-element and batch functions for conduit hydraulic computations. All formulas are numerically identical to legacy link.c and xsect.c.

Note
Legacy reference: src/legacy/engine/link.c
Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
License\n MIT License