Redesigning OpenFOAM for the Future

OpenFOAM Redesign

In 2020, CFD Direct were tasked to develop multicomponent diffusion modelling in OpenFOAM with funding from the Process Engineering Consortium. The Consortium need models, e.g. Maxwell-Stefan, that represent complex diffusion of species in fluid mixtures, affecting both specie concentration and energy. As part of the work, we created a new ThermophysicalTransportModels library with a new interfaces for: fluxes of heat, q() and divq(); and fluxes of mass, j() and divj(). As a consequence, heat transfer became consistent across applications, boundary conditions and data processing. This critical code redesign is typical of our strategy for sustainable development of OpenFOAM, supported by dedicated maintenance funding from OpenFOAM supporters.

Interface Capturing in OpenFOAM

Interface Capturing in OpenFOAM

In July 2020, CFD Direct released a framework for surface interpolation in interface capturing for multiphase flows in OpenFOAM. All interpolation schemes, used for flux calculation in advection, operate with the MULES-based solvers, e.g. interFoam. The framework is easy to use, extensible, and robust due to bounded, conservative numerics. The new framework comes with a new family of interpolation schemes based on piecewise-linear interface calculation (PLIC). The PLIC schemes provide a promising alternative to standard interface compression, performing better for meshes with regions of cell refinement. All schemes are conservative, bounded and robust and can run efficiently with large time steps.

Water Waves in OpenFOAM

Water waves in OpenFOAM

In May 2017, we implemented water wave modelling into the public, development line of OpenFOAM (OpenFOAM-dev), to simulate flow conditions experienced in marine and offshore engineering, e.g. on a ship in open water. The initial implementation includes the first order Airy wave and the second order Stokes wave (Stokes II), a second-order accurate utility to apply waves for case initialisation to the entire domain. A verticalDamping source (fvOption) provides wave damping towards outlet regions and an interfaceHeight function object processes interface elevation at specified locations.

OpenFOAM Barycentric Tracking

Cyclone streamlines

In April 2017, we added barycentric tracking into the public, development line of OpenFOAM (OpenFOAM-dev), as a complete replacement to the tracking algorithm that existed in OpenFOAM for over 10 years. Barycentric tracking works on any decomposed tet mesh, irrespective of mesh quality, including poor quality, flat and inverted tetrahedra. The new development was funded from the €100 k for OpenFOAM maintenance, raised through the OpenFOAM Foundation in 2017, in which “particles and tracking” was identified as an area in OpenFOAM “requiring significant code refactoring and/or rewriting”.

OpenFOAM is Free Software

OpenFOAM is Free Software | CFD Direct

OpenFOAM is free software, meaning users have the freedom to run, copy, distribute, study, change and improve the software. Users benefit from these freedoms, which account for much of OpenFOAM’s popularity. The OpenFOAM Foundation is the copyright holder of OpenFOAM, which it licenses exclusively under the GPL. It maintains a strong legal position to enforce the licence and preserve its freedoms, by being the single owner of OpenFOAM. This requires contributors to the project to assign copyright in their OpenFOAM contributions to it, through its Contributor Agreement. Organisations with a serious commitment to free software are signing the Agreement, including CFD Direct, blueCAPE, VTT Technical Research of Finland Ltd and Intel.

Where is the Source Code?

Where Is The Source Code?

Where is the Source Code? is a campaign to promote free, public distribution of OpenFOAM and software that links intimately to OpenFOAM. It is in response to a general dissatisfaction with the practice of making a modification to OpenFOAM, then promoting the benefits of the modification, without making that modification freely available to the public, often in order to sell it commercially. The campaign is simply to get people to ask “Where is the Source Code?” when modifications like this are promoted, for example after a conference presentation or in a response to a discussion on the Internet.