Department Process Engineering
PeePyPoo and BioChemicalTreatment - Open-Source Software for (Hybrid) Modelling of Water Systems
Mathematical modelling is an established tool which has proven to be effective for the design and operation of water resource recovery facilities (formerly known as wastewater treatment plants). Nowadays, the focus of these plants is shifting from only treating wastewater towards additionally recover resources and reducing greenhouse gas emissions. To successfully manage this shift, new models are needed.
Traditionally, the models are developed in the so-called mechanistic way, meaning that they are derived based on the biological, chemical and physical processes. However, this type of modelling gets to its limits, for example for modelling of N2O emissions, which is why new ways of modelling are required. One new paradigm is hybrid modelling, which aims to combine mechanistic models with data-driven approaches, which has the potential to provide not only new models but further insights into the modelled processes.
However, the technical implementation of such hybrid models is still challenging: While the mechanistic models are usually developed in commercial simulators, the data-driven counterparts are implemented in open-source programming languages such as Python or Julia. The interaction between the two worlds, needed for hybrid modelling, is difficult.
To overcome this challenge and to facilitate the research of hybrid models, we are developing a novel modelling framework.
The Framework
Our framework can be used from both Python and Julia consists of two tightly connected parts: PeePyPoo (in Python) and BioChemicalTreatment (in Julia).
Hereby, BioChemicalTreatment is a software library providing various systems (Reactors, Processes, Clarifiers etc.) for the simulation of water systems. These systems can then be connected to model a treatment facility and then simulated. PeePyPoo builds on top of this and provides the same functionality for Python. Check out the documentation and code on GitLab for further information (links below).
PeePyPoo
Python Package for Hybrid Modeling of Water Systems
Docs: datinfo.gitlab.io/PeePyPoo
Source: gitlab.com/datinfo/PeePyPoo
Installation instructions: datinfo.gitlab.io/PeePyPoo/installation.html
BioChemicalTreatment
Julia Package for Hybrid Modeling of Water Systems
Development in collaboration with Mariane Schneider (myschneider@meiru.ch) and Juan Pablo Carbajal (juanpablo.carbajal@ost.ch)
Docs: datinfo.gitlab.io/BioChemicalTreatment.jl/dev/
Source: gitlab.com/datinfo/BioChemicalTreatment.jl
Installation instructions
- Julia: julialang.org/downloads/
- BioChemicalTreatment: datinfo.gitlab.io/BioChemicalTreatment.jl/dev/