voxcity.simulator_gpu.solar.reflection.OptimizedReflectionSolver ================================================================ .. py:class:: voxcity.simulator_gpu.solar.reflection.OptimizedReflectionSolver(n_surfaces: int, max_svf_entries: int, n_reflection_steps: int = 3) Optimized GPU solver for multi-bounce radiation reflections. This replaces the per-step kernel launches with fused operations that run the entire reflection loop on GPU without CPU intervention. .. py:attribute:: n_surfaces .. py:attribute:: max_svf_entries .. py:attribute:: n_reflection_steps :value: 3 .. py:method:: solve_reflections_fused(initial_sw: ti.template(), albedo: ti.template(), svf: ti.template(), svf_source: ti.template(), svf_target: ti.template(), svf_vf: ti.template(), svf_trans: ti.template(), svf_nnz: taichi.i32, n_steps: taichi.i32) Fused kernel for complete multi-bounce reflection computation. This runs all reflection iterations in a single kernel launch, eliminating CPU-GPU synchronization overhead between steps. Uses ping-pong buffers to avoid race conditions between iterations. .. py:method:: get_results() Get accumulated totals as numpy arrays.