What is Fluidity?

Fluidity is an open source, general purpose, multiphase computational fluid dynamics code capable of numerically solving the Navier-Stokes equation and accompanying field equations on arbitrary unstructured finite element meshes in one, two and three dimensions. It is parallelised using MPI and is capable of scaling to many thousands of processors. Other innovative and novel features include the use of anisotropic adaptive mesh technology, and a user-friendly GUI and a Python interface which can be used to calculate diagnostic fields, set prescribed fields or set user-defined boundary conditions.


A 2D simulation of a lock-exchange demonstrating how Fluidity adapts the mesh to only place high-resolution where it's really needed. See Heister et al. (2011, 2014) for more details.


A multiphase flow simulation of silicon carbide particles settling in saline water, with the unstructured adaptive mesh resolving the Rayleigh-Taylor instabilities. See Jacobs et al. (2013) for more details.

Application areas

Fluidity is used in a number of different scientific areas including geophysical fluid dynamics, computational fluid dynamics, ocean modelling and mantle convection. It uses a finite element/control volume method which allows arbitrary movement of the mesh with time dependent problems, allowing mesh resolution to increase or decrease locally according to the current simulated state. It has a wide range of element choices including mixed formulations. See below for more detailed examples.

Multiphase flow

Tsunami modelling

Stokes flow

Obtaining Fluidity

Fluidity is available free of charge under the GNU Lesser General Public License (LGPL). The source code and manual are available (and maintained) via a GitHub repository. We also maintain installation packages for Ubuntu and RHEL/CentOS. Visit the download and installation page for more details.

Collaborators

Fluidity has benefited from work contributed by staff at a number of companies and institutions, including Imperial College London, University of Oxford, University of Reading, National Oceanography Centre Southampton, Herriot Watt University, Numerical Algorithms Group, Museum für Naturkunde Berlin, Florida State University, Columbia University, Chinese Academy of Sciences, The University of Edinburgh, and the Australian National University.

Contact

Fluidity is a community project and warmly welcomes developers and users who wish to contribute to the codebase. If you are interested in contributing, please contact Matt Piggott for more information. We ask all contributors to ensure that their work complies with our copyright clearance procedures.