March 2024: CFD Direct is pleased to announce that OpenFOAM can simulate internal combustion (IC) engines including piston and valve motion. The capability was produced in collaboration with Wärtsilä, Finland and partner organisations, starting in October 2021. It is publicly available from The OpenFOAM Foundation in the development line of OpenFOAM (OpenFOAM-dev, packaged here), with example cases in the ICengines repository. Wärtsilä plan to release new features in the ICengines repository in August each year, following each new version release of OpenFOAM in July.
OpenFOAM® and the OpenFOAM Foundation
OpenFOAM is the leading free, open source software for computational fluid dynamics (CFD), owned by the OpenFOAM Foundation. It is developed and maintained by a group of dedicated individuals, most notably from CFD Direct, who willingly contribute their work free and open source, with the support and consent of the organisations that employ them. CFD Direct includes the creator, architect and co-founder of OpenFOAM, Henry Weller, and co-founder Chris Greenshields, who both manage OpenFOAM as Directors of the OpenFOAM Foundation. OpenFOAM® is a registered trademark of OpenCFD Ltd, originally founded by Weller and Greenshields (and Mattijs Janssens). CFD Direct is not affiliated, associated, authorized, or endorsed by OpenCFD Ltd.
Download OpenFOAM
Download the latest and development versions of OpenFOAM for Ubuntu and other Linux, Windows and macOS, and explore the history and archives.
About OpenFOAM
OpenFOAM is the leading free, open source software for computational fluid dynamics (CFD), managed and developed by CFD Direct and released by the OpenFOAM Foundation.
OpenFOAM Management
CFD Direct manages and maintains OpenFOAM with specialist software engineers with expertise in numerics, geometry/meshing, data processing, fluid dynamics and physical modelling
OpenFOAM Documentation
Free OpenFOAM Documentation resource including the OpenFOAM User Guide, OpenFOAM Linux Guide and articles about the underlying technology.
CFD Tips: OpenFOAM Videos
CFD Tips is our YouTube channel containing a series of free instructional videos for computational fluid dynamics (CFD) with OpenFOAM.
OpenFOAM Features
OpenFOAM has an extensive set of features in meshing, core numerical methods, physical modelling and data analysis for a wide range of CFD applications.
OpenFOAM Licensing
OpenFOAM is licensed under the GNU General Public Licence. The GPL gives users the freedom to run, copy, distribute, study, change and improve the software. It attempts to preserve these freedoms by preventing the inclusion of open source software within non-free, closed sourced software products, by the following two rules.
- Software that includes source code licensed under the GPL inherits the GPL licence.
- If compiled binaries of software licensed under GPL are distributed, the source code must also be made available by the distributor.
The licence discourages sale of the software, in either original or modified form, because anyone purchasing the product could demand the source code and redistribute it for free. If a company or user modifies the software, e.g. as the basis of an in-house tool, the licence does not require them to redistribute those modifications.
Liquid Films in OpenFOAM
CFD Direct have completely replaced the liquid film functionality in OpenFOAM. The new film functionality conserves mass, unlike its predecessor which was non-conservative and consequently inaccurate and unreliable for many problems. It is implemented with the solver module framework, which enables coupling to other regions with gas flows, multiphase flows, particle clouds, solids etc, including calculations of conjugate heat transfer (CHT). As such, it is consistent with the rest of OpenFOAM so can use all the existing sub-modelling, e.g. thermodynamics, transport, etc. The new implementation contains 50% of the code lines of the original one, despite being more functional. It is therefore cheaper and easier to maintain, while being more extensible and robust.
Dynamic Meshes in OpenFOAM
“Dynamic mesh” describes situations where the mesh in CFD changes, either topologically by adding or removing cells, or by capturing the motion of the solution domain. It also relates to changes in the distribution of cells during a parallel simulation. This article describes the redesign of dynamic mesh functionality, released in OpenFOAM v10 and the development version of OpenFOAM (OpenFOAM-dev). The redesign was motivated by the development of non-conformal coupling (NCC). It specifically overcame a limitation of the previous dynamic mesh functionality which permitted only a single form of mesh motion or topological change within a simulation.
Modular Solvers in OpenFOAM
In August 2022, CFD Direct introduced modular solvers to the OpenFOAM development version. Modular solvers are written as classes, in contrast to the traditional application solvers which have been integral to OpenFOAM since icoFoam in 1993. They are simpler to use, maintain and understand than application solvers. They are more flexible; in particular, modules for different fluids and solids can be coupled across multiple regions, e.g. for conjugate heat transfer (CHT) with multiphase flow. Modular solvers are deployed using the foamRun or foamMultiRun applications, which contain a generic solution algorithm for single and multiple regions, respectively. Additional modules and applications replace existing tools for data processing and case configuration.
Effective OpenFOAM Maintenance
OpenFOAM is the leading free, open source software for computational fluid dynamics (CFD), distributed by The OpenFOAM Foundation. In 2014, OpenFOAM had accumulated significant “technical debt” due to a drive for new functionality at the expense of maintenance. Facing an unsustainable level of technical debt, CFD Direct was founded to manage and develop OpenFOAM back to a sustainable position. Code repair has targeted niche functionality that receives less testing. Redesign of larger, critical components of OpenFOAM has eliminated clusters of issues. By 2022, CFD Direct has recovered most of the technical debt, making OpenFOAM significantly more robust, usable and extensible.
OpenFOAM Non-Conformal Coupling
In May 2022, CFD Direct released Non-Conformal Coupling (NCC) in OpenFOAM to connect regions of a domain with independent meshes for applications including rotating geometry. NCC is a robust replacement for the Arbitrary Mesh Interface (AMI) and associated ACMI and Repeat AMI functionalities. Unlike the AMI functionalities, NCC ensures conservation which is essential for accuracy but also for stability, in particular in numerical schemes designed to maintain boundedness, e.g. in multiphase flows. NCC naturally works for partially-overlapping geometries, as illustrated by the case of opening and closing of a three port ball value.
Using NCC in OpenFOAM
In May 2022, CFD Direct released Non-Conformal Coupling (NCC) in OpenFOAM to connect regions of a domain with independent meshes for applications including rotating geometry. NCC is a robust replacement for the Arbitrary Mesh Interface (AMI) and associated ACMI and Repeat AMI functionalities. This document describes how to use NCC to enable OpenFOAM users to transition from the AMI functionality to NCC. Due to its popularity, AMI remains in OpenFOAM for the next version 10 release in July 2022, but will thereafter be removed. The unreliable ACMI and Repeat AMI functionalities are removed.
CFD Book for OpenFOAM
CFD Direct is delighted to announce its publication of a book Notes on Computational Fluid Dynamics: General Principles. The book is written for people who use CFD in their work, research or study, providing essential knowledge to perform CFD analysis with confidence. It offers a modern perspective on CFD with the finite volume method, as implemented in OpenFOAM and other popular general-purpose CFD software. Fluid dynamics, turbulence (and RAS modelling) and boundary conditions are presented alongside the numerical methods and algorithms in a series of short, digestible notes.
OpenFOAM Models & Constraints
In March 2021, CFD Direct replaced fvOptions with new fvModels and fvConstraints classes. fvModels provided a more complete framework for implementation of complex models which could be optionally selected during a simulation. New fvModels were implemented for heat transfer and sources, which are easier to configure than a general fvOption. Pressure limiting was implemented as an fvConstraint named limitPressure, consistent with limitVelocity and limitTemperature. With additional fvModels such as cloud and surfaceFilm, solvers such as reactingFoam replicate the functionality of several existing solvers which are deprecated.
Redesigning OpenFOAM for the Future
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
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
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
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, 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? 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.