![]() |
OpenSWMM Engine
6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
|
Phase H6a — solar position, clear-sky irradiance, cloud. More...
#include "SolarRadiation.hpp"#include <algorithm>#include <cmath>#include "../../../core/DateTime.hpp"#include "../../../core/SimulationContext.hpp"#include "../../../data/TableData.hpp"Namespaces | |
| namespace | openswmm |
| namespace | openswmm::transport |
| namespace | openswmm::transport::heat |
Functions | |
| SolarPosition | openswmm::transport::heat::solarPosition (int day_of_year, double hour_local, double lat_deg, double lon_deg, double tz_hours) noexcept |
| Sun position by the Spencer (1971) / NOAA formulation. | |
| double | openswmm::transport::heat::airMass (double zenith_deg) noexcept |
| double | openswmm::transport::heat::pressureFromElevation (double elevation_m) noexcept |
| Station pressure [mb] from elevation [m], standard atmosphere. | |
| double | openswmm::transport::heat::birdClearSkyGHI (const SolarPosition &pos, double pressure_mb, const SolarConfig &cfg) noexcept |
| Bird & Hulstrom clear-sky global horizontal irradiance [W/m²]. | |
| double | openswmm::transport::heat::cloudShortwaveFactor (double cloud_fraction, double k, double n) noexcept |
Cloud attenuation of shortwave, 1 − k·C^n (Kasten–Czeplak). | |
| double | openswmm::transport::heat::cloudLongwaveFactor (double cloud_fraction, double k_lw) noexcept |
Cloud enhancement of atmospheric emissivity, 1 + k_lw·C² (Bolz). | |
| void | openswmm::transport::heat::updateSolarForcing (SimulationContext &ctx) noexcept |
Resolve Jin and C for this step into ctx.heat_state. | |
Phase H6a — solar position, clear-sky irradiance, cloud.