v0.11.0#
CADET-Process v0.11.0 is the culmination of 6 months of dedicated development and collaboration. This release introduces significant new features, critical bug fixes, enhanced test coverage, and improved documentation. We strongly encourage all users to upgrade to this version for better performance and new functionalities.
This release requires Python 3.10+.
Highlights and new features of this release#
General improvements#
Added Contributor’s guide. (#112)
Split optional dependencies and dependency groups. (#266)
Migrated from unittest to pytest for a more flexible and expressive testing framework, simplifying test discovery and fixtures.
Added Dependabot for automated dependency monitoring and updates, helping to catch outdated or vulnerable packages early. (#231)
Adopted the XDG Base Directory specification to standardize the location of temporary files and cache directories, improving compatibility with user environments.
Introduced Ruff for linting and formatting, ensuring consistent code style, enforcing docstrings, and maintaining type annotations across the codebase. (#259)
CADETProcess.processModel improvements#
Add/component names when adding reactions by @AntoniaBerger in https://github.com/fau-advanced-separations/CADET-Process/pull/223
Make axial dispersion component dependent by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/239
Add method to calculate Bodenstein number by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/234
Improve interpolation of concentration profiles by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/218
Normalize profiles before fitting piecewise polynomial by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/205
CADETProcess.comparison improvements#
Add ShapeFront difference metric by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/242
CADETProcess.fractionation improvements#
Add/use component names when adding fractions by @AntoniaBerger in https://github.com/fau-advanced-separations/CADET-Process/pull/244
Use last point fulfilling purity constraints for initial values by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/254
CADETProcess.simulator improvements#
Add version property to Cadet by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/255
Add warning to simulator when setting n_cycles_max below n_cycles_min by @ronald-jaepel in https://github.com/fau-advanced-separations/CADET-Process/pull/213
Adapt to CADET-Python’s new run interface by @ronald-jaepel in https://github.com/fau-advanced-separations/CADET-Process/pull/245
CADETProcess.optimization improvements#
Expose option to set precision for variables by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/103
Add pairwise plot by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/246
Update hopsy methods by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/240
Other improvements#
Make run methods private by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/211
Fix syntax warnings for invalid escape sequence in docstrings by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/241
Pin sqlite version to avoid crashes by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/233
Deprecations / Breaking changes#
In the
SimulatorBaseclass, therunmethod, which defined an interface for subclasses, is no longer available. Users should instead utilize thesimulate()method, which includes additional pre- and post-processing steps. The_run()method has been made private.In the
OptimizerBaseclass, therunmethod, which defined an interface for subclasses, is no longer available. Users should instead utilize theoptimize()method, which includes additional pre- and post-processing steps. The_run()method has been made private.Height was removed from
Shape. (#221) Users should instead explicitly add aHeightmetric to theComparator.The
valve_dead_volumeattribute has been removed from theZoneBaseClassclass. Instead of usingvalve_dead_volume, users can now passvalve_parameters. This parameter should include aunit_type(which can be eitherCstrorTubularReactor) along with the corresponding parameters specific to the unit type. For detailed guidance on setting up the valve parameters, refer to the method_setup_valve(). It’s important to note that the current implementation of valve parameters is a temporary workaround to address a limitation in CADET-Core, which does not support zero-volume mixer/splitter unit operations and is not meant to model system dead volume. Hopefully, future updates will include support for this feature, eliminating the need for this workaround.
Fixed bugs:#
Do not round hopsy problem when computing chebyshev center by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/256
Fix storage of surface_diffusion in parameters dict by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/277
Transfer output state when building flow sheet from CarouselBuilder by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/274
Add concentration to parameters by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/238
Call super().init() for Simulator by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/212
Fix Aggregator setter by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/216
Fix ProxyList by @schmoelder in https://github.com/fau-advanced-separations/CADET-Process/pull/225
Handle nan’s in round_to_significant_digits by @ronald-jaepel in https://github.com/fau-advanced-separations/CADET-Process/pull/235
Extend MPMLangmuir gamma range by @ronald-jaepel in https://github.com/fau-advanced-separations/CADET-Process/pull/210
Full Changelog: Compare v0.10.1 to v0.11.0