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

Phase H3 body — shortwave/longwave radiation. More...

#include "RadiativeExchange.hpp"
#include "HeatOverrides.hpp"
#include <algorithm>
#include <cmath>
#include "SolarRadiation.hpp"
#include "SurfaceExchange.hpp"
#include "../../../core/SimulationContext.hpp"
Include dependency graph for RadiativeExchange.cpp:

Namespaces

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

Functions

double openswmm::transport::heat::netShortwave (double incoming_wm2, double albedo, double shade_factor) noexcept
 Net absorbed shortwave [W/m²], INTO the water.
 
double openswmm::transport::heat::backLongwave (double t_water_c, double emiss_water) noexcept
 Back longwave emitted by the water [W/m²], OUT of the water.
 
double openswmm::transport::heat::atmosphericEmissivity (double e_a_kpa, double atm_emiss_coeff, double cloud_factor) noexcept
 
double openswmm::transport::heat::atmosphericLongwave (double t_air_c, double humidity_pct, double atm_emiss_coeff, double lw_reflection, double sky_view, double cloud_factor=1.0) noexcept
 Atmospheric longwave [W/m²], INTO the water.
 
double openswmm::transport::heat::landCoverLongwave (double t_air_c, double emiss_landcover, double sky_view) noexcept
 Land-cover longwave [W/m²], INTO the water.
 
double openswmm::transport::heat::netRadiativeFluxOut (double t_water_c, double t_air_c, double humidity_pct, const RadiativeConfig &cfg, double jin_wm2, double cloud_factor) noexcept
 
double openswmm::transport::heat::radiativeFluxOut (const SimulationContext &ctx, const HeatElement &elem, double t_w) noexcept
 

Detailed Description

Phase H3 body — shortwave/longwave radiation.

D-H5e moved the node and link BINDING out of this file into HeatFluxes.cpp. This file had its own hand-inlined explicit conversion and its own copy of the element traversal, which is how it came to carry H2's divergence through a different spelling and then to relax separately from it.

Line-for-line provenance is RHEComponent/src/element.cpp: computeNetSWSolarRadiation (:106), computeBackLWRadiation (:113), computeAtmosphericLWRadiation (:119), computeLandCoverLWRadiation (:131).

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