At kW Engineering, we create a lot of detailed building models to characterize the energy use of new and existing buildings, which can be a time and effort-intensive task. With recent advances in building energy modeling tools, modelers now have a code-based access point that can improve the modeling process significantly and advance the use of simulation in analyzing energy efficiency if you know how to code. Here’s why you should consider adding computer programming to your energy modeling toolkit.
Modeling is about data representation
Creating a detailed building energy model entails describing thermophysical aspects of a building in a format that fits the input requirements of the simulation engine. Many times, the building information provided to the modeler needs to be interpreted and translated into the proper inputs. This process of mapping building design information to a simulation program input creates a large amount of data relationships that must be managed by the modeler. For example, each room in a building is associated with material properties and orientations, occupant usage patterns, loads, HVAC systems details and connections, utility rates and equipment costs. This building information is sourced from different places in drawing and specification sections, submittal documents, discussions with stakeholders, etc.
Managing large amounts of building related data is challenging. While much of the model input data can be sourced and re-used from standard templates, any design deviation from templates should be documented and used in the program. Many modelers are familiar with managing large spreadsheets full of this data, which can be cleverly configured to produce text-based model input. While spreadsheets are great for some things, the calculations and references in them are difficult to review, test and alter for different scenarios. Whereas, text-based code can be easily reviewed, versioned and tested. When it comes to managing large quantities of data efficiently and nimbly, spreadsheets alone can’t compare to code.
Code can automate and simplify modeling
When I first started modeling in eQUEST, my days were full of clicking through input windows and manually entering data to the point where I became very skilled with the keyboard numpad. Of course, while eQUEST did (and still does) have the capacity for programmatic input modification, it was obscured in a custom language for which there were few resources to aid a beginning modeler. Later as my work moved into IES-VE and EnergyPlus/OpenStudio, the inputs seemed to get more complicated and less forgiving.
When I began scripting with OpenStudio I quickly realized the power of a few lines of code in populating model inputs quickly and reliably. Beyond that, I began to automate more and more modeling tasks, such as processing building design and operational information to calibrate model input, quickly generating and processing parametric analyses, or customizing model output reporting. Recent efforts to translate energy code requirements into computer code exemplify the potential for shifting the difficult and/or tedious parts of energy modeling into the realm of computer automation, freeing modelers to analyze, interpret, and recommend.
Modeling with code allows for customization
Whether for design assistance, comparative performance evaluation or incentive assistance, computer-based building energy modeling is a tool with many uses. Being able to harness flexibility and tailor a workflow to fit your needs can unleash the possibilities of simulation in enhancing the energy efficiency of buildings. At kW, this means developing custom cross-platform tools to integrate whole-building modeling with trend data and predictive analytics to provide value to our clients while minimizing the time and expense involved.
Where to begin?
Current energy modelers looking to expand their capabilities by incorporating coding into their work will find multiple opportunities depending on their modeling platform of choice. IES-VE offers Python scripts for processing output data. The Honeybee and Ladybug projects offer access to EnergyPlus in a ‘visual programming’ environment, also supported by Python. And the OpenStudio SDK has multiple entry levels for programmatic access to it and the underlying EnergyPlus engine, through C++, Ruby and C#. Indeed, there has never been a better time to start incorporating code into your modeling practice which benefits you and your clients. For modelers with interest or experience in using code to automate and improve modeling, we’re always looking for help, so get in touch!
Like this post? Share it on LinkedIn.