Using NCC in OpenFOAM

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 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

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

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.