Release of Solar3Dcity, a utility to estimate the yearly solar irradiation of buildings stored in CityGML

In the last a few months I had been busy with examining the theory of solar radiation and the estimation of the solar irradiation of roofs with 3D city models. Estimating the solar irradiation of buildings with 3D city models is one of the prominent use-cases of 3D GIS, and it is used to assess the feasibility of installing a photovoltaic panel on a roof (i.e. how much sun energy would a panel get over a year if installed).

I have been doing this in order to build my own software. Now I am happy to announce the release of Solar3Dcity, an open-source tool for estimating the yearly solar irradiation of roofs from 3D city models stored in CityGML.

Screenshot of the results of the Solar3Dcity estimations on 36 buildings in CityGML

Screenshot of the results of the Solar3Dcity estimations on 36 buildings in CityGML

I have decided to create my own software since software packages that are used nowadays are not free, and usually do not support CityGML, which is one of the primary formats of 3D city models.

Long story short, the software extracts the roof surfaces from CityGML buildings. It computes the tilt, orientation, and area of each surface. The tilt and orientation (azimuth) of a surface have a big influence on the radiation, as it’s obvious from the following plot (which was also generated with the Solar3Dcity package):

The tilt-orientation factors computed by Solar3Dcity for Delft in the Netherlands. This plot shows how drastic the influence of the tilt and orientation of the roof can have onto the received solar energy.

The tilt-orientation factors computed by Solar3Dcity for Delft in the Netherlands. This plot shows how drastic the influence of the tilt and orientation of the roof can have onto the received solar energy. This plot can be computed for any location on Earth since Solar3Dcity utilises a global weather database.

The above location-dependent plot is a key to do the estimations (the software just samples the value from it), but it takes some time and effort to obtain it. In short, the solar radiation is a three-component function over time (due to the different position of the sun every day; and reflections and refractions of the sun rays), and its values have to be integrated over the whole year. Further, the cloud cover has to be taken into account to adjust the estimations. The next plot shows the solar radiation for Delft during two days (1 Mar and 21 Jun) for three differently oriented and tilted surfaces (A, B, and H). Big difference…

solar-dailyplot

This experimental research software is in the development phase, but I had a chance to compare its results with a commercial software and it seems accurate. So far I have used it for investigating the propagation of acquisition errors, about which I am currently submitting a paper.

Please head to the Github page for more information about this tool.

Edit: In the meantime I have created an animation:

 

Edit2: a paper has been published:

Biljecki, F., Heuvelink, G. B. M., Ledoux, H., & Stoter, J. (2015). Propagation of positional error in 3D GIS: estimation of the solar irradiation of building roofs. International Journal of Geographical Information Science. doi:10.1080/13658816.2015.1073292

One comment

  1. Pingback: Teaser of Solar3Dcity | Levelling the detail