## 3 Methodological Developments and Application to the Greater Geneva Area
### Workflow  
The workflow presented in Figure 3 deals with the image processing stage, as introduced earlier in Figure 1. The pipeline works as follows: for each tile, we compute both the Sky View Factor (SVF), which is not time-dependent, and the Direct Illumination (DI) value of each hour of sunlight of a representative day of each month. Both of these procedures derive from our shadow casting algorithm. Figure 2: Geographical context of Greater Geneva area (main administrative boundaries and tiling). The Sky View Factor Computation (left green box in Figure 3) uses as inputs: the Digital Urban Surface Model (DUSM) of the tile (for shadow casting in the immediate neighborhood of each point with high resolution of 50 cm), the Digital Terrain Model (DTM), which is a low-resolution (50 m) height map of the entire region (for shadow casting due to distant relief), a sky model of 580 points, the slope and orientation data for each point (for computing the weighting factor according to the normal of the roof). Slope and orientation derive themselves from the DUSM. The Direct Illumination (DI) computation (right green box in Figure 3) uses as inputs the DUSM, DTM (for shadow casting to the distant relief), and the hourly solar position, which depends on the latitude of the center of the tile, time of day, and day of the year. Finally, the solar radiation processing generates as output the irradiation maps of tiles. It takes as input (blue box in Figure 3): the DI values calculated for each hour of a representative day of each month, the SVF, the predicted meteorological data for the specific tile, the slope and orientation of each point, the sun position, as well as the latitude of the center of the tile. We apply the following irradiation formula adapted from [10] to compute the result. This Equation (1) is structured in three components: beam, diffuse, and reflected. \[I_{g\beta\gamma} = I_{bg\gamma}r_{b}DI+I_{d}\left(\frac{I_{g}-I_{d}}{I_{0}}r_{b} DI+SVF\left[1-\frac{I_{g}-I_{d}}{I_{0}}\right]\right)+0.5I_{g}a(1-\cos\beta) \tag{1}\]  
where:  
Figure 3: A schematic view of the processing pipeline for a tile, detailing the image processing step of Figure 1. DTM: Digital Terrain Model; GPU: Graphics Processing Units; CUDA: Compute Unified Device Architecture. \(I_{g\beta\gamma}\): Hourly global irradiation on the inclined surface (W/h/m\({}^{2}\))  
\(I_{b\beta\gamma}\): Hourly beam or direct irradiation on the inclined surface (W/h/m\({}^{2}\))  
\(r\): cos\(\theta\)/cos\(\theta\)z, transposition factor  
Direct illumination (hourly shadowing effect on beam and diffuse circumsolar components,  
value = [0,1], defined by the minimum value processed on DUMS and DTM)  
\(I_{d}\): Hourly diffuse radiation incident on the horizontal surface (W/h/m\({}^{2}\))  
\(I_{g}\): Hourly global irradiation on the horizontal surface (W/h/m\({}^{2}\))  
\(I_{0}\): Hourly extraterrestrial irradiation (W/h/m\({}^{2}\))  
Sky View Factor (shadowing effect on the isotropic part of the diffuse component processed on both  
DUMS and DTM, value = [0,1])  
\(a\): Albedo coefficient  
\(\beta\): Slope angle of the inclined surface  
\(\gamma\): Azimuth angle (orientation or aspect) of the inclined surface  
\(\Theta\): Angle of incidence of the inclined surface  
\(\theta_{z}\): Zenith angle of the light source  
Irradiation outputs are then post-processed in order to produce solar energy maps. This will be presented later in Section 4 through the application of the solar cadaster in Geneva. Concerning the technological choices, given the considered total area (roughly 2000 km\({}^{2}\)), the previous approach of running the computation on conventional CPUs was prohibitive in terms of computation time and cost, if we wanted to keep the same surface model resolution (50 cm). Preliminary tests by [PERSON] (2016) in 2016 demonstrated that GPUs, by their massively parallel nature, are adequate for problems in which the same computation must be performed on different inputs.