Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question

How is the ground temperature calculated in EnergyPlus?

asked 2016-03-14 01:09:21 -0600

oat's avatar

updated 2016-03-15 09:23:33 -0600

May I ask how the monthly ground temperature is calculated in EnergyPlus?

What is the depth of soil where the ground temperature is measured?

Thank you!

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2016-03-15 09:17:44 -0600

updated 2020-04-13 08:27:51 -0600

During an EnergyPlus simulation, monthly ground temperatures are NOT calculated, but set as an input by the user. Monthly "undisturbed" ground temperatures found in the STAT file for each location should NOT be used for ground-contact surfaces of conditioned spaces. These ground temperatures should be used for specific applications according to depth. For example, Site:GroundTemperature:Shallow is for 0.5-m depth and should interact with surface ground heat exchanger objects.

EnergyPlus does have auxiliary programs that can be simulated independent of the IDF file and determine detailed ground heat exchange depending upon if the model has a Slab or a Basement. These programs will model ground heat exchange for ground contact surfaces and produce monthly ground-contact surface temperatures, either as core and perimeter or as an average across the surface. These temperatures need to be transcribed into your IDF file.

If you come across a situation where the Slab and Basement auxiliary programs can't model your specific situation (insulation placement, insulation amount, etc.), you could try to use Kiva. Kiva is an open-source ground heat transfer modeling tool developed by @Neal Kruis at Big Ladder Software (DISCLAIMER: he is my colleague). You can download it for free HERE.


Kiva is a standalone simulation tool, but it has been integrated into EnergyPlus as of EP v8.7. You can ask Kiva to calculate ground-contact surface temperatures every timestep by defining Foundation:Kiva and related objects in your EnergyPlus input file ending in IDF.

edit flag offensive delete link more


@Aaron Boranian I would really like to be able to use the auxiliary slab program but I'm not sure how to do this? I'm not able to write measures, is there one already created that I can use for this? Or is it already built into the OS GUI?

jaklloyd's avatar jaklloyd  ( 2020-11-11 09:17:46 -0600 )edit

@jaklloyd the slab auxiliary program is a pre-processor -- a stand-alone tool that you use BEFORE an EnergyPlus simulation. It doesn't require using a measure and can be found in your EnergyPlus installed folder under C:{EnergyPlus Version Installed}\PreProcess\GrndTempCalc\Slab.exe. That folder also has example IDF files for reference.

Aaron Boranian's avatar Aaron Boranian  ( 2020-11-12 14:40:53 -0600 )edit

@jaklloyd if you have only installed EnergyPlus as part of the OpenStudio GUI, then you will not have this PreProcess folder. You will need to install EnergyPlus directly.

Aaron Boranian's avatar Aaron Boranian  ( 2020-11-12 14:51:10 -0600 )edit

@Aaron Boranian thanks, I have played around with the slab program now and have edited the example file to try to replicate my building.
For the "Indoor Average temperature set point {C}" for each month, is is it recommended to run OS/E+ with fixed floor temps, then calculate monthly average indoor temperatures, then input into slab, then update the model, then re-run the simulation? If not, how do you obtain average indoor temperatures?

jaklloyd's avatar jaklloyd  ( 2020-11-17 05:09:43 -0600 )edit

@jaklloyd where do you define this indoor average temperature set point? I'm not finding it for any of the Basement objects in EnergyPlus.

Aaron Boranian's avatar Aaron Boranian  ( 2021-01-12 12:58:11 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer


Question Tools



Asked: 2016-03-14 01:09:21 -0600

Seen: 3,075 times

Last updated: Apr 13 '20