Set ground temperature and terrain input in HB Energy

Hi guys,

I just try using HB Energy components to build Energy Model in HB 1.0 and looks like there are no components for inputting ground temperature (HB simPar doesnt provide it)) and terrain (whether city, ocean, suburbs etc). Looks like the possible solution is to use additional strings to input those right now. I have checked one example in this forum but I think I need more examples of additional string formats and explanation of how to write such a format in GH panel (looks like complicated for me). Can anyone help me about this?

Anyway, I really appreciate the development of Ladybug Tools up to now. I hope for the next development, HB Energy can add these inputs

cc: @chris @devang @mostapha

Hi @sunarywend ,

You are correct that neither of these parameters are exposed on the components of the LBT plugin right now. However, the terrain is exposed on the SDK layer and can be added with a single line of Python. I can also just expose it on the SimulationParameter component. Give me until the end of today and I’ll push an update that gives access to it.

For the LBT plugin, I think we would sooner try to expose some of the more accurate/sophisticated ways to compute ground temperatures like KIVA or GroundTemperature:Undisturbed:FiniteDifference since supplying monthly temperatures to all building surfaces really doesn’t add that much accuracy to the simulation in most cases. Moreover, it leads people to be tempted to plug in the EPW ground temperatures, which the EnergyPlus Input/Output reference explicitly says not to do. But, if someone really knows what they are doing and they have gone through an energy balance calculation to estimate average monthly ground temperatures for all building surfaces, they can use additional strings like you said. Here’s an example showing how to to it The monthly ground temperatures need to be added with additional strings: (82.5 KB)

1 Like

Wow, many thanks! Like your feedback!

About ground surface temperature, I think it’s important for me because I run the simulation for the case of tropical country (Indonesia). As there is no input for ground temperature, I noticed that the model automatically set the ground temperature to 18C -Maybe because I use weather file which is not provided in Library (custom). So, the model results in significant difference of air temperature between ground floor and first floor, which might be inaccurate result.

Anyway, I think it will be useful if you provide guidance or quick video in your youtube or here about writing script in panel for additional strings component. I might understand it sooner or later with an example file you share here, but I think many members in this forum would like to know of how you actually write it based on IDF or another format with some examples :Whether you make the string by copy-paste from one format or manually write it, or do you use 'TAB" or “SPACE” to separate between input value and input name in panel. To be honest, these technical things pop out in my mind before I want to try create additional strings, which makes me overthinking.


@sunarywend ,

I see. Changing the ground temperature makes sense if the average annual temperature of your climate is greater than your room setpoint temperature. In that case, you might want to set it to be ~2C above your room cooling setpoint rather than ~2C below a typical heating setpoint (18C).

For the additional strings, all that I do is the following:

  1. Create the EnergyPlus object that I want in the IDFEditor.
  2. Save the IDF and open it in a text editor like notepad or Notepad++
  3. Copy the object from the text editor into a panel and connect it to add_str_

And that’s it. No need to learn the specifics of the the IDF syntax as the IDF Editor takes care of it all for you. Also, the use of tabs and spaces in the IDF syntax is not very strict. So you could change the tabs/spaces a lot and it would still be valid. As long as your commas and semi-colons are in the right place.

FYI, the Simulation Parameter component now has the terrain input:

You can get it with the “LB Versioner” component.

1 Like

Dear all,
For outdoor comfort studies, is there a way to calculate the ground temperature with finite elements in the new HB Energy (just as the Honeybee legacy component “CreateEPGround” used to do it with Honeybee zones and SoilTypeOrMat parameter)?
Kind regards,