OpenFOAM fvSchemes: A Comprehensive Guide

Published by rupole1185 on

The fvSchemes file is a crucial component of OpenFOAM simulations, defining the numerical schemes used for solving the governing equations. Understanding this file is essential for achieving accurate and stable solutions.

Key Concepts:

  • Discretization Schemes: OpenFOAM employs various numerical schemes to approximate the derivatives in the governing equations. The fvSchemes file defines which schemes are used for each term.
  • Interpolation Schemes: When evaluating variables at different locations (e.g., face centers), interpolation schemes are required. The fvSchemes file specifies these schemes.
  • Gradient Schemes: To calculate gradients, appropriate gradient schemes are necessary. The fvSchemes file controls these choices.
  • Flux Schemes: For solving the convection terms, flux schemes are used to handle the transport of variables across cell faces. The fvSchemes file dictates these schemes.
  • Divergence Schemes: The fvSchemes file also defines schemes for calculating the divergence of vector quantities.

File Structure:

The fvSchemes file has a simple structure, typically consisting of a few sections:

# default settings
default
{
    // Temporal discretization
    ddtSchemes       Euler;

    // Spatial discretization
    gradSchemes      Gauss linear;
    divSchemes       Gauss linear;
    laplacianSchemes  Gauss linear;
    interpolationSchemes  linear;
    fluxSchemes      Gauss linear;
}

# custom settings for specific equations
# ...

Common Schemes:

Temporal Discretization:

  • Euler: First-order explicit scheme, suitable for simple and stable cases.
  • backward: First-order implicit scheme, providing more stability.
  • CrankNicolson: Second-order implicit scheme, offering better accuracy but potentially more complex.

Spatial Discretization:

  • Gauss linear: Second-order central differencing scheme, commonly used for good accuracy.
  • Gauss upwind: First-order upwind scheme, introducing numerical diffusion but providing stability.
  • Gauss limitedLinear: A combination of linear and upwind schemes, balancing accuracy and stability.
  • Linear: Linear interpolation scheme, appropriate for gradients and interpolation.
  • upwind: First-order upwind scheme, for interpolation when stability is critical.

Flux Schemes:

  • Gauss linear: Second-order central scheme for flux calculation.
  • Gauss upwind: First-order upwind scheme for flux calculation, introducing numerical diffusion.
  • Gauss limitedLinear: A combination of linear and upwind schemes, balancing accuracy and stability.

Choosing the Right Schemes:

Selecting appropriate schemes depends on the specific problem, desired accuracy, and computational resources.

  • Accuracy: Higher-order schemes usually offer better accuracy, but may introduce oscillations or require more computational effort.
  • Stability: Lower-order schemes are generally more stable, but may introduce numerical diffusion.
  • Computational Cost: Higher-order schemes can be computationally more demanding.

Example:

# custom settings for a specific transport equation
transportEquation
{
    ddtSchemes       CrankNicolson;
    gradSchemes      Gauss linear;
    divSchemes       Gauss linear;
    laplacianSchemes  Gauss linear;
    interpolationSchemes  linear;
    fluxSchemes      Gauss limitedLinear;
}

Tips for Using fvSchemes:

  • Start with default settings: Begin with the default schemes and gradually adjust them based on results and experience.
  • Consult documentation: Refer to the OpenFOAM documentation for detailed information on available schemes and their properties.
  • Monitor solution quality: Analyze the convergence behavior, residuals, and mesh sensitivity to identify potential issues related to the chosen schemes.
  • Experiment and refine: Iteratively modify the fvSchemes file to optimize the accuracy, stability, and efficiency of your simulation.

Further Exploration:

By understanding and mastering the fvSchemes file, you can significantly impact the accuracy, stability, and efficiency of your OpenFOAM simulations.


CloudHPC is a HPC provider to run engineering simulations on the cloud. CloudHPC provides from 1 to 224 vCPUs for each process in several configuration of HPC infrastructure - both multi-thread and multi-core. Current software ranges includes several CAE, CFD, FEA, FEM software among which OpenFOAM, FDS, Blender and several others.

New users benefit of a FREE trial of 300 vCPU/Hours to be used on the platform in order to test the platform, all each features and verify if it is suitable for their needs


Categories: OpenFOAM

0 Comments

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *