Thermal Bridge - with THERM

I see that you add recently an HB component to export the thermal bridge with material and boundary condition in THERM. Awesome! Now I want to add the PSI value of the thermal bridge (linear thermal transmittance) calculated with THERM in the energy simulation. What is the best way to do that in grasshopper and Honeybee? I don’t have any idea how to add the linear thermal transmittance to the energy plus simulation HB component.



I am sorry for the late response. Your thinking is spot-on with the intended use of the THERM workflow but you are also far ahead of the current development. I haven’t gotten as much time as I was hoping in the last couple of months to finish off the basic export workflow let alone the import back into GH (hence, the placement of the components in WIP). However, with a bit of a lull in office work now around the holidays, I think that I should be able to put a good number of hours in the next few days. Wherever I end up getting to by the end of this week, I will post an example file on the Hydra platform and post here once I have done so.

From my research so far, I can tell you that THERM will write the U-value of the assembly into the THERM XML file that the components will generate (the “thermFileAddress”). So, once we get the basic export working, pulling out the assembly U-Value into GH for an EnergyPlus simulation should be pretty straightforward. The difficult part will just be understanding how to distribute this U-value around the mass of the construction. For this, we may need some components that help us translate some THERM materials to EP materials such that we can decide which material of the construction will account for the thermal bridging with a decreased R-value. We will cross this bridge when we get the basic export workflow in place (no pun intended).



The new THERM export workflow is complete.

You can find an example file walking you through the basics of the export workflow here:…

Once you familiarize yourself enough with this file, you can apply the results to an EnergyPlus simulation using this example file as a guide:…

The only feature in the THERM workflow that I am hoping to add that is not there presently is the auto-assigning of boundary conditions for interior air cavities. All other capabilities should be present and we should finally be able to free ourselves from the painful idiosyncrasies of the THERM drawing interface!


After a few unfortunate encounters with drawing facade elements in THERM I can say I am excited to use its capabilities in Rhino!

Thanks Chris!

Hi Chris and thank you very much for the great work in linking THERM to Energy Plus!

I’ve been able to run the example file but I’m not sure I understand the theory behind whole process, in order to be able to replicate it on another case study. (Sorry, probably I’m just lacking the basic understanding on how to merge the THERM model results with EP construction)

For what I understand, in the example file we start from the THERM materials and THERM model in order to simulate the thermal bridge. The WALL-NOTHERMALBRIDGE EP construction element is a “standard” EP abstraction of the real wall (with the CELLULOSE EP Material created from THERM CELLULOSE Material) that doesn’t take into account the steel material in it, the resulting EP Construction has five material layers against the six materials of the real wall.

In the WALL-THERMALBRIDGE EP construction instead we substitute the “CELLULOSE…” insulation material layer (layer 4) with a “special” material capable to transfer the thermal bridge phenomenon inside the EP construction.

In THERM we simulate the whole 2D model with fixed boundary condition (only needed to calculate R and U value, so I guess we can leave the example values in every country) and we obtain an R-value of the overall lenght of the simulated wall. After importing the THERM result we subtract from it the R values of the other four layers of the WALL-NOTHERMALBRIDGE EP (so that we don’t calculate them twice), and then we create a specific new EP Material (ThermalBridgeMat) in which the conductivity comes from this operation and then we rebuild another EP construction material in which the layer 4 is the new ThermalBridgeMat. Is it ok?

Now the question is, are there any guidelines on hints to understand how to break up for example a “linear” thermal bridge problem to better evaluate it? I Post an image with a basic example:

Let’s say I have a two-storey house (ground floor and first floor) and the floor of the first floor creates a thermal bridge in the wall (red line). Probably in Energy+ I’ll go for a two zones modelling. Now in order to take into account the thermal bridge how am I supposed create the THERM file? I could (First hypothesis) leave the ground floor wall as it is, and simulate the slab and the first floor wall together (cyan box), and then “spread” the new value all over the first floor wall, or I could simulate the ground floor wall, the first floor and the slab and use an unique value for the two walls, which is better? Is there any documentation to understand if there is a basic workflow in order to tackle the issue?

Thank you very much and sorry for the long post!!

Therm_Energyplus_question.pdf (322 KB)


Your interpretation of the Hydra example file is correct. I admittedly over-complicated the hydra example file a bit by trying to change only one material in a 5-layer construction. I did this so that I could preserve the effects of thermal mass in the construction by keeping the other 4 layers. However, you can probably just substitute the whole wall construction with a single NoMass Material construction that has an R-Value that matches that of the THERM model U-Value (minus air films). This should be good enough if you just want to understand the impact of the thermal bridge on energy use.

For your case, I would use two separate HBSrfs to model the above-grade wall in E+: one that has a thermally-bridged construction derived from THERM and another that has the typical construction (without the effect of the floor slab). The height above the ground that you make the thermally bridged HBSrf should match the height of the above-grade portion in your THERM model. I wouldn’t worry too much about accounting for thermal bridges in your below-grade zone as E+ models ground zones without much envelope heat loss by default (it assumes a constant ground temperature of 18C).

So I would say your first hypothesis is sufficient but breaking the above-grade wall surface into two surfaces will give you the most accurate model.


Thank you very much Chris for your quick answer!

I absolutely agree with the idea to change only one layer in order to better take into account all physical parameters of the other layers.

As for my case, I could even run a first THERM simulation of the whole first floor wall with the thermal bridge in order to understand (by looking for examples at temperatures) at what height I should “break” the first floor wall into two different surfaces. (See attached pdf) Then I could create the surfaces in my E+ model accordingly and run a focused THERM simulation for the thermally bridged part of the wall above the thermal bridge (cyan box, second column of the scheme) and do the other E+ building component with typical values without the THERM simulation. This way there should be a better numerical representation of the phenomenon even in terms of surface temperature and so on…

Therm_Energyplus_question2.pdf (326 KB)

Hi, I know this is an old post, but I don’t see any other mention of PSI values in the forum. So, just to be clear, to get the actual PSI value, you need to export the file and run it in Therm?

@Emccormi ,
I think the reason why you don’t see PSI values mentioned a lot on the forum is that most of us just refer to them as U-Values or U-Factors. You can see how to get these in the starting example file for the THERM components:,-1473.7009550346077

To get these values, you just assign a U-factor tag to the boundary conditions that you want to want to measure heat flow across when you create the boundary conditions:,-1423.700955034608

1 Like

hah! of course. Silly me.