1

Energyplus co-simulation - sizing results different

I am running a co-simulation with Energyplus (v8.5) and Python using the PyEp package (https://pyep.readthedocs.io/en/latest/). The energyplus model is based of the DOE 'Large Office' archetype model (https://www.energy.gov/eere/buildings...).

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:

  • CLGSETP_SCH
  • CW-Loop-Temp Sched
  • BLD_LIGHT_SCH

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): https://unmethours.com/question/25753...

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?

akat022's avatar
65
akat022
asked 2018-09-15 14:19:02 -0500
__AmirRoth__'s avatar
4.4k
__AmirRoth__
updated 2018-09-15 15:58:13 -0500
edit flag offensive 0 remove flag close merge delete

Comments

I did find the following in the External Interfaces Application Guide (https://energyplus.net/sites/default/...):

"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's avatar akat022 (2018-09-16 04:46:14 -0500) edit
add a comment see more comments

1 Answer

1

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.

MJWitte's avatar
9.7k
MJWitte
answered 2018-09-18 16:17:56 -0500
edit flag offensive 0 remove flag delete link

Comments

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

akat022's avatar akat022 (2018-09-19 09:19:06 -0500) edit
add a comment see more comments