Skip to content

2.6 Release

Latest
Compare
Choose a tag to compare
@lbianchi-lbl lbianchi-lbl released this 01 Oct 03:11

2.6 Release

Start with our online documentation to get started with install instructions, examples, etc.

IDAES-PSE 2.6.0 Release Highlights

Upcoming Changes

  • IDAES will be switching to the new Pyomo solver interface in the next release. Whilst this will hopefully be a smooth transition for most users, there are a few important changes to be aware of.
    • The new solver interface uses a different version of the IPOPT writer (“ipopt_v2”) and thus any custom configuration options you might have set for IPOPT will not carry over and will need to be reset.
    • By default, the new Pyomo linear presolver will be activated with ipopt_v2. Whilst are working to identify any bugs in the presolver, it is possible that some edge cases will remain.
  • IDAES will begin deploying a new set of scaling tools and APIs over the next few releases that make use of the new solver writers.
  • The old scaling tools and APIs will remain for backward compatibility but will begin to be deprecated.

New Models, Tools and Features

  • New Intersphinx extension automatically linking Jupyter notebook examples to project documentation
  • New end-to-end diagnostics example demonstrated on a real problem
  • New complementarity formulation for VLE with cubic equations of state, backward compatibility for old formulation
  • New solver interface with presolve (ipopt_v2) in support of upcoming changes to the initialization and APIs methods, with default set to ipopt to maintain backwards compatibility; this will deprecate once all examples have been updated
  • New forecaster and parameterized bidder methods within grid integration library
  • Updated surrogates API and examples to support Keras 3, with backwards compatibility for older formats such as TensorFlow SavedModel (TFSM)
  • Updated costing base dictionary to include the 2023 cost year index value
  • Updated ProcessBlock to include information on the constructing block class
  • Updated Flowsheet Visualizer to allow visualize() method to return value and functions

Bug Fixes

  • Fixed bug in the Modular Property Framework that would cause errors when trying to use phase-based material balances with phase equilibria.
  • Fixed bug in Modular Properties Framework that caused errors when initializing models with non-vapor-liquid phase equilibria.
  • Fixed typos flagged by June update to crate-ci/typos and removed DMF-related exceptions
  • Minor corrections of units of measurement handling in power plant waste/transport costing expressions, control volume material holdup expressions, and BTX property package parameters
  • Fixed throwing >7500 numpy deprecation warnings by replacing scalar value assignment with element extraction and item iteration calls

Testing and Robustness

  • Migrated slow tests (>10s) to integration, impacting test coverage but also yielding a nearly 30% decrease in local test runtime
  • Pinned pint to avoid issues with older supported Python versions
  • Pinned codecov versions to avoid tokenless upload behavior with latest version
  • Bumped extensions to version 3.4.2 to allow pointing to non-standard install location

Deprecations and Removals

  • Python 3.8 is no longer supported. The supported Python versions are 3.9 through 3.12
  • The Data Management Framework (DMF) is no longer supported. Importing idaes.core.dmf will cause a deprecation warning to be displayed until the next release
  • The SOFC Keras surrogates have been removed. The current version of the SOFC surrogate model in the examples repository is a PySMO Kriging model.

What's Changed

New Contributors

Full Changelog: 2.5.0...2.6.0