-
Notifications
You must be signed in to change notification settings - Fork 157
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EnergyPlus incorrectly dismisses schedule values if set outside of zone time step #2000
Comments
The example is on branch @kbenne : Please see this test case. It looks like E+ ignores the setReal commands in between zone timesteps, which gives a wrong result in this test. |
For release, either fix it, or update the info section in |
Won't be fixed immediately, todo:
|
This is because #2000 won't be fixed soon. This way, the documentation is correct regarding the current behavior
Commit 3d3bab5 is on branch |
This is due to #2000 being fixed later
mwetter to check if this is fixed on the release, it should be fixed in the Spawn binaries |
@kbenne : This is not fixed with the latest E+ binaries, i.e.,
I tested it with b9b498e on branch |
There is a test https://github.com/NREL/Spawn/blob/release/0.1.0/test/test_single_family_house_lights_control.cpp#L14 which confirms that when you actuate a schedule, the corresponding output (a lighting load in the test) is updated immediately. However, there is a fair bit more going on in the example you have outlined here. I'm going to have to think about it a bit more, but I think generally the title of this issue is not the root thing causing the results we see in the graphs. |
It appears that the heat balance in EnergyPlus does not see the average heat input over the time step, but rather it sees an instantaneous value and therefore the intermediate settings do not appear in the energy balance. |
These new tests show the impact of schedule input changes on the zone sensible heat gain. ref lbl-srg/modelica-buildings#2000
Hi @mwetter , I'm hoping to revive this discussion and I added a few more tests to help illustrate. You do not need to See the new test in this commit. |
@kbenne : Advancing time and integrating the heat balance to the point set with |
In our most recent project meeting we discussed that the wall temperatures will still only update at the frequency of the EnergyPlus time step. I feel like this is acceptable, but I also recommend that I make a change that will enforce a one minute EnergyPlus time step for all Spawn simulations. |
@kbenne : I assume you mean the time step of EnergyPlus and not the synchronization time step. A 1 minute synchronization time step would computationally be too costly (due to many events being generated). Even if this is only the EnergyPlus internal time step, I wonder
Wouldn't it be better to check when the input is changed, and then advance time to that point (within a minute resolution if that is a constraint in EnergyPlus)? |
@kbenne to look into it. |
The model
Buildings.ThermalZones.EnergyPlus.Validation.NonalignedSchedule
tests the following:Model that validates that schedule values need not be aligned with the EnergyPlus time step. In this situation, if it represents a continuous-valued schedule (such as for an internal gain), EnergyPlus should time-average the schedule values over the EnergyPlus time step. If it represents an instantaneous value such as a control state, then EnergyPlus should use the instantaneuous value at the start of the EnergyPlus time step. This validation tests a continuous-valued schedule.
Both buildings are identical, but in one building, the schedule that determines the internal heat gains switches on and off every 10 minutes, while in the other one the schedule is on from 3 minutes and off after 8 minutes, but the schedule values is twice as large in order to add the same amount of internal heat to the zone over an EnergyPlus time step. Because EnergyPlus uses a fixed time step, both models must result in the same air temperature.
The input to EnergyPlus which uses 6 time steps per hour is as follows:
This input is sampled every 60 seconds.
EnergyPlus computes the following room air temperatures:
Hence EnergyPlus seems to ignore the schedule value.
The text was updated successfully, but these errors were encountered: