DOI: 10.5281/zenodo.4770482
title: Global tilted radiation on Swiss rooftops - 2016

description: netcdf files of hourly tilted radiation for 2016 (<em>tilted_irrad_*.nc</em>), based on MeteoSwiss solar radiation data (gridded) for Switzerland, as well as a file linking the rooftop IDs to rooftop properties (<em>rooftop_link_info_v1.csv</em>) and one to link them to communes in Switzerland (<em>Sonnendach_Gemeinden_Dachflaechen.csv</em>): The tilted radiation files contain the following variables: <em> tilted_irradiance</em> with the hourly global tilted radiation (in W/m<sup>2</sup>), including direct, diffuse and reflected components as well as shading effects. Note that the radiation on flat roofs is computed for south-facing panels tilted at 30°. <em>yearly_kWh_m2</em> with the annual global tilted radiation (in kWh/m<sup>2</sup>), i.e. the sum over time for each roof <em>time</em> with the actual hourly time stamp, which allows to recreate the "normal" time series from the timestamp/day format used in the files and the following coordinates: <em>DF_UID</em>: the rooftop identifier (see roof info file explained below) <em>timestamp: </em>the "monthly-mean-hourly" time stamp, i.e. one hour for each month - this timestamp is used for compatibility with earlier versions of the dataset <em>day</em>: the day number (1-31) of each month - as written above, use the <em>time</em> variable to obtain the correct time stamp The rooftop linking file (<em>rooftop_link_info_v1.csv</em>) contains the following relevant columns (plus a few others that are probably not of concern): <em>DF_UID</em>: the rooftop identifier (as above) <em>SB_UUID</em>: the SwissBuildings3D identifier, with which data can be grouped to buildings <em>GWR_EGID_original</em>: GWR_EGID as linked to SwissBuildings3D by Sonnendach.ch (swisstopo/meteotest) <em>ROOF_AREA/TILT/ASPECT</em>: Tilted roof area, roof tilt angle (°) and roof aspect angle (clockwise ° from south), as provided in Sonnendach.ch dataset (first version) <em>XCOORD/YCOORD</em>: Coordinates of geometry centroid (in Swiss LV03 coordinate system) The rest are information linked to the national buildings and dwellings registry (GWR) - I can provide more details if needed The commune linking file (<em>Sonnendach_Gemeinden_Dachflaechen.csv</em>) contains the following columns: <em>DF_UID, SB_UUID</em>: see above <em>BFS_NUMMER, NAME</em>: number and name of the commune where the roof is located (see https://www.swisstopo.admin.ch/de/geodata/landscape/boundaries3d.html for more info) <em>x_coord_WGS84,y_coord_WGS84</em>: roof coordinates in WGS84 coordinate system Some tips to work with the netcdf data: Open it using <strong>data = xr.open_mfdataset('tilted_irrad_*.nc')</strong> (requires the <em>xarray </em>and<em> dask</em> package, but avoids loading everything into memory and enables parallel processing of the data) The time variable is virtually copied since it is found in each batch. Replace it like <strong>data['time'] = data.time.isel(DF_UID = 0).drop('DF_UID')</strong> To use aggregated slices of the data, obtain a specific slice (i.e. roofs of a certain tilt and orientation, or in a certain commune) by calling <strong>data_slice = data.sel(DF_UID = [<em>DF_UIDs of slice</em>]).sum(dim = 'DF_UID') </strong>and convert it to a pandas dataframe like <strong>slice_df = data_slice.to_dataframe().set_index('time') </strong>- grouping in xarray does not work well, I would avoid it. To multiply them with another variable (e.g. IAM), this can be done very efficiently using xarray. If the respective variable has the same coordinates as the tilted radiation, the computation is done automatically in parallel and with low memory use when the file is saved, if <em>xr.open_mfdataset() </em>is used to load the data (everything is executed in batches using <em>dask</em>).