2023 Feb Release
2023 Feb Release
Start with our online documentation to get started with install instructions, examples, etc.
IDAES-PSE 2.0.0 Release Highlights
- Removal of deprecated features from IDAES v1
- Update to Pyomo v6.5 – this required a number of updates to support the new NL solver writer and to address some changes in Pyomo
- Creation of new testing suite for backward compatibility, model robustness and verification
- More general implementation of the Helmholtz EoS. This brings some new features like standard property diagrams, choice of mass or mole basis, and new state variable options
- Standardizing names in Heat Exchanger models (breaking change from v2.0.0a2):
- Control Volumes named
hot_side
andcold_side
- Ports names
hot_side_inlet
,hot_side_outlet
,cold_side_inlet
andcold_side_outlet
- Config Blocks names
hot_side_config
andcold_side_config
- Config arguments for user provided names for each side:
hot_side_name
andcold_side_name
.
- Control Volumes named
- Updating Keras surrogate tool to use v1.1 of OMLT
- New prototype API for model initialization (
idaes.core.initialization
)- The new API uses "Model Initializer" objects instead of class methods, allowing for the definition of multiple initialization routines for a single model
- A number of common, model agnostic initialization routines have also been defined, including initialization from data, block-decomposition and a general hierarchical approach equivalent to the existing method for common unit models
- New metadata for thermophysical properties –
valid_range
- This can be used to record the range of values over which a property value can be trusted, such as the range of experimental data used to regress parameters
- A number of new utility functions have been added to check for properties with values outside the valid range and to set bounds based on this metadata
- Updated construction of balance expressions in Control Volumes to remove unneeded terms
- In the past, unneeded terms were added as a constant 0 term, however they will now be dropped entirely from the expression
- This was necessary due to more strict unit checking in the new Pyomo solver writer which no longer ignores 0 terms
- Updates to metadata for thermophysical properties to better define known properties and units of measurement
- This results in more strict enforcement of standard naming for thermophysical and reaction properties
- Users can still define custom properties, but these must be done explicitly using the
define_custom_properties()
method instead of being implicitly created byadd_property()
- Updated convergence tester utility tool to support definition of benchmark files (JSON format) and comparison of performance to benchmarks
- Set default iteration limit for IPOPT in IDAES config to 200 iterations
- Update scaling of example models to work with new Pyomo NL solver writer
- Improve testing of extensions and examples infrastructure to avoid need for downloading files
- Updated distillation column to centralize common functionality and remove a number of Pyomo warnings