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

Has anyone used the Variable Interval Schedule sets in OS 1.6?

asked 2015-02-08 21:34:02 -0500

Mike Sahm's avatar

updated 2015-07-10 09:10:02 -0500

I am trying to implement complex and variable schedule events either using OpenStudio Variable Interval Schedule sets or by accessing underlying EnergyPlus Schedule:Day:List or Schedule:Day:File resources. I am able to use the IDF file generated by the OS run, manually modify the schedules to add a Day:List resource and assign it to an equipment load and successfully launch and run the case using EP-Launch. I have not tested the Day:File manual addition yet but believe it will also work. I am not able to import this modified IDF back into OS after it has been modified but may be using the import operation incorrectly. I am hoping there is a more streamlined method that could be applied in OpenStudio and take advantage of the UI and post processing. I am interested in how the Variable Interval Schedule that is present in the OS 1.6 library works or any other similar approach. I was not able to find any references to this or examples. Thanks

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2015-02-09 01:06:20 -0500

updated 2015-02-09 01:25:27 -0500

Here is an example where I create a ScheduleInterval from a ScheduleRuleset. Keep in mind that you won't be able to inspect the resulting schedule in OpenStudio application. While it is not as similar to ScheduleVariableInterval as I thought, it still may be a helpful example.

yd = model.getYearDescription
start_date = yd.makeDate(1,1)
end_date = yd.makeDate(12,31)

values = OpenStudio::DoubleVector.new
day = OpenStudio::Time.new(1.0)
interval = OpenStudio::Time.new(1.0/48.0)
day_schedules = schedule_ruleset.to_ScheduleRuleset.get.getDaySchedules(start_date,end_date)
day_schedules.each do |day_schedule|
  time = interval
  while time < day
    values << day_schedule.getValue(time)
    time += interval
  end
end
time_series = OpenStudio::TimeSeries.new(start_date, interval, OpenStudio::createVector(values), "")
schedule = OpenStudio::Model::ScheduleInterval.fromTimeSeries(time_series, model).get
edit flag offensive delete link more

Comments

ScheduleFixedInterval is meant for timeseries that are reported at regular intervals. ScheduleVariableInterval is for timeseries that are reported at irregular intervals. This is useful for variables like daylighting which is 0 for the entire night, you can save considerable file size by only reporting the points where the variable value changes. There is a problem with the translation of some of these schedules to E+ right now due to the number of field limit in E+ for Schedule:Compact, https://github.com/NREL/OpenStudio/is....

macumber's avatar macumber  ( 2015-02-09 09:34:32 -0500 )edit

Your Answer

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

Add Answer

Training Workshops

Careers

Question Tools

1 follower

Stats

Asked: 2015-02-08 21:34:02 -0500

Seen: 188 times

Last updated: Feb 09 '15