voxcity.simulator_gpu.solar.radiation

Radiation solver for palm-solar.

Main module that integrates all components to compute shortwave (solar) radiation fluxes with multi-bounce reflections following PALM’s RTM (Radiative Transfer Model) methodology.

PALM Alignment Notes: - Solar position: Uses PALM’s calc_zenith formula exactly (solar.py) - SVF calculation: Uses PALM’s vffrac_up formula with proper weighting (svf.py) - Reflection steps: Default nrefsteps=3 matches PALM - Extinction coefficient: Default ext_coef=0.6 matches PALM - Beer-Lambert law: Same exponential attenuation through canopy - Direction indices: IUP=0, IDOWN=1, etc. match PALM convention

Key differences from PALM: - GPU-accelerated via Taichi (PALM uses Fortran+MPI) - Real-time view factor computation (PALM pre-computes sparse matrix) - Shortwave only (PALM includes longwave radiation) - Axis-aligned surfaces only (PALM supports slant surfaces)

Input convention: - sw_direct: Direct Normal Irradiance (DNI) in W/m² - sw_diffuse: Diffuse Horizontal Irradiance (DHI) in W/m²

Attributes

Classes

RadiationConfig

Configuration for radiation model.

RadiationModel

GPU-accelerated solar radiation transfer model.

Module Contents

voxcity.simulator_gpu.solar.radiation.IUP = 0
voxcity.simulator_gpu.solar.radiation.IDOWN = 1
voxcity.simulator_gpu.solar.radiation.INORTH = 2
voxcity.simulator_gpu.solar.radiation.ISOUTH = 3
voxcity.simulator_gpu.solar.radiation.IEAST = 4
voxcity.simulator_gpu.solar.radiation.IWEST = 5