Skip to content

2023 Feb Release

Compare
Choose a tag to compare
@lbianchi-lbl lbianchi-lbl released this 03 Mar 22:40

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 and cold_side
    • Ports names hot_side_inlet, hot_side_outlet, cold_side_inlet and cold_side_outlet
    • Config Blocks names hot_side_config and cold_side_config
    • Config arguments for user provided names for each side: hot_side_name and cold_side_name.
  • 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 by add_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