-
Notifications
You must be signed in to change notification settings - Fork 29
05 Biological Reactors
There are various types of biological reactors used in WWTPs. Some of them has sludge modelled with ASM kinetics. Others may have sludge modelled with Anaerobic Digestion Model (ADM), which are planned for future addition to PooPyLab.
Currently, the only bioreactor class, "asm_reactor", is with sludge modelled with ASM 1 kinetics. The update coming up will allow for the flexibility of modeling the sludge with ASM 2d and 3 for the "asm_reactor". Another quick addition to the bioreactor family is an aerobic digester.
The definition of the "asm_reactor" can be found in "unit_procs/bio.py".
Essentially, the "asm_reactor" is a "pipe" with active volume where biological reactions happen. An asm_reactor contains a certain quantity of sludge that is modelled with user selected kinetics and stoichiometrics such as those defined by the IWA Activated Sludge Models. As a result, the "asm_reactor" differs from the "pipe" in that its inlet and outlet (mainstream) have different concentrations of wastewater constituents (model components).
The "asm_reactor" has a protected member named "_sludge" that is an instance of the "ASM_1" class (defined in ASMModel/asm_1.py). Future update of the "asm_reactor" will allow user to select kinetic models in addition to ASM 1 to describe the sludge behaviors.
Because of the kinetic models, the "asm_reactor" is also responsible for the integration of the model. Currently, the solver function in the scipy.integrate package is used with BDF method being the default. (Euler, Runge-Kutta 4th order, and Runge-Kutta-Fehlberg 45 integration routines have been implemented in previous attempts of a home-built solver.) There is flexibility for user to choose which routine to use at the interface.