EP-construction layer by layer temperatures

Hi all,

Does anyone know if it is possible to output the annual hourly temperatures between the layers in a EP-construction?

I’m interested in the output in the context of knowing the annual temperature distribution in a window

Thank you

If i understood right, your best friend will be THERM . Check for many of the examples in Hydra.
A second option is using a component i wrote, but still in development, that can give you the internal temperatures per material layer. Attached an example of it. The component is located in the HB WIP tab (133).
Hope it helps,
CondensationCalculator_4_Forum.gh (489.0 KB)

Yes you understood it right - thank you very much !

I’ll add that all THERM simulations are steady state (so they assume that the interior + exterior boundary conditions have been that way for a significant period of time, like a few hours). This may still be good for your purposes but it’s just something good to be aware of as it’s a critical difference from E+ simulations, which are transient.

As long as you are good with the steady state assumption, you can model a wide array of cases with THERM, including ones with solar radiation, which you can account for with the Custom Rad Environment component.

@chris - thank you for your response

Quick question:
Given that a transient simulation using EPW would be preferable do you have any suggestions of how one might do that (or if it is even possible)? Otherwise I’ll make a “worst case scenario” steady state investigation.

To elaborate, I’m investating possible radiation asymmetries of a Complex Fenestration System, where the shading layer is mounted between the glass layers.

@tobiaspedersentsp ,
I’ve had a need to do this type of thing at one point when we had shades between glass panes overheating to really high temperatures. If you were investigating a winter design condition without sun, I would say that you should use THERM but, for a condition like this where the orientation of the glass in relation to the sun is important, you should probably use another method.

In my case, we were able to get a decent approximation of the temperature of the shades by modeling the space in between the two panes of glass as am EnergyPlus zone and making sure that the constructions on each side of the zone matched the glass on either side of the gap. We then added some interior blinds into the zone using the EnergyPlus Window Shade Generator. We used the resulting interior surface temperature as an estimation of the temperature of the internal shades. In your case, you can use the difference between the two sides of the shade glass to get a sense of the thermal asymmetry.

For clarification, I should say that there’s no EnergyPlus output for the different temperatures within a construction but, by breaking your construction into zones like this, you can get decent estimates of those numbers.

Lastly, I’ll mention that the method above was hacky and not necessarily endorsed as state-of-the art but it demonstrated that high temperatures were possible given the setup of our case. If you really need to do state of the art stuff, you should probably use a combination of radiance to get radiation fluxes and then send those fluxes through an OpenFOAM simulation to account for the air circulation in the cavity. However, the learning curve to do that is at least a year whereas you can get the rough approximation from E+ in a day or two of setup and validation.

Thank you very much Chris

Sorry, could you guide me?
I came across the same question, but I wrote algorithm with LBT. I need to know each layer temperature with LBT components. Furthermore, I want to obtain layer by layer temperature for a construction that I have added it to ladybug-tools Not for a construction of its Library.
Have can I do that?

No good news from my side.
The THERM option is not developed (yet?) for LBT.
The component i wrote at that time for Legacy needs to be updated to work with LBT. Not complicated but need to find the time to do that …

1 Like

I’m looking forward to see it.
Hope you find the time soon.

FYI, @AbrahamYezioro , you might notice that the Construction classes of the LBT SDK have this temperature_profile method that I was thinking could be used to support visualizations like what you did in Legacy. So you might be able to put together a proof of concept if you wanted and, at the least, you know that we’ve be thinking about this.

1 Like

Hi @chris,
This looks cool. When time comes … i’ll take this into account.

1 Like

Hi @chris,
Started to try to understand how the temperature_profile works.
I think it is working properly, but want to be sure.

Do you mind taking a look?

If it is ok, the @mlk can use it for his purposes for now.
At some point i’ll try to get into the visual.

WallTemperatureProfile.gh (27.0 KB)


Thank you so much for your time @AbrahamYezioro
but now I have a new quetion from @chris . Whenever I obtain inside or outside temperature of a surface or sub-surface through LBT, Does it use this [temperature_profile ] ? I think for these outputs the EPW is very important, especially when we need hourly outputs.
This " WallTemperatureProfile.gh " seems doesn’t use any epw at all, while epw is so crucial

The profile is more intended for extreme conditions (peak if you like). This in order to check the condensation probability inside the wall for instance.
In any case, the temperatures, indoor and outdoors are inputs that you can provide and change. I don’t see why not to give your own, coming from calculations and/or EPW’s.

It works.
So interesting
Many thenks @AbrahamYezioro

Very nice, @AbrahamYezioro ! It looks good to me.

It might be good to add some defaults for the input arguments like what you see exist on that temperature_profile method. Also, I see that you aren’t actually passing the input height and pressure to the method and you have some hard coded defaults here.

FYI, I would also recommend using a code style guide like PEP8. It will make your code cleaner and more readable with guidelines on what to capitalize or write with underscores.

Hi @chris,
Glad you liked.
So far it is just a proof of concept. Once you say it is ok i can start polishing it.

One think that i want to do also is calculate the RH on each layer to forecast probability of condensation. I did this in the Legacy, but right now i need to see the meaning of this implementation using LBT’s SDK.


1 Like

Sounds good, @AbrahamYezioro ! This psychrometric module will likely be useful for your hygrothermal use-case there:


1 Like

Sorry, could you tell me how can I find the formula used for temperature calculation in the component?
Thank you in advance