Code and data for Geometrical Levels of Detail for Indoor Daylight Simulation: An Aperture-aware Definition
code:jobs: example cluster job scripts.postprocess: post-processing scripts for analysis and visualizationsrc: main source codes for daylight simulations, and cubic-illuminance implementations.
Figures: figures and plots for both vizualisation and data analysis in the paper.inputs: geometries, simulation grids, and weather files for rooms 1 and 2. Please refer to 4TU repository for full access.
The Area-Weighted Solid Angle (AWSA) is calculated as:
where:
-
$Ω$ — cumulative apparent solid angle subtended by the window mesh triangles from the centroid of the non-permanent object, counted only when the line between the object's centroid and a triangle's centroid is unobstructed by other objects in the room (steradians). -
$A_w$ — total window area in the room (m²).
The implementation is in input_station.py, function calculate_solid_angle().Threshods class
This includes a visibility check. For example, if from the centroid of the red flower box (❌). the first conjunction point (
) on the connecting line to the windows (
) is on the window pane(🟦), then the solid angle of that triangle is added to the total solid angle of the window as seen from the centroid of the flower box.
The analysis grid in this work represents head-poses as shown in the blue region in the figure below, as opposed to the workplane (in red):
This is implemented in cuttle class in cuttle.py , which has two key functionalities:
- Creates cubic sensor definitions from a given list of points (as a simple
.txt) for 2-phase simulation.space_angleis set to 0 by default, which means the cubic point directions will be aligned with the global coordinate system (see the figure below). If a non-zerospace_angleis provided, the cubic sensors will be rotated accordingly.
- Calculates the cubic quantities from the raw Radiance results, with quantities that correspond to those proposed by Christopher Cuttle.
This respository uses an advance 2-phase annual daylight simulation (see CBDM.py) method based on Radiance v5.4.
If you use the code/program (or part) of this work, please cite our paper:
@article{FOROUZANDEH2026115367,
title = {Geometrical levels of detail for indoor daylight simulation: An aperture-aware definition},
journal = {Building and Environment},
pages = {115367},
year = {2026},
issn = {0360-1323},
doi = {https://doi.org/10.1016/j.buildenv.2026.115367},
url = {https://www.sciencedirect.com/science/article/pii/S0360132326011686},
author = {Nima Forouzandeh and Lars O. Grobe and Eleonora Brembilla},
keywords = {Standardisation, Radiance, Digital twin, Scan-to-bim},
abstract = {This study proposes a formalised framework for defining indoor Geometrical Level of Detail (GLoD) for daylight applications, based on a solid angle descriptor called Area-Weighted Solid Angle (AWSA). Unlike previous approaches that rely on object size or semantics, the proposed method prioritises the inclusion of non-permanent indoor objects based on their obstruction to window surfaces. This allows for a more relevant abstraction and classification of indoor geometry for daylight simulations. Two use case rooms with single- and multi-sided window configurations were analysed under different sky conditions using Climate-Based Daylight Modelling (CBDM) and evaluated through Total Annual Illumination (TAI) on sensor grids placed either on a horizontal working plane or at multiple six cubic directions. Results show that annual illumination was over-predicted when using the simplest GLoD level (GLoD0), compared to the most complete (GLoD3), up to a 41 % at the working plane and up to 77 % at head positions. Sky conditions influenced absolute TAI values but did not markedly change the relative influence of GLoD on either directional (cubic) or non-directional (work-plane) evaluations.}
}
This repository uses the MIT License. This allows free use, modification, and redistribution with attribution. (see also ./LICENSE)
If you have any questions, comments, or suggestions, please feel free to contact me at: Forouzandeh.nima@gmail.com; n.forouzandeh@tudelft.nl
October, 2026
Copyright (C) 2026 | Nima Forouzandeh



