cadet-process

A Framework for Modelling and Optimizing Advanced Chromatographic Processes

https://github.com/fau-advanced-separations/cadet-process

Science Score: 77.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    1 of 3 committers (33.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (17.1%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

A Framework for Modelling and Optimizing Advanced Chromatographic Processes

Basic Info
  • Host: GitHub
  • Owner: fau-advanced-separations
  • License: gpl-3.0
  • Language: Python
  • Default Branch: dev
  • Homepage:
  • Size: 4.52 MB
Statistics
  • Stars: 29
  • Watchers: 5
  • Forks: 15
  • Open Issues: 79
  • Releases: 23
Created over 6 years ago · Last pushed 6 months ago
Metadata Files
Readme Contributing License Code of conduct Citation Zenodo

README.md

GitHub Release CI Coverage PyPI - Downloads Zenodo DOI

CADET-Process

The CADET core simulator is a very powerful numerical engine that can simulate a large variety of physico-chemical models used in chromatography and other biochemical processes. However, the configuration files of CADET can be complex and difficult to work with. This is especially relevant when multiple unit operations are involved which is often the case for complex integrated processes. Moreover, the structure of the configuration file may change during process optimization, for example when the order of dynamic events changes, making the direct use of CADET impossible without another layer of abstraction.

In this context CADET-Process was developed. The package facilitates modeling processes using an object oriented model builder. This interface layer provides convenient access to all model parameters in the system. It automatically checks validity of the parameter values and sets reasonable default values where possible. This simplifies the setup of CADET simulations and reduces the risk of ill-defined configurations files.

Importantly, CADET-Process enables the modelling of elaborate switching schemes and advanced chromatographic operating modes such as complex gradients, recycling systems, or multi-column systems by facilitating the definition of dynamic changes of flow sheet connectivity or any other time dependent parameters.

The package also includes tools to evaluate cyclic stationarity of processes, and routines to determine optimal fractionation times required determine common performance indicators such as yield, purity, and productivity. Moreover, utility functions for calculating reaction equilibria and buffer capacities, as well as convenient functions for plotting simulation results are provided.

Finally, these processes can be optimized by defining an objective function (with constraints) and using one of the integrated optimization algorithms such as NSGA-3. This can be used to determine any of the physico-chemical model parameters and to improve process performance.

For more information and tutorials, please refer to the documentation. The source code is freely available on GitHub, and a scientific paper was published in MDPI Processes. If CADET-Process is useful to you, please cite the following publication:

@Article{Schmoelder2020, author = {Schmölder, Johannes and Kaspereit, Malte}, title = {A {{Modular Framework}} for the {{Modelling}} and {{Optimization}} of {{Advanced Chromatographic Processes}}}, doi = {10.3390/pr8010065}, number = {1}, pages = {65}, volume = {8}, journal = {Processes}, year = {2020}, }

Installation

CADET-Process can be installed with the following command:

pip install CADET-Process

To use CADET-Process, make sure, that CADET is also installed. This can for example be done using conda:

conda install -c conda-forge cadet

For more information, see the CADET Documentation.

Free software

CADET-Process is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 3.

Note

This software is work in progress and being actively developed. Breaking changes and extensive restructuring may occur in any commit and release. If you encounter problems or if you have questions, feel free to ask for support in the CADET-Forum. Please report any bugs that you find here. Pull requests on GitHub are also welcome.

Acknowledgments

Please refer to the list of contributors who helped building and funding this project.

Contributing

Please read CONTRIBUTING for more details.

Owner

  • Name: Advanced Separations @ FAU
  • Login: fau-advanced-separations
  • Kind: organization
  • Location: Erlangen, Germany

Citation (CITATION.bib)

% As an open-source project, CADET-Process relies on the support and recognition from users and researchers to thrive.
% Therefore, we kindly ask that any publications or projects leveraging the capabilities of CADET-Process acknowledge its creators and their contributions by citing an adequate selection of our publications.

@Article{Schmoelder2020,
  author  = {Schmölder, Johannes and Kaspereit, Malte},
  title   = {A {{Modular Framework}} for the {{Modelling}} and {{Optimization}} of {{Advanced Chromatographic Processes}}},
  doi     = {10.3390/pr8010065},
  number  = {1},
  pages   = {65},
  volume  = {8},
  journal = {Processes},
  year    = {2020},
}

GitHub Events

Total
  • Fork event: 4
  • Create event: 90
  • Commit comment event: 2
  • Release event: 4
  • Issues event: 62
  • Watch event: 14
  • Delete event: 77
  • Member event: 2
  • Issue comment event: 119
  • Push event: 567
  • Pull request review comment event: 98
  • Pull request review event: 120
  • Pull request event: 147
Last Year
  • Fork event: 4
  • Create event: 90
  • Commit comment event: 2
  • Release event: 4
  • Issues event: 62
  • Watch event: 14
  • Delete event: 77
  • Member event: 2
  • Issue comment event: 119
  • Push event: 567
  • Pull request review comment event: 98
  • Pull request review event: 120
  • Pull request event: 147

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 495
  • Total Committers: 3
  • Avg Commits per committer: 165.0
  • Development Distribution Score (DDS): 0.111
Top Committers
Name Email Commits
Johannes Schmölder j****r@f****e 440
Johannes Schmölder j****r@f****e 54
LukTh 1****h@u****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 96
  • Total pull requests: 170
  • Average time to close issues: 5 months
  • Average time to close pull requests: 25 days
  • Total issue authors: 16
  • Total pull request authors: 12
  • Average comments per issue: 1.05
  • Average comments per pull request: 1.18
  • Merged pull requests: 107
  • Bot issues: 0
  • Bot pull requests: 3
Past Year
  • Issues: 23
  • Pull requests: 66
  • Average time to close issues: 23 days
  • Average time to close pull requests: 14 days
  • Issue authors: 7
  • Pull request authors: 8
  • Average comments per issue: 0.57
  • Average comments per pull request: 0.5
  • Merged pull requests: 38
  • Bot issues: 0
  • Bot pull requests: 3
Top Authors
Issue Authors
  • schmoelder (47)
  • ronald-jaepel (27)
  • hannahlanzrath (11)
  • flo-schu (10)
  • daklauss (3)
  • AntoniaBerger (2)
  • OskarBergmann (1)
  • dion-is (1)
  • abe-martin (1)
  • mswoff (1)
  • nbarry03 (1)
  • jharris1679 (1)
  • sleweke-bayer (1)
  • MoritzImendoerffer (1)
  • maruedt (1)
Pull Request Authors
  • schmoelder (103)
  • ronald-jaepel (54)
  • hannahlanzrath (10)
  • daklauss (8)
  • flo-schu (5)
  • dependabot[bot] (3)
  • AntoniaBerger (3)
  • jAniceto (2)
  • angelamoser1 (2)
  • LukTh (1)
  • jharris1679 (1)
  • jbreue16 (1)
  • nbarry03 (1)
  • AnanEzeiry (1)
Top Labels
Issue Labels
enhancement (18) feature parity (9) bug (9) good first issue (7) priority: medium (3) dev-call (2) optimization (1) question (1) test (1) duplicate (1)
Pull Request Labels
dependencies (3) good first issue (2) python (2) enhancement (1) feature parity (1) documentation (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 501 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 23
  • Total maintainers: 3
pypi.org: cadet-process

A Framework for Modelling and Optimizing Advanced Chromatographic Processes

  • Versions: 23
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 501 Last month
Rankings
Dependent packages count: 10.1%
Forks count: 10.9%
Average: 14.6%
Stargazers count: 15.2%
Downloads: 15.4%
Dependent repos count: 21.6%
Last synced: 6 months ago

Dependencies

.github/workflows/pipeline.yml actions
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • conda-incubator/setup-miniconda v2 composite
.github/workflows/publish-to-pypi.yml actions
  • actions/checkout master composite
  • actions/setup-python v1 composite
  • pypa/gh-action-pypi-publish master composite
pyproject.toml pypi
setup.py pypi
environment.yml conda
  • cadet
  • python 3.10.*