-
Notifications
You must be signed in to change notification settings - Fork 393
20150724 Berkeley
July 24-25, 2015 - Berkeley California - LBNL
##Introductions and overview, technical and agenda mods (Amir)
Many team members were in the room while some were on the phone. Modera and Kosney were present and are not normally in team meetings.
##SOEP and ZHB refactoring (Amir, Michael)
Michael Wetter made presentation and described that SOEP has short timesteps and would be written in Modelica. EnergyPlus calls Ptolemy II since it does not save state between warmup and run-periods. Slide on “calling sequence” shows how everything is linked together. Users would ultimately need to have JModelica and C compiler to work with SOEP. Some debate began about shipping compiler to users. OpenStudio will shoulder the burden of integrating pieces so GUI’s such as DesignBuilder or Simergy would not be supported until the start using OpenStudio. One approach is to wrap the portion of EnergyPlus as an FMU only.
##Airflownetwork and Duct Losses (Amir)
This topic was skipped.
##Window model consolidation/redesign (Dan, Tianzhen, Charlie) [Note 1]
Simon Vidanovic gave the presentation. Three different models in EnergyPlus – Wilkelmann, complex fenestration BSDF, ASHWAT (equivalent layer) were described all of which include both thermal and solar/optical (in window only) models. Simon is going to consolidate routines for all three models. The WINDOWS code would have an API that is exposed to EnergyPlus and others that would be consistent. Current restrictions on what works with each model such as external shading, internal shading, frames and dividers and number of layers will be removed.
##Usability – removing/consolidating features (Luigi)
Dan Macumber gave a presentation about related topic concerning the shading control and usability and “complex fenestration states” instead of other “construction” objects. Also showed example of “materials” and how they are also inconsistent from a user’s perspective. Users need to know more about the internals than they really need to understand how to use each model. Other related issues of usability are simple geometry, delight daylighting, ground models, airflow network/zonemixing/hvac, ventilation objects.
##Benefit FOA –Hybrid modeling (Tianzhen)
Tianzhen Hong gave the presentation. In this context, “hybrid” is mix between forward physics model like EnergyPlus and data driven model. The hybrid model would use easily measureable data like air temperature as a way to determine the unknown inputs like thermal mass. He compared two approaches: internal mass approach with capacitance multiplier approach. Multiplier of 12 was found to be best using capacitance multiplier approach. Users could measure temperatures in real building over weekend when HVAC system is off to use this feature. Some people already provided comments on the NFP.
##New attic model (Amir, Fraunhofer)
Jan Kosny of Fraunhofer USA gave a presentation about Fraunhofer CSE Roof/Attic Thermal Performance Simulation. Fraunhofer USA has 50 employees but internationally has 24,000 employees. The existing simulation models can be very far off from measured data of residential attic testing. The big issue is that we don’t really know the performance of attics with air flow through them. The FATM model closely matches test hut performance except in a few cases that are being resolved. In FY2018, they are planning on initial integration of the FATM computer program with EnergyPlus. Team members expressed that they would like it sooner. Jan said that some source code will be available sooner for review but not ready for integration. Currently, Fraunhofer is still working on experimental results trying to resolve issues with predicting results.
##Hybrid rooftop unit module (Mark Modera UC Davis) –
Mark Modera gave the presentation. They have an undergraduate research fellowship for energy efficiency in buildings. Part of scope is hybrid rooftop unit research and in this context “hybrid” is either evaporative plus vapor compression or vapor compression plus desiccant. Evaporative cooling supplemented DX rooftop units by cooling the condenser as well as precooling the inlet air. They needed model for this configuration so one of the projects objectives is to develop flexible model for EnergyPlus to do hybrid modeling. The “HBBM” is the abbreviation for the Hybrid Black Box Model which they are planning on making part of EnergyPlus. It is modeled as ideal system that uses the mode which has the least energy consumption rather than try to mimic the manufacturer’s controls for the modes of operation. The model could be done by cosimulation but would prefer to be directly part of EnergyPlus.
##Openstudio to Modelica model demo.
Marco Bonvini gave the presentation. He was inspired by a similar approach that connected EnergyPlus to Matlab. For this effort he has focused on the envelope so far and generates Modelica code.
##Feature voting platform (Neal)
Neal Kruis made a presentation on a public portal for feature requests to the team that allow user voting. The web site:
http://energyplus.uservoice.com
is just a mock up for now. The web site would include a way to query users about the priority between two different items as well as voting on specific topics. The login will be the same as for EnergPlus.net and hopefully for OpenStudio also. During discussion Amir described that during the peer reviews of EnergyPlus at DOE, that it gets criticism for not having guidance from users.
##Version management (Edwin) [Note 2]
Edwin talked about how to minimize transition burden on user interfaces and users. The iteration builds may trap users updating their files to the iteration build but not having a way to update their files from the iteration build to the release builds. One approach to solve this is to get rid of iteration builds and let people compile from source when they want the fixes. Stuart pointed out that bug fixes should be different branch than new features and recommends using smarter version numbering.
##Programming standards/styles (Kyle) [Note 3]
Kyle showing the wiki pages related to coding standards. We should make a decision between snake and camel case. It was decided to make changes based on Stuart recommendations. Any changes should be done right after a release before many new branches have been created to minimize disruption. We also discussed the use of tabs versus spaces. Another issue raised was that raw memory access should be avoided. The existing (Fortran) programming standard and module developers guide need to be updated. Hopefully this will be done in FY2016
##User support (Amir) [Note 4] –
Amir discussed how the team should transition users to using paid support for questions that could not be answered on UnmetHours.com. BigLadder is going to have a paid support service. How do we avoid making users pay for bug that they find? Perhaps the guideline is that we should not look at a particular file on UnmetHours.com. If this is done can we get rid of the helpdesk? Brent suggested that the development team uses the helpdesk to understand users and that would be lost if the helpdesk was not used. Some users need the support of being able to submit a file through the helpdesk.
##Testing (Edwin, Luigi, Jason G,) [Note 5]
Edwin reported that the current CI not doing ReadVars right now so no CSV comparisons but that this will be fixed soon. We would also like annual test suite for additional testing when doing release builds. Jason G. suggested that one simulation should be annual all the time just to test that code. In addition, a performance test group will be added optionally to the CI based on using Tianzhen’s files and this will be added in FY16.
##Unit Testing and Code Coverage
Mark Adams discussed unit tests and ReportSizingManager as an example. It is important to cover all code paths. When refactoring we should try to take out a logical block. If trying to set up everything locally to make it quicker to see if code coverage tests are working, ask Jason T. for help setting up. The use of code coverage testing on Windows might be more difficult.
##Unit Testing with EnergyPlusFixture
Mark Adams when adding unit tests for SQLite added some capabilities that others might find useful. He added a function that allow the programmer to pass in the IDF snippet so that it creates all the global data on the input side and tears down and state data that is created each time. See “process_idf” call with string of IDF snippet in “EnergyPlusFixture.hh” to see the code. There is a “HVACFixture” for testing HVAC system that inherits from the EnergyPlusFixture. See Humidifiers.unit.cc for example of how to use this fixture and IDF reading. Also see “compare_eso_string” for example. So far he does not have explicit support for the err file. Maybe in future someone will add the simulate type fixtures.
##Objectification Code Factoring Example with Ground Models
Matt Mitchell showed the objectification of the ground models as an example of code refactoring to be more object oriented. See GroundTempsManager.cc. It keeps an array of pointers to the data. This structure will eliminate large switch blocks for ground models but can be applied to anywhere there are large switch blocks of various components. Edwin is starting to do this in plant equipment. This is a good example of how to move from Fortran like code to more object oriented when dealing with the components managed by a manager type of routine. The source file would need to be smaller and more targeted with more source files each with specific purposes so it might make sense to put the source files for a specific manager into a subdirectory rather than having a huge number of files in the main source directory.
##FY16 Planning – (Luigi, Edwin) [Note 6]
Edwin showed the spreadsheet on the screen and led the discussion. He said that they were not doing exact dollar distribution today and instead focus on where effort is applied and which tasks selected for completion in FY16. As funds are resolved individual subcontracts will be establish the final dollars but not doing that today. Mike Witte contacted a bunch of organizations asking for their priorities but this fiscal year’s focus will be on refactoring, bug fixes, testing, documentation, and in general “polish”. Funding should be same order of magnitude as last FY and NREL should have hard numbers soon for each subcontractor. Today is about figuring out what is most important but main focus next year should be mostly bug fixes. NREL will be doing zone heat balance refactoring and ORNL doing re-start for state related to SOEP. GARD would help removing the workarounds needed for running the basement and slab programs, this would be small task to fix batch files and expandobjects. GARD also recommended for adding the ability to model three or more daylighting sensors.
In the future, maybe do planning meeting earlier in the year (perhaps March) at NREL and LBNL.
##Notes:
- Review existing window models (Window 5/6 Winkelmann, EquivalentLayer, Complex Fenestration); discuss OpenStudio concerns, update on LBNL Window group shared library work, where to go from here – add/merge/drop?
- Autodesk concerns and other consumers; minimize transition burdens on interfaces and other services; automate transition perhaps via CLI version argument; supporting iteration build transitions, etc.
- Where are we, what’s next
- EPDT role, Unmethours, helpdesk, yahoo group, move towards user-to-user and application developer support,
- Gaps in the process; extended test suites; annual simulation tests; iteration releases into OpenStudio?, more customer driven
- Action plan for tackling issues/suggestions, prioritize minimal new features