Welcome to FLUBIO solver homepage
FLUBIO (a.k.a. FLUBIO-PETSC) is a parallel, unstructured, finite-volume based solver for the solution of the Navier–Stokes equations and convection–diffusion like equations. The solver is written using modern Fortran (2003+ standard), it is object-oriented, and is organized in such a way that it is easy to understand and modify. The solver is targeted at students, academics, personal users, and practitioners to help them understand the general theory behind modern CFD solution methods and discretization techniques. The solver is also general and capable enough to deal with industrial and academic problems found in the field of fluid dynamics.
News - As of 22OCT2023
Stay tuned as a big update is coming, including a cloud-based GUI, better support for PETSC and HYPRE, and new solvers.
Where can I download FLUBIO?
To download FLUBIO, visit the project's GitLab repository.
How to install FLUBIO?
FLUBIO installation is straightforward on UNIX-Linux OS. You can find the installation instructions at this link or in the project's GitLab repository.
What can I do with FLUBIO?
FLUBIO can deal with one-dimensional, two-dimensional, and three-dimensional domains. It uses unstructured meshes, and in theory, can handle any cell element type (tetrahedrons, hexes, prisms, pyramids, and general polyhedrons). Hybrid meshes, made up of any combination of the cell types mentioned previously, are also supported. FLUBIO does not support hanging nodes.
FLUBIO has been fully parallelized by using domain decomposition and the message passing interface library OpenMPI. To solve the linear systems arising from the discretization of the governing equations, FLUBIO uses the high performance computing library PETSc, which is a collection of routines for efficient and scalable scientific computing.
FLUBIO comes with many solvers, each one dealing with different governing equations commonly encountered in CFD. FLUBIO can deal with the following equations:
- Poisson equation.
- Laplace equation.
- Burgers equation.
- General transport equation.
- Incompressible single-phase Navier-Stokes equations (laminar and turbulent).
The solver is cell-centered, and it uses segregated methods to deal with the pressure–velocity coupling of the Navier–Stokes equations (e.g., SIMPLE method and PISO method). To avoid the checkerboard instability, the Rhie–Chow interpolation is used. Many high-order and high-resolution methods are implemented, which guarantees at least second-order accurate solutions. The time-derivative, convective terms, diffusive terms, and gradient terms appearing in the governing equations can be discretized in a term-by-term basis; that is, the user can use any combination of different numerical schemes. To enforce the monotonicity principle, slope limiters are implemented. Steady and unsteady simulations are supported. For turbulence modeling, both Reynolds Averaged Navier–Stokes (RANS) and Large Eddy Simulation (LES) models are available.
Some colorful simulations
FLUBIO uses the VTK library to save the solution data (we especifically use the VTK Fortran library). To visualize the solution, you can use paraview.
At this link, you can find a few colorful simulations.
Getting started with FLUBIO
To get started with FLUBIO and to get further information about how to use the solver, we invite you to read the tutorial manual, which comes with the source code and is located in the examples directory.
At this link, you can find a series of videos to help you installing and getting started with FLUBIO.
How to cite FLUBIO?
- E. Alinovi, J. Guerrero, "FLUBIO – An unstructured, parallel, finite-volume based Navier-Stokes and convection-diffusion like equations solver for teaching and research purposes," SoftwareX, Volume 13, January 2021, 100655. https://doi.org/10.1016/j.softx.2020.100655
Presentations
- J. Guerrero, E. Alinovi, "FLUBIO-PETSC. Yet another CFD solver in turbulent times," Computational Rheology Kaizen Meetings. University of Minho, Guimaraes, Portugal. March 11, 2021.
Support
FLUBIO is on constant development. For reporting issues please use the issue tracker on the project's GitLab repository.
Do you want to help?
If you want to help us in improving FLUBIO, please send an email to flubiopetsc@gmail.com