What is NextFOAM?

NextFOAM is a fork of OpenFOAM developed by Nextform, Inc. A fork is an independent development process that replicates the source code of a project. NextFOAM integrates ESI’s OpenFOAM source code with our own code and is publicly available on GitHub . As of February 2024, the current version is NextFOAM-2401.

In the past, code developed at Nextfoam was managed as a library and application called nextfoam. At that time, nextfoam was compiled and used in an environment where OpenFOAM was installed. Now, you can simply install NextFOAM without having to install OpenFOMA separately. BARAM-v24.x uses NextFOAM. BARAM does not yet have all of NextFOAM’s features implemented, and BARAM is continuously being updated.

Nextform’s development includes solvers, boundary conditions, physical models, and numerical analysis techniques, which significantly enhance the stability of the solver. The outlines are as follows.

Solver

The solver developed by NextFOAM is located in the NextFOAM-v24/applications/solvers/nextfoam folder and contains the following:

  • buoyantSimpleNFoam, buoyantPimpleNFoam
    • This is an incompressible heat-fluid analysis solver. It can turn the energy equation on and off and 
      calculate chemical species transport and reactions . It can reliably calculate even compressible subsonic flow without shock waves. This solver is currently used in BARAM.
  • chtMultiRegionSimpleNFoam, chtMultiRegionPimpleNFoam
    • A multi-region solver for conjugate heat transfer calculations. This is the solver currently used in BARAM.
  • TSLAeroFoam, UTSLAeroFoam
    • This is a density-based compressible flow solver. It uses the Thin Shear Layer approximation (LU-SGS) technique.

Mach No.=15, hypersonic cylinder analysis results

  • simpleNFoam, pimpleNFoam
    • It is an incompressible flow solver, but buoyantS(P)impleNFoam is not used in BARAM because it includes all the functionality.

Turbulence model – Two layer realizable k-epsilon model

We developed a turbulence model that improves on the realizable k-epsilon model to accurately predict the velocity distribution within the boundary layer in grid systems with y+ less than 30. We use the Wolfstein two-layer model, which divides the boundary layer into two regions in the height direction and applies an appropriate turbulence model to each region.

Plate boundary layer flow verification (left) realizable ke, (right) two-layer model

Boundary conditions

  • farfieldRiemann
    • Far-field boundary conditions for compressible flow
  • subsonicInlet, subsonicOutlet
    • Inlet and outlet boundary conditions for compressible subsonic internal flow
  • epsilonBlendedWallFunction
    • Boundary conditions of the tow layer turbulence model
  • viscosityRatioInletOutletTDR, turbulentIntensityInletOutletTKE
    • Boundary conditions that set the values ​​of k, epsilon, and omega to intensity and viscosity ration

Porous zone model improvement

By improving the method of interpolating pressure at the boundary of the porous cell zone, the problems of unphysical velocity distribution and inaccurate pressure loss are improved, and convergence is also improved.

Improved non-physical velocity distribution. (Left) Before modification, (Right) After modification.

Improved convergence. (Left) Before modification, (Right) After modification

Improved numerical techniques

Improved solver algorithm

The discretized momentum conservation equation and pressure equation were reconstructed to include a pressure gradient term, and the interpolation method for calculating velocity at the face was also modified accordingly. A term was added to the mass flow rate calculation at the face to remove relaxation factor dependence, and a term was modified to remove time step size dependence.

These improvements improve convergence and stability by quickly conserving mass across the entire analysis domain, and ensure consistency of the solution regardless of the relaxation factor or time step size.

Improved mass conservation convergence over the entire region

Ensuring consistency of the solution. (Left) Steady-state solver, (Right) Non-steady-state solver

Convergence stabilization in the transient region. (Left) Before modification, (Right) After modification.

Slope limiter improvement

We implemented the Venkatakrishnan limiter, which improves on the shortcomings of the Barth-Jespersen limiter applied by default in OpenFOAM.

Limiter’s influence (left) Barth-Jespersen, (right) Venkatakrishnan

Improved pressure gradient discretization method

When using the gradient at the cell center to obtain the pressure on both sides of the face, the Venkatakrishnan limiter is applied, and the pressure is calculated as an average value using the coefficients of the discretized momentum equation as weighting factors (momentum weighted reconstruct). This improves the accuracy and stability of the pressure field prediction.

Improved linearization method for generating turbulence model terms

We improved the generation term linearization method in the realizable k-epsilon model to solve the non-stationary residual problem.

Residual 정상화 (좌) 수정 전, (우) 수정 후

Development of a convergence judgment function in the CHT solver

The problem of unnecessary iterations being repeated due to the lack of a convergence test function in the multi-region solver has been resolved.

 

Performance improvement examples

Improved convergence of fan flow (left) OpenFOAM, (right) NextFOAM

Improving cabin HVAC flow stability (left) OpenFOAM, (right) NextFOAM

Improving convergence of ship free-water analysis

 

Improved convergence of manifold flow (left) OpenFOAM, (right) NextFOAM

 

We haven’t yet integrated all the code developed at NextFOAM into NextOAM, and this is still a work in progress. We plan to upgrade NextFOAM to match new OpenFOAM versions.

For more information or inquiries, please contact us at the email address below.

marketing@nextfoam.co.kr