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

Energyplus co-simulation - sizing results different

asked 2018-09-15 14:19:02 -0600

akat022 gravatar image

updated 2018-09-15 15:58:13 -0600

I am running a co-simulation with Energyplus (v8.5) and Python using the PyEp package ( The energyplus model is based of the DOE 'Large Office' archetype model (

I want to validate the performance of the co-simulation by comparing the results with the reference file run straight from energyplus. For this example, I am changing the following setpoints such that they follow the original schedule of the reference file:

  • CW-Loop-Temp Sched

Upon running both simulations and comparing results, I find that the results of the sizing are different, e.g. the component sizing results.

Based on this, I suspected that the sizing is being run differently in the co-simulation from the reference simulation. One reason I can see for this is that the zone temperature setpoints for the winter design day and summer design day in the schedules is missing (as the "Schedule:Compact" object needs to be deleted in place of the "ExternalInterface:Schedule" object). This point was actually also mentioned in the following unmethours post (although without a solution):

So my question is how the zone temperature setpoint (which is one of my manipulated/control variables) information for the design winter and summer days can be fed to the co-simulation?

edit retag flag offensive close merge delete


I did find the following in the External Interfaces Application Guide (

"For the objects ExternalInterface:Schedule and ExternalInterface:Variable, the field “initial value” is required, and its value will be used during the warm-up period and the system-sizing".

So how do I get around the fact that the schedule value changes between hours and between the winter and summer design day?

akat022 gravatar imageakat022 ( 2018-09-16 04:46:14 -0600 )edit

1 Answer

Sort by » oldest newest most voted

answered 2018-09-18 16:17:56 -0600

In this case, use ExternalInterface:Actuator and keep the base Schedule:* object in the idf. From the Input Output Reference for ExternalInteface:Actuator "Initial Value"

This field contains the initial value. If a value is specified, then this value is used during the warm-up period and the system sizing. If no value is specified, then the actuated component will only be updated once the time stepping starts, i.e., after the warm-up and the system-sizing. This allows, for example, to schedule a setpoint with a Schedule:Compact during warm-up and system-sizing, and then overwrite the value of this schedule during each zone time step based on a feedback control loop that is implemented in the BCVTB.

edit flag offensive delete link more


Thank you very much, have tried this and now the sizing results are consistent!

akat022 gravatar imageakat022 ( 2018-09-19 09:19:06 -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

1 follower


Asked: 2018-09-15 14:19:02 -0600

Seen: 183 times

Last updated: Sep 18 '18