Biofilm.jl: a fast solver for one-dimensional biofilm chemistry and ecology

Mark Owkes,Kai Coblentza,Austen Erikssona,Takumi Kammerzella,Philip S. Stewart
2023-07-12
Abstract:Biofilms are communities of microorganisms that grow on virtually all surfaces with sufficient nutrients including aquatic and industrial water systems and medical devices. Biofilms are complex, structured communities where the interplay of growth, metabolism, and competition between species interact with physical processes of diffusion, convection, attachment, and detachment. This work describes a model of a one-dimensional biofilm in a stirred tank reactor that incorporates these complexities. The model is implemented in the modern Julia programming language providing an efficient tool for studying a large variety of biofilms and the intricate communities the microorganisms create. Details of the new software, known as Biofilm.jl, including the mathematical model and organization and execution of the code, are provided. Examples of biofilms modeled using Biofilm.jl are presented such as a single heterotroph, a sulfide-oxidizing bacteria (SOB) and sulfate-reducing bacteria (SRB), and a phototroph. Postprocessing tools are described that allow a Biofilm.jl user to make plots and extract specific values from the solution and explore the simulated biofilm results.
Biological Physics
What problem does this paper attempt to address?
The paper mainly addresses the following issues: ### Research Background and Objectives - **Research Subject**: Biofilm, a community formed by microorganisms under sufficient nutrient conditions, commonly found in water environments, industrial water systems, and on the surfaces of medical devices. - **Complexity**: There are complex interactions within biofilms, including microbial growth, metabolism, interspecies competition, and physical processes such as diffusion, convection, attachment, and detachment. ### Problems Addressed - **Mathematical Modeling**: Proposes a one-dimensional biofilm model that considers the growth of microbial particles and their consumption or production of substrates, while also simulating changes in biofilm thickness. - **Software Development**: Developed an efficient software package named Biofilm.jl based on the modern Julia programming language to solve the aforementioned mathematical model. This software can simulate the dynamic changes of different types of biofilms and their internal microbial communities. - **Algorithm Implementation**: Utilizes the finite volume method to discretize partial differential equations and solves the model using ordinary differential equation solvers from the DifferentialEquations.jl library. - **Post-Processing Tools**: Provides a series of post-processing tools to help users analyze simulation results, such as plotting charts and extracting specific values. ### Main Contributions - **Updated Code and Solvers**: Reproduced the classic one-dimensional biofilm model and updated it with the latest code and solvers to replace the old code. - **Flexibility and Extensibility**: The newly developed software is easy to modify, supporting customizable dynamic expressions and time-dependent boundary conditions. - **Performance Improvement**: Leveraged the features of the Julia language to achieve a fast and stable solution for biofilm problems. - **Educational and Research Value**: Serves as an educational and research tool, useful for teaching and scientific research. In summary, the main purpose of this paper is to develop an efficient software, Biofilm.jl, for simulating the dynamic behavior of one-dimensional biofilms. It also provides detailed model descriptions, numerical methods, and software organization structures to help researchers better understand and explore the complexity of biofilm systems.