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

Revision history [back]

click to hide/show revision 1
initial version

5 years later... Just sharing my personal experience to anyone struggling with holidays definition: forget the schedule rulesets and don't edit your weather file!

I struggled quite a bit with the schedule rulesets... as good and flexible as they are (and I like how they are displayed in OpenStudioApplication), it is a real pain to maintain them for simulating through the whole year. If you study for example a school building, you typically need to define all the school and public holidays. If you have just one schedule that needs this information, it is totally fine with the rulesets, but you will probably need more then that (e.g. one schedule per classroom if each classroom has its own timetable and occupancy). I found no way to combine a simple occupancy schedule that is not aware of the holidays with another holiday-aware generic schedule that I would re-use multiple times.

That's why I ended up converting all my rulesets schedules to compact schedules that are not holidays-aware (you can't edit in openstudio but you can do it easily by hand - you need to really define only the weekdays because for holidays and weekends, you default to 0 or any other value of your choice... so your schedule in the end is maybe 20 lines, much less than all the objects that are created for a ruleset and that makes it difficult to edit by hand). Then you turn on "Use weather File Holidays and Special Days" in the "Advanced RunPeriod Parameters" and you use the measure InjectIDFObjects to import your holidays that you had defined as RunPeriodControl:SpecialDays in an IDF file. With this solution, you have to do more manual work and you can't visualize your holidays in OpenStudio, but in the end this is way easier and way less error-prone.

As an alternative to the IDF injection, you can define the holidays in your weather file... but this is somehow exactly the same as writing RunPeriodControl:SpecialDays objects, just it is more complicated.