3rd November 2015

OpenFOAM 3.0.0 Released

The OpenFOAM Foundation is pleased to announce the release of version 3.0.0 of the OpenFOAM open source CFD toolbox. The change in major version number from 2 to 3 is the first since 2011 and indicates a break in some backward compatibility that requires some changes to one or two case files.

OpenFOAM 3.0.0 is a snapshot of the current OpenFOAM-dev repository which was launched following the release of version 2.3.1 on December 2014 and includes over 800 code commits. As well as adding new functionality, a considerable number of developments have been made to this repository to improve code sustainability and usability. These changes include:

  • redesign of components of code, e.g. turbulence library;
  • greater consistency, e.g. moving default location of blockMeshDict to the system directory (with backward compatibility);
  • better user input, e.g. removal of fluxRequired from fvSchemes;
  • updated and corrected models, e.g. kkLOmega turbulence model.

The release benefits from improved compatibility between the C++ compilers of GCC (4.5+, tested up to v5.2), Intel ICC (15.0.3+) and Clang (3.6+, 3.7 recommended), in line with the ISO 14882:2014(E) Programming Language C++ (C++14) Standard. Over time, we expect to introduce new features in the C++14 Standard to OpenFOAM, paying attention to compatibility of older versions of C++ compilers used in long-term supported Linux operating systems for high availability computers where possible.

OpenFOAM 3.0.0 is distributed under the General Public Licence by the OpenFOAM Foundation as:

foamyHexMesh now requires version 4.3 or later of the Computational Geometry Algorithms Library (CGAL). However, Ubuntu 14.04 LTS currently only provides a package for CGAL v4.2 from the Debian maintainers and, without a newer version available in an alternative package archive, foamyHexMesh is not available in the Deb packs for Ubuntu 14.04 LTS. It is is, however, available in the pack for 15.10.

Version 3.0.0 contains the following new developments and changes:

Turbulence Modelling

  • Incorporated all turbulence models in the new templated TurbulenceModels library; turbulence models are now all selected from the turbulenceProperties file, that includes RAS and LES sub-dictionaries, deprecating the RASProperties and LESProperties files » more »
  • Added Speziale, Sarkar and Gatski (SSG) pressure-strain based Reynolds-stress turbulence model » more »
  • Added wall-adapting local eddy-viscosity (WALE) SGS turbulence model » more »
  • Improved and corrected models incorporated into the new turbulence modelling framework, e.g. corrected the kkLOmega model » more »
  • Adopted the correct velocity in turbulence modelling in single rotating reference frame (SRF) calculations » more »

Multiphase, Reacting Flows

  • Developed new reactingTwoPhaseEulerFoam solver for a system of 2 compressible fluid phases with phase models that can represent multiple species and in-phase reactions, and a phase system that can represent different types of momentum, heat and mass transfer » more »
  • Developed equivalent reactingMultiphaseEulerFoam for multiple phases » more »
  • Implemented phase modelling including boiling/condensation (» more »), turbulent dispersion (» more »), thermal wall functions (» more »), etc.
  • Added experimental face-based momentum equation formulation in twoPhaseEulerFoam » more »
  • Added specification of a reference height to solvers with p_rgh, e.g. using that uses height of the free-surface in a VoF simulation to reduce the range of p_rgh » more »
  • Corrected and improved solidification rate controls in surface film solidification » more »

Numerical Methods

  • Generalised the consistent option for the SIMPLE algorithm (SIMPLEC) and incorporated it into solvers using SIMPLE; specified with consistent keyword in SIMPLE sub-dictionary in the fvSolution file » more »
  • Configured the pitzDaily example to use SIMPLEC, demonstrating 3x speed up » more »
  • Added consistent option to PIMPLE family of solvers » more »
  • Implemented local time stepping (LTS) as a selectable option in each solver that previously had a separate, specialised LTS version; LTS controls are specified in the fvSolution file » more »
  • Improved LTS within the MULES framework for multiphase solvers including interFoam and the reactingEulerFoam solvers » more »
  • Created a set of wallDist algorithms, used e.g. in turbulence modelling, that are specified in the fvSchemes file » more »
  • Added new setFluxRequired function, included in solvers so that fluxRequired entry is no longer needed in the fvSchemes file » more »
  • Added a cellCoBlended interpolation scheme that blends schemes based on local cell Co number » more »

Sources and Constraints (fvOptions)

  • Added new fvOptions including tabulatedAccelerationSource to support 6-DoF solid-body motion » more »
  • Made several improvements to fvOptions including fixedTemperatureConstraint » more »
  • Separated MRF from fvOptions framework to ensure correct application to all velocity fields in multiphase systems » more »
  • Removed limitations and corrected errors in rotorDiskSource fvOption » more »


  • Added multiple grading in single blocks in blockMesh » more »
  • Removed the need to order vertices in boundary faces in blockMesh » more »
  • Added a fast face merging algorithm to blockMesh » more »
  • Moved the default location of blockMeshDict to system directory » more »


  • Upgraded ParaView to version 4.4.0 » more »
  • Enabled paraFoam script to open ParaView when OpenFOAM case does not exist » more »
  • Removed the need for the word entry in dimensionedType, » more »e.g. specifying kinematic viscosity in transportProperties is now:
    nu    [0 2 -1 0 0 0 0] 1e-5;
  • Added buoyancy work term to energy equations in solvers, as described in Energy Equation in OpenFOAM » more »
  • Reinstated the original working version of mapFields, and renamed the experimental parallelised version mapFieldsPar » more »

OpenFOAM v3.0.0 was produced by:

  • Architect/Lead: Henry Weller
  • Management: Henry Weller, Chris Greenshields
  • Maintenance/Testing/Contributions: Henry Weller, Bruno Santos, Chris Greenshields, Richard Jones
  • Other Contributions: Daniel Jasinski, Mattijs Janssens, Hassan Kassem, Alexey Matveichev, Timo Niemi, Juho Peltola, Timm Severin

Thanks to the OpenFOAM enthusiasts who have contributed to a better code through the bug reporting system.

To download OpenFOAM 3.0.0, click here.