Skip to content
Snippets Groups Projects
Open Cannot create valid tet decomposition for wegde mesh
  • View options
  • Cannot create valid tet decomposition for wegde mesh

  • View options
  • Open Issue created

    Summary

    A wedge mesh generated with blockMesh in OpenFOAM v2012 cannot be decomposed into tets with polyMeshTetDecomposition::cellTetIndices() and the tetIndices::faceTriIs() function.

    A possible reason might be that four points of the tet face are reported, e.g. for the sketch below it writes face (A B C A)

    // A general wege 
         C
         +
        /|
       / |
      / 1|  
     +---+ B
     ^
     A

    If the mesh is generated with blockMesh of OpenFOAM 5.x the error does not occur. Note, only the mesh is generated with 5.x decomposition into tets is then done with v2012.

    Steps to reproduce

    • Generate a wedge domain with blockMesh
    • Use cellTetIndices to get the tets for all cells and try to find the faceTriIs. An example main() function could be:
    int main()
    {
        #include "setRootCase.H"
        #include "createTime.H"
        #include "createMesh.H"
    
        forAll(mesh,cellI)
        {
           List<tetIndices> cellTets =
               polyMeshTetDecomposition::cellTetIndices(mesh, cellI);
           triFaceList triFaces(cellTets.size());
    
           forAll(cellTets, cTI)
           {
                triFaces[cTI] = cellTets[cTI].faceTriIs(mesh);
           }
        }
        return 0;
    };
    • This will return the warning:

    --> FOAM Warning : From Foam::triFace Foam::tetIndices::faceTriIs(const Foam::polyMesh&, bool) const in file No base point for face 1620, 4(0 1 442 441), produces a valid tet decomposition.

    Environment information

    • OpenFOAM version : v2012
    • Operating system : ubuntu 18.04 LTS
    • Hardware info : amd ryzen 7
    • Compiler : g++ 7.5.0
    • Merge request
    • Branch

    Linked items ... 0

  • Activity

    • All activity
    • Comments only
    • History only
    • Newest first
    • Oldest first
    Loading Loading Loading Loading Loading Loading Loading Loading Loading Loading