Skip to content

@tijcolem tijcolem released this Oct 16, 2020 · 313 commits to develop since this release

OpenStudio Version 3.1.0

Release Notes - 10/16/2020

These release notes describe version 3.1.0 of the OpenStudio SDK developed by the National Renewable Energy Laboratory (NREL), Buildings and Thermal Sciences Center, Commercial Buildings Research Group, Tools Development Section, and associated collaborators. The notes are organized into the following sections:

  • Overview
  • Where to Find OpenStudio Documentation
  • Installation Notes
  • OpenStudio SDK: Changelog

Overview

As of April 2020, development and distribution of the OpenStudioApplication and the SketchUp plugin have transitioned to the OpenStudio Coalition, who is independently managing and distributing the software through its own openstudiocoalition/OpenStudioApplication repository. The OpenStudio SDK is continuing to be actively developed and distributed by NREL and is released two times per year, through a spring and a fall release.

Below is the list of components that is included in this SDK installer:

OpenStudio SDK 3.1.0

  • EnergyPlus
  • Command Line Interface (CLI)
  • Radiance
  • Ruby API
  • C++ SDK

Note that PAT is not included in either the SDK or the OpenStudio Coalition's Application installers. You will need to install PAT separately which is distributed on the OpenStudio-PAT GitHub page.

Where to Find OpenStudio SDK Documentation

Installation Notes

OpenStudio SDK 3.1.0 is supported on 64-bit Windows 7 – 10, OS X 10.14 – 10.15, and Ubuntu 18.04.

OpenStudio SDK 3.1.0 supports EnergyPlus Release 9.4, which is bundled with the OpenStudio installer. It is no longer necessary to download and install EnergyPlus separately. Other builds of EnergyPlus are not supported by OpenStudio SDK 3.1.0.

OpenStudio SDK 3.1.0 supports Radiance 5.0.a.12, which is bundled with the OpenStudio installer; users no longer must install Radiance separately, and OpenStudio will use the included Radiance version regardless of any other versions that may be installed on the system. Other builds of Radiance are not supported by OpenStudio SDK 3.1.0.

OpenStudio SDK 3.x now uses Ruby 2.5.5 as the supported version (2.2.4 previously).

As usual, you can refer to the OpenStudio SDK Compatibility Matrix for more information.

Installation Steps

  • Download and install OpenStudio SDK and/or openstudiocoalition/OpenStudioApplication depending on your needs. Select components for installation. Note that OpenStudio Application is a standalone app and does not require you to install OpenStudio SDK.
  • Setup a Building Component Library (BCL) account to access online building components and measures. View instructions on how to setup your account and configure the key in OpenStudio.
  • The OpenStudio Application SketchUp Plug-in requires SketchUp 2019 (not available for Linux). The OpenStudio Application SketchUp Plug-in does not support older versions of SketchUp. SketchUp must be installed before OpenStudio Application to automatically activate the plugin. If you install SketchUp after OpenStudio Application, simply rerun the OpenStudio Application installer.

For help with common installation problems please visit, http://nrel.github.io/OpenStudio-user- documentation/help/troubleshooting/.

OpenStudio SDK: Changelog

The 3.1.0 is a major release. This update includes several new features, performance improvements, and bug fixes.
You can find the list of Pull Requests that got into this release here.

New Features, Major Fixes and API-breaking changes

A number of API-breaking changes have been implemented in OpenStudio SDK 3.1.0:

  • #3960 - Added support for building the C# bindings via dotnet CLI, including on Unix platforms
  • #3966 - Closes #3945 - Support the EnergyPlus object SurfaceControl:MovableInsulation which can be used to add insulation surface(s) on top of opaque surfaces, such as a transparent coating that affects the radiative gains to a roof surface
  • #3959 - Also included some improvements in the generated C# bindings by reducing build warnings and properly exposing some types via SWIG
    • ScheduleTypeKey (which is normally only use by OpenStudio internals in ScheduleTypeRegistry checks) previously mapped to a std::pair<std::string, std::string> which was SWIGed in ruby as an Array of strings of size two, but improperly exposed in C#. It now uses a dedicated helper class with two methods ScheduleTypeKey::className() and ScheduleTypeKey::scheduleDisplayName()
  • #3987 - Closes #3907 - Support new Coil:Cooling:DX, Coil:Cooling:DX:CurveFit:Performance, Coil:Cooling:DX:CurveFit:OperatingMode, Coil:Cooling:DX:CurveFit:Speed objects
  • #4009 - Closes #4006 - Add SwimmingPool:Indoor to SDK
  • #4050 - Fixes #3921 - Some children of RefrigerationSystem can be added several times and produce a fatal when System is removed
    • RefrigerationSystem will now be enforcing unicity for all children. This was already the case for a few of the child objects such as Case and WalkIns, it is now the case for all objects (RefrigerationCondenserCascade, RefrigerationSubcoolerMechanical and RefrigerationSubcoolerLiquidSuction, etc.). What this means is that setter methods (or add methods in case of a list) will remove the child for any current RefrigerationSystem it is on first.
  • #4066 - Multiple shading controls referenced by a single subsurface
    • SubSurface was historically the one referencing the ShadingControl object. Now it's a many-to-many relationship where ShadingControl has an extensible 'Sub Surface Name' field, and multiple ShadingControl objects can reference the same SubSurface. This is trickling down from a change introduced in EnergyPlus version 9.4, and specifically in PR NREL/EnergyPlus#8196
    • Methods in SubSurface have been deprecated but are kept for backward compatibility. They will be removed in a future version of OpenStudio:
      • shadingControl(): prefer shadingControls()
      • setShadingControl(ShadingControl&): use addShadingControl(SubSurface&), addShadingControls(std::vector<SubSurface>&) or setShadingControls(std::vector<SubSurface>&)
      • resetShadingControl(): use removeAllShadingControls() instead
    • All Shading Control Type values should now be supported. Refer to issue #4074 for more information
    • Fields 'Glare Control Is Active', 'Type of Slat Angle Control for Blinds', 'Slat Angle Schedule Name', 'Setpoint2', and 'Multiple Surface Control Type' are now implemented as well
  • #4026 - Fix OpenStudio Windows crashed during save attempt
  • #4028 - Fixes #3835 - Decrease overall load time of CLI and lazy load OpenStudio ruby bindings when possible
  • #4059 - Add new OutputControl:Files object to SDK, which allows conditionally turning on/off output from EnergyPlus
  • #4101 - Update EnergyPlus v940 official

Minor changes:

  • #3961 - Update cmake to use included FindPython method and fix zlib's crypt.h
  • #3970 - Update conan dependency fmt/6.2.0 and use option to define FMT_HEADER_ONLY
  • #3979, #4004, #4071 - Update openstudio-gems to include openstudio-extension v0.3.0, openstudio-workflow v2.1.0, openstudio-standards v0.2.12, openstudio_measure_tester v0.2.3
  • #4015, #4047- Updates the conan dependencies to try and pin version using hash
  • #4027 - Include 64/32 bit universal nuget package in cmake build process.
  • #4029 - Closes #3832 - Allow for silent install on windows
  • #4055 - Closes #4054 - Add latitude, longitude, elevation accessors to FloorplanJS
  • #4068 - Closes #4067 - Remove the ENV ruby bundle variables so the cli does not use them

Minor Bug Fixes

  • #3957 - Fix for ruby bundle changes.
  • #3971 - Fixes #3943 - ThreeJS should handle ConstructionAirBoundary
  • #3973 - Fixes #3972 - ScheduleRuleset remove winterDD/summerDD/holiday ScheduleDay in reset.
  • #3978 - Fixes #3976 - Add 'Minimum Outdoor Dry-Bulb Temperature for Compressor Operation' to all Coil:Cooling:DX:XXX objects
  • #3980 - Fixes #2033 - Properly connected the secondary/induced air node for ATUs
  • #3981 - Fixes #2977 - Make VAVReheat Method consistent with IDD and other objects
  • #3983 - Fixes #1058 - Warn only if the file extension isn't OSM, OSC, IDF, IMF, or DDY
  • #3985 - Fixes #3926, Fixes #3984 - Handle multiple AirLoopHVACs and assign the DSOA to all ControllerMechanicalVentilation objects. AirLoopHVAC translates the AirLoopHVACOutdoorAirSystem, which in turns translates the ControllerOutdoorAir
  • #3986 - Fixes #2797 - Do not translate a ZoneHVACLowTempRadiant object if it doesn't have any surfaces with Internal Source
  • #3988 - Fix bug in GenerateClass.rb
  • #3989 - Fixes #3076 - Make openstudio::Vector "Enumerable" in ruby
  • #3993 - Added logic to rejoin previously triangulated window geometry before calling computeTriangulation on the base surface. Fixed several bugs in joinAll and translation to ThreeJS format
  • #3995 - Implements eql? and hash for UUID in Ruby so UUID can be used as a key in a Ruby Hash
  • #3996 - Fixes #3990 - Add an API to CoilCoolingDXMultiSpeed to add/remove stages
  • #3998 - Fixes #3997 - GbXMLReverseTranslator applies incorrect scaling to windows when unit isn't meter
  • #3999 - Removes a "Propane deprecated" warning message that no longer makes sense
  • #4000 - Fixes #3314 - GBXML translate spaces etc even if Facility and/or Building aren't isntantianted
  • #4002 - Fixes #2100 - Remove if defaulted statements in ForwardTranslateThermalZone
  • #4005 - Fixes #4001 - gbXML issue on ForwardTranslation - surfaceType attribute written twice for SlabOnGrade
    3_bind* to ensure proper escaping of parameters such as Zone Names etc
  • #4008 - Fixes #1906 - Use sqlite
  • #4010 - Fixes #4007 - Model objects returned in inconsistent order
  • #4011 - Fixes #1675 - ForwardTranslate WaterHeater:Mixed when not on loop but has Peak Use Flow Rate (standalone operation)
  • #4012 - Fixes #2895 - Extend the list of acceptable SubSurface types to include Skylight
  • #4013 - Fixes 32867 - Sum of fraction radiant, fraction lost, etc can be > 1
  • #4021 - Fixes #4014 - Extend download time to BCL
  • #4023 - Fixes #3936 - SubSurface Type reset when assigned to surface
  • #4030 - Fixes #4030 - AvailabilityManagerNightCycle: Ensure ModelObjectLists are handled in clone/remove
  • #4032 - Fixes #4016 - Move VT from 2.9.0 to 3.0.0 for new fields at end of the ZoneHVAC:TerminalUnit:VariableRefrigerantFlow
  • #4037 - Fixes #3369 - Add missing fields to AvailabilityManager:HybridVentilation
  • #4044 - Fixes #4039 - Add field ' Design Return Air Flow Fraction of Supply Air Flow' to AirLoopHVAC
  • #4048 - Fixes #4036 - Don't create windows or doors for plenums when translating from FloorspaceJSON
  • #4065 - Fixes #4033, Fixes #4034 - Fix AVMList clone between different models
  • #4072 - Fixes #4064 - RunPeriodControlSpecialDays are not Forward Translated
  • #4080 - Fixes #4079 - Install E+ pythonwrapper lib via CMake
  • #4088 - Hotfix for sql queries
  • #4093 - Fixes #4091 - Update FuelType/EndUseFuelType (and Sql) to match E+ 9.4.0
  • #4097 - Fixes #4096 - RT error for ZoneControlThermostat
  • #4099 - Fixes #4089 - Confirm if idf_output_requests still works in reporting measure template
  • #4104 - Fixes #4102 - Fuel Type Renames in EMS Actuator Names
  • #4155 - Fixes #4109 - Fixes ruby bindings issue on windows when working with Sqlite3 db

OpenStudio Standards v0.2.12

  • added missing nonresidential construction properties to the ZE standards
  • updated data center model
  • changed the location for climate zone 0 and 1 weather files
  • use common geometry templates
  • ground refactor to use the FC-factor methodology for 90.1 prototype models
  • bug fixes to align with the OpenStudio 3.0.1 API using Ruby 2.5
  • bug fix to fuel type naming FuelOil#1 -> FuelOil No1 per a recent EnergyPlus change
  • added more detailed logging for economizer logic
  • switch tests to use Jenkins instead of CircleCI
  • updates to central plant models for LargeOffices and Hospitals
  • bug fix to schedule type limits
  • updates to elevators
  • additional support for other types of fluid coolers and cooling towers in the HVAC constructor logic
  • added missing refrigerator case lookups
  • added transformers to several prototypes
  • moved heat recovery lookups to data .json files
  • moved economizer lookups to data .json files
  • bug fix to DCV logic
  • added TallBuilding and SuperTallBuilding prototypes
  • added draft College prototype. While this release includes data for colleges, this only an early draft and should not be used for anything other that early testing or work to improve the college prototype.
  • removed old, central data .json files

OpenStudio Server v3.1.0

  • #555 - Update Ruby gem envs in the openstudio_meta cli
  • #561 - Fixes #560 - Fixes unzip method
  • #563 - Add linux support for extracted gems.
  • #564 - Remove hardcoded openstudio version and sha
  • #566 - Make tmpname deprecate
  • #571 - Make downloading files back to server optional
  • #602 - Add algorithmic test suites
  • #597 - Save the travis gem package artifacts
  • #599 - Save the windows gem package artifacts
  • #580 - add report capability to PSO
  • #579 - Update nokogiri
  • #585 - Update docker-compose version
  • #589 - Use most recent rubocop rules

Issue Statistics Since Previous Release

  • 70 new issues were filed since the 3.0.0 release of OpenStudio (not including opened pull requests)

  • 143 issues were closed since the 3.0.0 release of OpenStudio (not including closed pull requests).

Assets 8
Jun 22, 2020
Merge branch 'develop' of https://github.com/NREL/OpenStudio into 3.0…
….1-rc2
Jun 5, 2020
Update release tag to 3.0.1-rc1

@tijcolem tijcolem released this Apr 27, 2020 · 753 commits to master since this release

OpenStudio Version 3.0.0

Release Notes - 4/24/2020

These release notes describe version 3.0.0 of the OpenStudio SDK developed by the National Renewable Energy Laboratory (NREL), Buildings and Thermal Systems, Commercial Buildings Research Group, Tools Development Section, and associated collaborators. The notes are organized into the following sections:

  • Overview
  • Where to Find OpenStudio Documentation
  • Installation Notes
  • OpenStudio SDK: Changelog

Overview

Following an important announcement related to future development of the OpenStudio Application released in September 2019 (A Shift in BTO’s BEM Strategy: A New Future for the OpenStudio Application), this release marks the first installment of the separated OpenStudio SDK from the Application.
Going forward, the SDK will continue to be distributed and released two times per year, in April and October. Development of the OpenStudioApplication has been moved to its own NREL/OpenStudioApplication GitHub.

Below is the list of components that is included in this SDK installer:

OpenStudio SDK 3.0.0

  • EnergyPlus
  • Command Line Interface (CLI)
  • Radiance
  • Ruby API
  • C++ SDK

Note that PAT and DView are not included in either the SDK or Application installers. You will need to install PAT separately which is distributed on the OpenStudio-PAT GitHub page and DView at the Dview home page.

Long-Term Support of 2.x version: 2.9.X-LTS

This new major release is bringing a lot of changes not the least of which is the separation of the OpenStudioApplication as well as some API breaking changes.
Only critical bug-fixes will be implemented in the LTS branch and no new features will be developed. The supported EnergyPlus version will remain 9.2.0 in the LTS branch. We encourage users to transition to the 3.x version of OpenStudio.

Where to Find OpenStudio Documentation

Installation Notes

OpenStudio 3.0.0 is supported on 64-bit Windows 7 – 10, OS X 10.12 – 10.15, and Ubuntu 18.04.

OpenStudio 3.0.0 supports EnergyPlus Release 9.3, which is bundled with the OpenStudio installer. It is no longer necessary to download and install EnergyPlus separately. Other builds of EnergyPlus are not supported by OpenStudio 3.0.0.

OpenStudio 3.0.0 supports Radiance 5.0.a.12, which is bundled with the OpenStudio installer; users no longer must install Radiance separately, and OpenStudio will use the included Radiance version regardless of any other versions that may be installed on the system. Other builds of Radiance are not supported by OpenStudio 3.0.0.

OpenStudio 3.x now uses Ruby 2.5.5 as the supported version (2.2.4 previously).

As usual, you can refer to the OpenStudio Compatibility Matrix for more information.

Installation Steps

  • Download and install OpenStudio SDK and/or [OpenStudioApplication]( depending on your needs. Select components for installation. Note that OpenStudio Application is a standalone app and does not require you to install OpenStudio SDK.
  • Setup a Building Component Library (BCL) account to access online building components and measures. View instructions on how to setup your account and configure the key in OpenStudio.
  • The OpenStudio Application SketchUp Plug-in requires SketchUp 2019 (not available for Linux). The OpenStudio Application SketchUp Plug-in does not support older versions of SketchUp. SketchUp must be installed before OpenStudio Application to automatically activate the plugin. If you install SketchUp after OpenStudio Application, simply rerun the OpenStudio Application installer.

For help with common installation problems please visit, http://nrel.github.io/OpenStudio-user- documentation/help/troubleshooting/.

OpenStudio SDK: Changelog

The 3.0.0 is a major release
The 3.0.0 release updates OpenStudio to use EnergyPlus 9.3. This update includes several new features, performance improvements, and bug fixes.
You can find the list of Pull Requests that got into this release here.

New Features, Major Fixes and API-breaking changes

A number of API-breaking changes have been implemented in OpenStudio 3.0:

  • Updated EnergyPlus from v9.2.0 to v9.3.0

  • (#3044) Added support for FanSystemModel to the Model API

  • ThermalZone::addEquipment is no longer exposed to the bindings to avoid confusion and problems, as you should always use ZoneHVACComponent::addToThermalZone instead (#2920, #3758)

  • #3814 - Add ability to create Holiday Schedules in ScheduleRuleset

  • #3882 - Add methods to edit Output:Table:SummaryReports in OpenStudio SDK

  • #3875 - Add OutputDiagnostics, OutputDebuggingData and OutputJSON to model SDK

  • #3853 - Fixes bug where MasslessOpaqueMaterial incorrectly had methods for setting and getting conductivity, density, and specific heat

  • #3744 - New native extension gems have been added into the CLI:

    • pycall v1.2.1 - Allows for calling Python functions from the Ruby language
    • sqlite3 v1.3.13 - Ruby bindings for the SQLite3 embedded database
    • Oga v3.2 - Oga is an XML/HTML parser written in Ruby
    • jara_winker v.1.5.4 - implementation of Jaro-Winkler distance algorithm needed for newer versions of rubocop >= v0.80.0
  • #23 - Updated extension gems have been added into the CLI:

    • bundler v2.1.0
    • openstudio-extension v0.2.1
    • openstudio-workflow v2.0.0
    • openstudio-standards v0.2.11
    • openstudio_measure_tester v0.2.2
  • #3796 - Reporting Measure: you can now pass model to the arguments() method of a reporting measure, for easier setup of output variables

  • #3847 - Chiller:Electric:EIR node API refactor, ChillerAbsorption/ChillerAbsorption tertiary node refactor

    • ChillerElectricEIR::designHeatRecoveryWaterFlowRate() now returns an OptionalDouble instead of a double since it can be now be autosized
    • ChillerElectricEIR no longer has getter/setters that set/return std::string for Node Names. It also wraps two new E+ fields: "Condenser Heat Recovery Relative Capacity Fraction", "Heat Recovery Inlet High Temperature Limit Schedule Name" and "Heat Recovery Leaving Temperature Setpoint Node Name"
    • Added missing Tertiary nodes for ChillerAbsorption
    • For ChillerAbsoprtion, ChillerAbsoprtionIndirect, ChillerElectricEIR:
      • addToTertiaryNode overriden to only allow supply side connection.
      • addToNode overriden to connect to tertiary loop if primary loop is already connected, and Node to connect to is on the supply side of a different plant loop than the current primary loop
  • #3913 - E+ 9.3.0: Update ShadowCalculation to match object refactor in EnergyPlus

    • ShadowCalculation::calculationMethod was renamed to ShadowCalculation::shadingCalculationUpdateFrequencyMethod (same for setter, defaulted, and reset methods)
    • ShadowCalculation::calculationFrequency was renamed to ShadowCalculation::shadingCalculationUpdateFrequency (same for setter, defaulted, and reset methods)
    • ShadowCalculation::polygonClippingAlgorithm() and ShadowCalculation::skyDiffuseModelingAlgorithm(): return type changed from OptionalString (which was always initialized) to std::string
    • All new fields in E+ 9.3.0 were also added

Minor changes:

  • #3846 - SiteWaterMainsTemperature now defaults to the CorrelationFromWeatherFile Calculation Method just like in EnergyPlus.
  • #3846 - BoilerHotWater "Design Water Outlet Temperature" field to match E+
  • #3868 - Fix an error when querying surfaces() of ZoneHVACLowTemperature objects and surfaces have no construction
  • #3844 - Fix crash in FT for HeatPumpWaterToWaterEquationFitCooling/Heating when they reference each other as companion coils
  • #3871 - Remove deprecated Active Year/Institution fields in OS:ClimateZones
  • #3878 - Reporting Frequencies (eg: for OutputVariable) now differentiates between RunPeriod and Annual frequencies
  • #3805 - Support year in EpwFile/EpwDataPoint
  • #3813 - Change default specific heat of new materials to match E+
  • #3849 - Add a missing entry in ScheduleTypeRegistry for SurfacePropertyOtherSideCoefficients
  • #3855 - Autosize ZoneHVACUnitHeater Maximum Water flow rate in constructor
  • #3857 - Reverse translation of WindowMaterial:Glazing sets Optical Data type field incorrectly
  • #3858 - Wrong OS:Daylighting:Control rotation angle translated
  • #3862 - Minor change to the E+ IDD for LifeCycleCost:UsePriceEscalation
  • #3867 - Reset Surface Wind/SunExposure to NoSun/NoWind when setting Outside Boundary Condition to OtherSideCoefficients Fixed in #3916
  • #3903 - Add new fields to PerformancePrecisionTradeoffs for E+ 9.3.0
  • #3898 - Add Minimum zone ventilation efficiency
  • #3894 - SqlFile need to support the "Year" field for IlluminanceMaps
  • #3892 - Add Wrap SimulationControl's Do HVAC Sizing Simulation for Sizing Periods
  • #3885- Allow "CorrelationFromWeatherFile" for SiteWaterMainsTemperature's calculation method
  • #3872 - Adding advanced output variables
  • #3786 #3787 - Allow SDK users to not have to write out SQLite files
  • #3785 - Expose the ZoneVentilation:WindandStackOpenArea in the Model SDK

Minor Bug Fixes

  • #3938 - Fix loading native ext gems for new gems that were added.
  • #3917 - Connecting two ThermalZones in series on an AirLoopHVAC demand branch shouldn't be allowed
  • #3888 - Fix cloning issue for model objects.
  • 3866 - Fix Forward translator Runtime Error if a model has a ZoneHVAC:LowTemperatureRadiant:VariableFlow but no constructions assigned
  • #3854 - Fix Maximum Hot Water Flow Rate to autosize
  • #3823 - Fix RoofGeometry build errors
  • #3793 - Fix ITE object supply/approach temperature difference schedule
  • #3792 - Fix in support of OpenStudio Application

OpenStudio Standards

  • correctly enable DOAS DCV
  • updated and add values for the NREL ZNE Ready 2017 standard and added a ZE AEDG Multifamily standard
  • updated refrigeration code to add walk-in refrigators and freezers to all relevant zones
  • updated economizer logic
  • add properties for climate zones 0A and 0B
  • refactor methods to work with OS 3.0
  • add doors to DOE prototype models
  • updated multizone ventilation calculation logic in the prototype models
  • various bug fixes to prototype models and hvac system methods

Issue Statistics Since Previous Release

  • 67 new issues were filed since the 2.9.1 release of OpenStudio (not including opened pull requests)

  • 124 issues were closed since the 2.9.1 release of OpenStudio (not including closed pull requests).

Assets 8
Dec 13, 2019
Branch rename from develop3 to develop 2019-12-13