Skip to content

v0.8.0

Compare
Choose a tag to compare
@schmoelder schmoelder released this 03 May 11:50
· 117 commits to master since this release

CADET-Process v0.8.0 is the culmination of the last 6 months of development.
All users are encouraged to upgrade to this release.
This release requires Python 3.9+

Highlights of this release

  • Overhaul of parameter descriptors: Cleaner structure, new validation methods and improved testing.
  • Improved indexing for multidimensional parameters for events and optimization variables.
  • Improved parallelization: Selector for backend allows more flexibility when running optimization on multiple cores.
  • Overhaul of reactions module: Individual reaction parameters can now be accessed using the standard parameters interface (required for optimization).
  • Improved handling of variable transforms for optimization problems with linear constraints.

Breaking changes

Adsorption rates and reference concentrations

The parameter behavior for adsorption rates in CADET-Core and CADET-Process has been a point of discussion.
This parameter can represent either the "real" $k_a$ or the transformed $\tilde{k}_{a}$, depending on whether a reference concentration is used in binding models such as SMA.

To clarify this, CADET-Process initially introduced the adsorption_rate parameter to always signify the "real" $k_a$.
An additional internal property, adsorption_rate_transformed, was introduced to handle the transformation automatically before passing the value to CADET-Core.
This aimed to simplify the transfer of values to different reference concentrations or adsorption models.

Despite these efforts, this inconsistency between CADET-Core and CADET-Process lead to some confusion among users.

Starting from CADET-Process v0.8.0, a more harmonized approach has been adopted.
Now, adsorption_rate and desorption_rate in the SMA model (and similar models) directly map to $k_a$ / $k_d$ of CADET-Core, thus representing the transformed parameters.
For users who still need access to the "real" parameter values, for example, when transferring parameters between different systems, the attributes adsorption_rate_untransformed and desorption_rate_untransformed have been introduced into CADET-Process binding model classes.

Pull requests for 0.8.0

  • 38: Fix parallelization error Cadet object has no attribute _is_file_class
  • 40: Add selector for parallelization backend
  • 46: Fix linear constraints error in Scipy
  • 54: Fix indexing for Events and OptimizationVariables
  • 55: Rework interface regarding reference concentrations
  • 59: Fix/change addict version