Fluidity is an open source, general purpose, multi-phase computational fluid dynamics code capable of numerically solving the Navier-Stokes equations and accompanying field equations on arbitrary unstructured finite element meshes in one, two and three dimensions Piggott2009,Pain2005. It is used in a number of different scientific areas including geophysical fluid dynamics Mitchell2010, computational fluid dynamics Hiester2011, ocean modelling Pain2005 and mantle convection Davies2011. 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 (Fig. 1). It has a wide range of element choices, including mixed formulations. Fluidity is parallelised using MPI and is capable of scaling to many thousands of processors on the UK national HPC service, HECToR. Other innovative and novel features are a user-friendly GUI, Diamond Ham2009 and a python interface which can be used to calculate diagnostic fields, set prescribed fields or set user-defined boundary conditions.

Figure 1: Example of a Fluidity adaptive mesh simulation of the lock-exchange problem. The mesh is adapted to the temperature field (red-blue colour) and velocity (not shown). The mesh is refined where a sharp curvature exists, preserving this interface, whilst reducing overall computational load Hiester2011

Jon Hill 2012-03-02