  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.
