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

Dynamic internal mass in warehouse with EnergyPlus

asked 2020-02-05 09:56:57 -0500

aubr gravatar image

updated 2020-02-07 06:20:51 -0500

Dear forum, In the context of a warehouse simulation with EnergyPlus, I would like to take into account the flow of products (massive amounts of wood), which come in at the same temperature all year round, whereas the warehouse air temperature can vary widely (between ~5 and 25 °C). I am interested in air temperature, but also wood temperature. At present, wood is modeled as InternalMass.

  • The first possibility that comes to my mind is to model the flow of wood as an internal heating or cooling load, as in this topic, using OtherEquipment and some schedule or EMS script. However, the load would be provided directly to the zone, rather than to the wood.
  • Would there be a way to model the effect for wood temperature more accurately?
  • Could for instance Construction:InternalSource be used in combination with InternalMass?
  • Would it be a viable approach to use a "zone in the zone" to model these wood products?
  • Or do you have any other idea on how to model this?
edit retag flag offensive close merge delete

3 Answers

Sort by » oldest newest most voted

answered 2020-02-06 10:52:57 -0500

updated 2020-02-06 10:57:00 -0500

TL;DR - I think that your best approach is to use EMS to override the amount of heat added or removed from the warehouse due to incoming product using an OtherEquipment object.

Interesting question! Here are my initial thoughts:

  • The InternalMass object will only account for heat exchange between the internal mass surface (i.e. products) and the zone that contains the internal mass surface (i.e. warehouse receiving or storage zones). The Engineering Reference gives more details about how this impacts radiation and convection heat transfer.
  • EMS is a great tool to apply custom changes that EnergyPlus normally doesn't allow, but it doesn't give you total control to override ANYTHING in the model. The things that you can override are called actuators, and you can see that it is a pre-set list. For example, there is no actuator option for anything related to InternalMass objects.

Here are my responses to your questions about the best approach:

  • Model the flow of wood as an internal heating or cooling load using OtherEquipment and some schedule or EMS script. I believe this is your best option. This would be a load provided from the wood into the zone, which EnergyPlus then accounts for when determining new HVAC system requirements to provide to the zone. OtherEquipment objects also don't have any energy use metered by EnergyPlus to represent natural heat exchange, which is what you want to represent. You would use a similar equation like the other post you linked to determine what that heat exchange value should be based on warehouse zone air temperature and wood temperature and use the Power Level actuator for OtherEquipment.
  • One option to model the effect of wood temperature more accurately is to draw a surface object representing wood in the model. This wood surface object would then calculate a surface temperature at both the inside face touching the warehouse zone and the outside face (also touching the warehouse zone). However, even using EMS, you cannot use an actuator to override both faces (inside and outside) -- only the outside surface boundary conditions for convection air temperature and radiation effective temperature.
  • Yes -- a Construction:InternalSource could be used in combination with InternalMass. The InternalMass object would reference the Construction:InternalSource object to know the material layers and where the heating element is located between those layers. The easiest way to define the heating element is with a ZoneHVAC:LowTemperatureRadiant:Electric object, since that can define electric element heating on its own. The alternative would be a hydronic (water-based) radiant object, which would require creating an EnergyPlus plant loop so that the water flowing through the wood gets heat from a boiler or some other means. However, all radiant objects try to meet heating/cooling thermostat setpoints in zones, so you would need to use EMS to override that heating capacity to a proper heat transfer value depending upon wood temperature. EMS actuator options for radiant systems are limited to water flow rate through hydronic panels ...
edit flag offensive delete link more


Dear Aaron, thank you so much for your comprehensive and very interesting answer. I will go for the first option, as advised.

aubr gravatar image aubr  ( 2020-02-07 04:49:37 -0500 )edit

answered 2020-02-06 11:39:19 -0500

Aaron (as usual) has done a masterful job of expanding on the topic :) As is usual for this sort of challenge, the modeler knows "enough to be dangerous" and probably enough to model a typical scenario, but that's not enough for the "real" situation. For example:

  • What is the wood's density (oak, pine, etc.)?
  • what is the shape shape (that will affect heat exchange with the zone)?
  • What are the arrival and unload patterns and schedules?

For a production facility, these things probably have a high degree of variance, so the goal of the model is to understand the general story, tinker with some key variables to assess how important they are, then figure out how to best represent results in a manner that provides useful understanding to the client. In other words, ie, "all models are wrong, but some are useful." Try to make is as useful as possible, but don't get bound up with exactness / perfection.

edit flag offensive delete link more


Dear Jim, thank you for your perspective. I do agree with you, the detail I asked about is very probably of little relevance compared to other model limitations and uncertainties of the situation. Still, I found it interesting enough to ask.

aubr gravatar image aubr  ( 2020-02-07 04:54:59 -0500 )edit

answered 2021-01-27 08:46:43 -0500

rafael.alonso gravatar image

Hi all,

Is there any update on this topic?

I need to model an Internal Mass object that varies accross the year. We are dealing with a wine cellar, where massive tanks are filled with wine during a few months, and left empty for the remaining part of the year.

Ideally, I´d have a schedule applied to the Internal Mass object, but I see that is not possible, not even through the EMS.

Thanks, Rafael

edit flag offensive delete link more


Hi Rafael, indeed you cannot add a schedule to the Internal Mass object, even through the EMS. What you could do is follow the first method indicated by Aaron above: with EMS, do a calculation of the tank temperature yourself, taking into account zone temperature and available mass (from a schedule), and model the heat exchange between tanks and zone with an OtherEquipment object.

aubr gravatar image aubr  ( 2021-01-27 09:30:20 -0500 )edit

thanks @aubr for the quick reply.

I was hoping there would be a faster method, but I see that is the only option. We are still at a very early stage in this model/project and being responsive with the design team is our priority. I´ll probably look into incorporating the first method later on.

rafael.alonso gravatar image rafael.alonso  ( 2021-01-27 11:49:23 -0500 )edit

@rafael.alonso for your use case, couldn't you just make two copies of the model (one with wine and one without) and then run each one for the correct part of the year and piece together the outputs with post processing?

anchapin gravatar image anchapin  ( 2021-01-27 13:04:59 -0500 )edit

that's actually a great idea - somehow I hadn't thought of this. Thanks!

rafael.alonso gravatar image rafael.alonso  ( 2021-01-28 06:08:17 -0500 )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: 2020-02-05 09:56:57 -0500

Seen: 162 times

Last updated: Jan 27