Releases: IDAES/idaes-pse
2022 Aug Alpha Release #3
2022 Aug Alpha Release 3
Start with our online documentation to get started with install instructions, examples, etc.
IDAES-PSE 2.0.0a3 Release Highlights
IDAES v2 Changes and Deprecations
- Reminder that support for IDAES v1 series will end in November, and backwards compatibility will be removed
- When instantiating a
ProcessBlock
, options can now be passed directly as keyword arguments (kwargs)
instead of having to be provided as a separate dictionary through thedefault=
kwarg
New Features
- Initial binary releases for Mac OSX running on ARM chipsets
- New method for
StateBlock
s: users can now dostate.build_port()
to construct aPort
linked to the given state block - Many new examples and documentation
2022 May Alpha Release #2
2022 May Alpha Release 2
Start with our online documentation to get started with install instructions, examples, etc.
IDAES-PSE 2.0.0a2 Release Highlights
Deprecations and Moved Files:
- In preparation for the upcoming IDAES v2.0 release, the IDAES repository has been significantly reorganized to better group content and reduce the number of top-level directories
- In order to facilitate a smooth transition, the existing folder structure will remain in place until the v2.0 release in November with redirection links to the new location of most modules
- Importing a module from its old location will be redirected to the new location and a deprecation warning will be logged, with a pointer to the new location
- A new API has been implemented for costing of process equipment in IDAES
- The old costing methods will continue to be supported with deprecation warnings until the v2.0 release in November, after which they will be removed
- Users of these tools should begin converting their code to use the new costing APIs
General
- Added
reporting_units
option to the IDAES configuration dictionary to allow users to specify specific output units for quantities- e.g.
report_units={“pressure”: pyo.units.bar}
- All IDAES reporting functions will convert quantities to the units defined in this dictionary
- e.g.
- Added units of measurement to IDAES stream tables and reporting functions
- Unit model for carbon capture using MEA solvent, including detailed correlations for heat and mass transfer with enhancement factor
- Added support for units of measurement and scaling tools to the gas_solid_contactor model library
- Addition of a new lumped capacitance model for 0D heat exchangers which includes effects of conduction through the heat exchanger walls
- New models for solid oxide fuel cells and solid oxide electrolysis cells
- New models for natural gas pipelines
- Added full support for PySMO tools to the new surrogate modeling API
- Added support for multiple inputs and output to PySMO and associated data sampling tools
- Improved error handling for ALAMOpy in cases where ALAMO executable encounters errors
- New API for implementing costing of process equipment and flows
- Added new supported platforms for IDAES binaries
2022 Feb Release
2022 Feb Release
Start with our online documentation to get started with install instructions, examples, etc.
IDAES-PSE 1.13.0 Release Highlights
ADVANCE CHANGE NOTICE: Upcoming IDAES v2
We are pleased to announce that IDAES v2 is under development. IDAES v2 introduces significant improvements and API changes with respect to the current (v1) codebase.
In order to provide advance warning of the upcoming changes and minimize their impact on functionality during this transition, the following schedule is planned for the next 9 months:
- The first stable version of IDAES v2, release 2.0.0, is currently planned for November 2022
- The current release series, 1.13, will be the last for the IDAES v1 codebase
- Over the intervening months, as part of our quarterly release cycle, we will be releasing preview versions of the v2 codebase. If applicable, we will also distribute bugfixes that are compatible with the v1 codebase as patch releases to the 1.13 release series (1.13.1, 1.13.2)
- During this time, changes to the IDAES API introduced by v2 will be documented as deprecation warnings in the codebase and/or as part of the release notes
- Once the 2.0.0 release is out, all deprecation warnings will be removed, and support will switch to IDAES v2 only
We encourage our users to follow these changes closely over the next few months and adapt their models accordingly in preparation to the 2.0.0 release.
Changes in IDAES v1.13:
- New modules for modular property packages which allow interfacing with CoolProp (external, open-source thermophysical property package)
- Added new
InitializationError
type which is now raised whenever an initialization routine fails to solve successfully. Updated all core models to raise this error on failure - Initialization improvements for systems with vapor-liquid equilibrium.
- New solver interface which allows the use of PETSc solver library, including interface for solving (P)DAE systems
- Updated CLC methane reduction property packages for gas-solid contactor models to use standard base units, including example flowsheet modifications for energy in J and pressure in Pa
- Clean up of some power generation models to bring them more in-line with IDAES modeling standards
- Improvements in external functions for calculating roots of cubics and cubic equations of state
- Bug fixes in ALAMOpy wrapper to correctly support validation data sets
Python version support
- Support for Python 3.10 has been added
- Support for Python 3.6 has been removed
2021 Nov Patch Release
2021 Nov Patch Release
Start with our online documentation to get started with install instructions, examples, etc.
IDAES-PSE 1.12.1 Release Highlights
2021 Nov Release
2021 Nov Release
Start with our online documentation to get started with install instructions, examples, etc.
IDAES-PSE 1.12.0 Release Highlights
- Deprecations:
- Python 3.6 support is deprecated and it will be removed with the next IDAES release
- Deprecation warning:
generic_models.unit_models.distillation
folder renamed togeneric_models.unit_models.column_models
- Removed support for directly setting
state_block_class
andreaction_block_class
in property and reaction packages - Removed support for property packages which do not use Phase and Component objects
- Removed support for defining units of measurement via strings.
- Removed support for dynamic simulations without specifying units for time domain
- Improved workflow and interface for developing surrogate models and incorporating these into flowsheets
- Improved wrapper for ALAMO using new surrogate interface
- New Unit models:
- Condenser and Reboiler for packed column applications
- 0-D Heat Exchanger using the NTU method
- Ability to use external variable for
length
in 1-D control volumes - Thermophysical and transport properties:
- New supported properties: Cp, Cv, diffusivity, thermal conductivity, speed of sound, surface tension, viscosity
- Improved formulation of log expressions
- Surrogate modeling using Keras
-
This requires
tensorflow
, which is an optional dependency of IDAES. To install it, use any one of the following commands:conda install tensorflow pip install tensorflow pip install "idaes-pse[optional]" # this will install all optional dependencies for IDAES, including tensorflow
-
2021 Aug Release
2021 Aug Release
Start with our online documentation to get started with install instructions, examples, etc.
IDAES-PSE 1.11.0 Release Highlights
- New component: SkeletonUnitModel – a generic unit model object for surrogate and custom unit models
- Improving access to time domain: All Flowsheets now have a ‘time’ property which will return the local time domain
- Support for additional properties in Generic Property Framework: Ideal solids, Henry’s Law, molar volume, osmotic pressure, diffusivity and viscosity
- Improved scaling methods for Mixer and Separator
- Updating some imports from Pyomo due to changes in Pyomo 6.1
- Prototype support for precipitation reactions using solubility products (still needs refinement)
Deprecation warnings slated to be removed (and becoming errors) in next release
- Directly setting
state_block_class
andreaction_block_class
when creating property packages will no longer be allowed: users should set_state_block_class
and_reaction_block_class
instead. - Old style property packages that do not use
Phase
andComponent
objects will no longer be supported (i.e. those that create thephase_list
andcomponent_set
directly). - IDAES will no longer support using strings to defining units of measurement in property packages. Property developers should use Pyomo units (or
None
) instead. - Users will need to define units for the time domain in dynamic simulations.
2021 Aug Release Candidate # 0
2021 Aug Release Candidate #0
Start with our online documentation to get started with install instructions, examples, etc.
1.11.0rc0 Release Highlights
- New component: SkeletonUnitModel – a generic unit model object for surrogate and custom unit models
- Improving access to time domain: All Flowsheets now have a ‘time’ property which will return the local time domain
- Support for additional properties in Generic Property Framework: Ideal solids, Henry’s Law, molar volume, osmotic pressure, diffusivity and viscosity
- Improved scaling methods for Mixer and Separator
- Updating some imports from Pyomo due to changes in Pyomo 6.1
- Prototype support for precipitation reactions using solubility products (still needs refinement)
Deprecation warnings slated to be removed (and becoming errors) in next release
- Directly setting
state_block_class
andreaction_block_class
when creating property packages will no longer be allowed: users should set_state_block_class
and_reaction_block_class
instead. - Old style property packages that do not use
Phase
andComponent
objects will no longer be supported (i.e. those that create thephase_list
andcomponent_set
directly). - IDAES will no longer support using strings to defining units of measurement in property packages. Property developers should use Pyomo units (or
None
) instead. - Users will need to define units for the time domain in dynamic simulations.
2021 May Release Patch #1
IDAES-PSE 1.10.1 May 2021 Release
Start with our online documentation to get started with install instructions, tutorials, etc.
1.10.1 Patch Highlights
- Fixing a minor issue with missing data files needed for running tests
Release Highlights
- Updates to be compliant with Pyomo 6
- New
get_solver
tool for creating solver objects which supports definition of default solvers and options - Improved handling of solver options during initialization
- Additional properties in Generic Property framework, including multiple flow bases, internal energy, and constant volume heat capacity.
- New Generic Property module for constant pure component properties
- Extension of core framework to support aqueous solutions of ions, including support for true and apparent species compositions
- Performance curves in isentropic pressure changers
- New utility functions for accessing scaled and unscaled Jacobians and problem condition number
- Support for automatic scaling tools in Generic Property and Reaction packages
- Numerous improvements to automatic scaling functions
- Improved output of stream tables for cases of multiple property packages with different state variables
- Fixed bug in some property packages where enthalpy density was used instead of internal energy density in energy balances
- Fixed underlying bug preventing cloning of models, which was necessary for GDP problems
2021 May Release
IDAES-PSE 1.10.0 May 2021 Release
Start with our online documentation to get started with install instructions, tutorials, etc.
Release Highlights
- Updates to be compliant with Pyomo 6
- New
get_solver
tool for creating solver objects which supports definition of default solvers and options - Improved handling of solver options during initialization
- Additional properties in Generic Property framework, including multiple flow bases, internal energy, and constant volume heat capacity.
- New Generic Property module for constant pure component properties
- Extension of core framework to support aqueous solutions of ions, including support for true and apparent species compositions
- Performance curves in isentropic pressure changers
- New utility functions for accessing scaled and unscaled Jacobians and problem condition number
- Support for automatic scaling tools in Generic Property and Reaction packages
- Numerous improvements to automatic scaling functions
- Improved output of stream tables for cases of multiple property packages with different state variables
- Fixed bug in some property packages where enthalpy density was used instead of internal energy density in energy balances
- Fixed underlying bug preventing cloning of models, which was necessary for GDP problems
2021 February Release
IDAES-PSE 1.9.0 February 2021 Release
Start with our online documentation to get started with install instructions, tutorials, etc.
Release Highlights
- A general-purpose IDAES dynamic power plant model library. It includes not only power plant components but also an example 300 MW (net) subcritical power plant that consists of typical steam boiler and turbine designs for an intermediate-size subcritical coal-fired unit with full-load main steam conditions of 14.4 MPa and 810 K. It can be used to predict plant performance during flexible operation and includes algorithms to estimate the expected time to tube rupture and the number of allowable cycles for load following operations.
- Improved generic properties API to support disjunctive programming solvers.
- New option for including or excluding heat of formation from specific enthalpy calculations.
- Functions for producing Txy diagrams of VLE systems.
- Improved performance of units of measurement features.
- Improved the look, feel, and functionality of the IDAES Flowsheet Visualizer or IFV. The IFV is a web-based user interface (UI) that lets you view and export flowsheets as a process engineering diagram, view and export the "stream table" for the flowsheet, rearrange the flowsheet diagram to your taste and save the arrangement for next time, and dynamically refresh the displayed values to reflect changes in the IDAES model. Major IFV changes in this release:
- New stream table visualization, including export to CSV
- Significant visual improvements to diagram and overall look and feel of UI
- New
conda install
packaging (in addition topip install
) via:conda install -c idaes-pse -c conda-forge idaes-pse
- Reorganize Caprese code to inherit from Pyomo
Block
components. This makes solving subproblems and accessing differential/algebraic/input variables easier. Also adds better support for rolling horizon simulations.