IDAES-PSE 2.1.0 Release

The Institute for the Design of Advanced Energy Systems (IDAES) Integrated Platform is a versatile computational environment offering extensive process systems engineering (PSE) capabilities for optimizing the design and operation of complex, interacting technologies and systems. IDAES enables users to efficiently search vast, complex design spaces to discover the lowest cost, most environmentally sustainable solutions while supporting the full process modeling lifecycle, from conceptual design to dynamic optimization and control. The extensible, open platform empowers users to create models of novel processes and rapidly develop custom analyses, workflows, and end-user applications.

IDAES-PSE 2.1.0 Release Highlights

New IDAES Examples Repository
Starting with this release, the IDAES examples are developed in the new IDAES/examples repository.

Along with many content and usability improvements, the most significant changes are:

To install the examples, after installing IDAES, run pip install idaes-examples
The idaes get-examples command, previously used for this, has been removed
The HTML version is now available at https://idaes-examples.readthedocs.io
The previous URL, https://idaes.github.io/examples-pse, will not be updated and may be removed at some point in the future
For more details, refer to the resources available at IDAES/examples.

Removal of Non-Functional Apps
A review of the code in the idaes/apps and idaes/models_extra folders was undertaken, and a number of tools were identified as being outdated or non-functional and no longer supported by their development teams. Due to this, the following tools have been removed:

idaes/apps/alamopy_depr      (note that the new ALAMOpy interface remains avaialble in idaes/core/surrogates)
idaes/apps/helmet
idaes/apps/ripe
idaes/apps/roundingRegression
idaes/models_extra/carbon_capture

Pyomo 6.6
This version of IDAES is the first requiring Pyomo 6.6. This version of Pyomo contains multiple internal improvements and refactorings.
While for the majority of cases this should have positive or no impact on solvability of IDAES models, we are aware of a small number of models that have been affected as a result of these changes.

For more information, refer to the Pyomo 6.6.1 release notes.

Other highlights
Model Initialization
A prototype API for a new approach to initializing IDAES models is now available which makes available some new techniques for initializing models. This is documented in the Initializing Models Reference Guide
Modular Properties Framework
Support for some transport properties
Helmholtz Equation of State properties
Better error checking for case where unit models are set to include phase equilibrium but the property package is set to support only a single phase
Multi-Stream Contactor model: a new base model for systems involving contacting of two or more streams with mass transfer. This model is intended to be used as the foundation for models such as membrane separators, solvent extraction and other similar processes. This is documented in the Multi-Stream Contactor Reference Guide
idaes/models_extra/power_generation
report() methods for unit models using Helmholtz equation of state
General Code Maintenance
Streamlining of dependencies and creation of new optional dependency groupings to support non-core tools
General linting of codebase to ensure compliance with most pylint checks
Spell checking of all code and doc strings
Removal of backward compatibility code for Python 2

Tags: IDAES, PSE, Process Systems Engineering, idaes-examples, idaes-pse, idaes-ui