Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • openfoam openfoam
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 426
    • Issues 426
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 9
    • Merge requests 9
  • Deployments
    • Deployments
    • Releases
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • Development
  • openfoamopenfoam
  • Merge requests
  • !576

ENH: Added new parallelFvGeometryScheme

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Mattijs Janssens requested to merge feature-parallelFvGeometryScheme into develop Nov 23, 2022
  • Overview 5
  • Commits 1
  • Changes 3

OpenFOAM parallel-consistent geometry calculation

This release adds a new parallel geometry calculation method. It is used as a wrapper around other geometry calculation methods:

geometry
{
    type            parallel;
    // Optional underlying geometry calculation. Default is 'basic'.
    geometry
    {
        type            highAspectRatio;
    }
}

It

  • applies owner side face geometry (centre, normal (negated)) to the other side
  • recalculates cell-based geometry of affected cells

It is mainly interesting in single-precision in that it removes the different truncation error from circulating in different direction. This can cause problems when calculating global transformations e.g.

 --> FOAM FATAL ERROR: (openfoam-2206)
 bad size -653174757

     From void Foam::List<T>::doResize(Foam::label) [with T = Foam::vectorTensorTransform; Foam::label = int]
     in file lnInclude/List.C at line 84.


 #0  Foam::error::printStack(Foam::Ostream&)
 #1  Foam::error::simpleExit(int, bool) at ??:?
 #2  Foam::error::exiting(int, bool)
 #3  Foam::List<Foam::vectorTensorTransform>::doResize(int)
 #4  Foam::globalIndexAndTransform::determineTransformPermutations() at ??:?

Note that it does not change the point positions so any other calculated geometry (e.g. cell-closedness) might be affected.

Tutorial:

Source code:

  • src/finiteVolume/fvMesh/fvGeometryScheme/parallel
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: feature-parallelFvGeometryScheme