In March 2025, CFD Direct celebrated its 10th anniversary.  CFD Direct was founded by Henry Weller (creator of FOAM), Chris Greenshields (OpenFOAM co-founder) and Jenya Collings in March 2015.  It maintains, develops and manages OpenFOAM, released via The OpenFOAM Foundation, exclusively as free, open source software.  CFD Direct also provides services to users of OpenFOAM, including development, support, consultancy, training and cloud computing (CFDDFC®).  This article covers some of the highlights of the past 10 years.

2014: Bug-fixing

In 2014, OpenFOAM was suffering from a relentless increase in unresolved issues (bugs), as shown in the graph below.  The trend coincided with the acquisition of OpenCFD, initially by SGI, and later by ESI.  CFD Direct’s founders left ESI to make a fresh start, following a six month restrictive covenant preventing them from earning a living from CFD.  During that period, Weller fixed issues and made public the development line of OpenFOAM (OpenFOAM-dev) in the OpenFOAM Foundation Repository.  By the time CFD Direct was launched, he had reduced the number of unresolved issues from ~300 to ~120.

Years 1-3: Usability

By the end of the year 1 of CFD Direct, unresolved issues fell well below 100.  OpenFOAM v3 was released, with a new major version number to distinguish it from the notoriously poor versions 2.2 and 2.3.  New OpenFOAM Training courses were written and delivered to OpenFOAM users: Essential CFD, Applied CFD and Programming CFD. Our cloud product CFDDFC was first released, providing a turnkey installation of OpenFOAM on Amazon Web Services (AWS).  

In year 2, we created several new tools in OpenFOAM to make it easier to use.  The release of OpenFOAM v4 marked a beginning of a new era in usability with a post-processing interfacecase management tools and template cases.  It included tools for live plotting of data and creating videos, and scripts to create starter code for new boundary conditions, applications and post-processing functions.  We identified maintenance as an activity which required designated funding and launched the first funding campaign.

Will Bainbridge joined CFD Direct at the beginning of year 3. He made an immediate impact by rewriting the tracking in OpenFOAM and implementing a proper software framework for surface wave modellingOpenFOAM v5 was a noteworthy release because it improved usability still further, including bash completion.  We introduced a command line interface for CFDDFC, which enabled quick simple deployment of CFD workloads on AWS.  

Years 4-7: Redesign

While OpenFOAM v6 and OpenFOAM v7 were less noteworthy, year 4 and year 5 were no less successful.  Work began on rewriting components of code, e.g. arbitrary mesh interface (AMI), responsible for large proportion of unresolved issues.  The need to fund OpenFOAM maintenance gained acceptance, culminating in the successful OpenFOAM “Open Day” in 2018.  With new C5n instances from AWS, we demonstrated much better parallel scaling across a cluster of instances.  Scaling improved further with their elastic fabric adapter which we previewed in 2019.

Year 6 began in March 2020, at the start of the COVID pandemic.  We were able to quickly moved all our training online since we already delivered Programming CFD in that format.   Development and maintenance continued as normal, but with greater emphasis on redesigning ineffective parts of OpenFOAM.  OpenFOAM v8 included a new framework for interface capturing with the volume of fluid (VoF) method.  It also included new libraries for thermophysical transport modelling and momentum transport modelling.  These developments introduced greater consistency, which inevitably improved usability, extensibility and robustness.

We replaced fvOptions with fvModels for physical sources and fvConstraints for numerical constraints.  They were included in OpenFOAM v9, released in year 7. We reimplemented many physical models, e.g. particles, as fvModels which plug simply into standard solvers.  This helped to reduce the number of CFD solvers that we need to maintain in OpenFOAM.  We published a new book on CFD, available online for free and as a $29.95, print-on-demand paperback.  The book took 2½ years to write, in between all our other work.

Years 8-9: Robustness

In year 8, non-conformal coupling (NCC) was released in OpenFOAM v10 as a replacement for AMI.  AMI is non-conservative and consequently unreliable for many problems, making it the biggest cause on unresolved issues.  NCC was a multi-year development effort which helped reduce the unresolved issues to today’s nominal level.  In cloud computing, we released an alternative OpenFOAM environment on AWS named Web CFDDFC.  While “vanilla” CFDDFC is accessible via a remote desktop client, Web CFDDFC uses a remote desktop running in a web browser.

The release of OpenFOAM v11 in year 9 was a landmark moment.  It included modular solvers written as classes, in contrast to the traditional application solvers, integral to OpenFOAM since icoFoam in 1993.  Modular solvers are simpler to maintain and extend, and are more flexible for multi-region simulations.  OpenFOAM v11 also included the redesign of dynamic mesh functionality, replacement of the liquid-film functionality, consolidation of NCC functionality and a new snappyHexMeshConfig utility to preconfigure input files for meshing.

Our work on NCC, modular solvers and dynamic meshing enabled OpenFOAM to simulate IC Engines including value and piston motion.  Our commitment to robustness has given the Foundation’s OpenFOAM a reputation for reliability beyond other OpenFOAM variants (“clear water”, as one commentator put it).  With the wind in our sails, we recruited Aidan Wimshurst, known for his online instructional videos on CFD.  Aidan began working with Chris on creating Productive CFD: four days of training, to enable users to get better, relevant results in fewer attempts, and identifying and fixing mistakes quickly and with confidence.

Year 10: Consistency

In Year 10 we released OpenFOAM v12 which takes advantage of modular solvers and non-conformal coupling (NCC) to improve simulations with multiple regions, including simplifying meshing and coupling.  It includes some new, useful boundary conditions and the option to include units, e.g. [bar], with input values, which are converted accordingly.  The installation of third party software is easier, with the openfoam12 package for Ubuntu using the standard paraview package.

Field-based Lagrangian

We released a new field-based Lagrangian library in a single commit of ~65,000 lines of code in OpenFOAM-dev.  It is part of a multi-year development to store parcel data as fields rather than with each parcel object.  This makes it far more flexible, extensible and efficient and easier to use.  It is more consistent with the rest of OpenFOAM, with a case using Lagrangian now including files in 0, constant, system for fields, models and case controls respectively, as shown in Field-Lagrangian in OpenFOAM. Parabolic tracking accompanies the new Lagrangian, which provides second-order motion, which improves accuracy and robustness.

MULES

There were significant improvements to MULES in the development line of OpenFOAM (OpenFOAM-dev, packaged here).  These included: improvements to the iterative MULES algorithm to guarantee boundedness irrespective of limiter convergence (see log for correct commit message); a new control structure for MULES parameters; optional controls based on limiter convergence for semi-implicit MULES; a Function1 of the α-Courant number for sub-cycling control of the α-equation, both in sub-cycling in VoF interface-capturing and in sub-cycling in the multiphaseEuler solver.

Productive CFD

We returned to in-person OpenFOAM Training with our new Productive CFD courses.  The courses look more broadly at analysing fluid dynamics problems with CFD.  They connect the underlying technology (science and numerical methods) with the OpenFOAM code and demonstration examples.  They include exercises in programming coded input files that make small calculations to verify simulations and models.  Our OpenFOAM Training has been extended to include a Course Catalogue and descriptions of our Academic On-site and Industrial On-site Training.

Cloud Computing

There are now three versions of CFDDFC for running OpenFOAM on AWS.  Web CFDDFC provides a secure remote desktop via a web browser for instances using x86 processor architectures (i.e. Intel and AMD) and CFDDFC (Arm) provide the same desktop for instances using Arm-based processors.  The “vanilla” CFDDFC product provides a secure remote desktop using the X2Go client.

Statistics from Year 10
  • Development: 961 hours, 732 commits to OpenFOAM-dev
  • Maintenance (redesign, repair and publishing work): 1415 hours
  • Training: 81 days delivered
  • Cloud: reached 1350 subscribers to CFDDFC
  • Book: reached 3500 copies sold
CFD Direct: 10 years (2015-2025)
Tagged on: