OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
SolarRadiation.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: Apache-2.0
2
11
12#pragma once
14// Compatibility names: heat and surface hydrology use the same solar kernel.
16using climate::SolarPosition;
26}
Solar geometry, atmospheric radiation and interval weather forcing.
double cloudShortwaveFactor(double cloud_fraction, double k, double n) noexcept
Compute the cloud attenuation multiplier max(0,1-k*C^n).
Definition Radiation.cpp:206
void updateSolarForcing(SimulationContext &ctx, double seconds)
Update shared heat shortwave/cloud forcing with mesh radiation disabled.
Definition Radiation.cpp:230
double airMass(double zenith_deg) noexcept
Compute Kasten-Young relative optical air mass.
Definition Radiation.cpp:122
double pressureFromElevation(double elevation_m) noexcept
Estimate standard-atmosphere station pressure from elevation.
Definition Radiation.cpp:135
double birdClearSkyGHI(const SolarPosition &pos, double pressure_mb, const SolarConfig &cfg) noexcept
Estimate clear-sky global horizontal irradiance with Bird-Hulstrom terms.
Definition Radiation.cpp:140
SolarPosition solarPosition(int day_of_year, double hour_local, double lat_deg, double lon_deg, double tz_hours) noexcept
Compute Spencer/NOAA sun geometry at a local civil-clock instant.
Definition Radiation.cpp:57
constexpr double kStdPressureMb
Sea-level standard pressure, millibars — Bird's pressure reference.
Definition Radiation.hpp:121
double cloudLongwaveFactor(double cloud_fraction, double k_lw) noexcept
Compute the cloud atmospheric-emissivity multiplier 1+k_lw*C^2.
Definition Radiation.cpp:215
constexpr double kSolarConstant
Solar constant, W/m² (Bird & Hulstrom 1981; WMO 1982).
Definition Radiation.hpp:118
Definition BedExchange.cpp:39