Putting Silicon in Glass. How to model BIPV systems


As electricity demand rises and PV prices drop, finding new places to install solar panels is becoming a challenge. Meanwhile, modern buildings are using more glass, which means higher cooling demands—and more electricity use. So, why not merge the two? Integrating PV into glazing seems like a smart solution, but it’s not as simple as it sounds.

Inside a glazed system, light bounces around in multiple reflections, and heat transfer depends on a complex network of thermal resistances. These interactions determine key factors like solar transmittance (T), solar heat gain (g/SHGC), and thermal transmittance (U). When you add PV—especially in a non-homogeneous configurations—things get even trickier.

What if solar cells are small that can either absorb light, reflect light (both in specular and diffuse way) and/or let it go through the spaces between cells?

Back in 2009–2010, I tackled this challenge. I developed an angular-dependent PV reflection model where the geometrical reflections and shading between different cells were considered. And I integrated it within a radiosity-based model to compute light transmission and reflection through the glazed layers.

Then the absorbed energy was in incorporated in an electric performance model for the PV system, and the energy that was not converted into electricity was derived into a heat transfer model that was able to calculate the temperature profile throughout the component.

I developed all this in C++ and then integrated into a custom TRNSYS model so that everything could be computed for any given solar incidence and bounding temperature conditions.

This was done in my Tecnalia (actually Labein) period, but was left unpublished. And I recovered this together with my colleague Talha Siddique and sent it to KES 2024.

Now its open to the public, feel free to have a look here:

Roberto Garay-Martinez, Muhammad Talha Siddique, Juan Manuel Lopez-Garde, Model-based Outlier Detection in District Heating Systems, Procedia Computer Science, 246, 2024, https://doi.org/10.1016/j.procs.2024.09.646