View Issue Details

IDProjectCategoryView StatusLast Update
0001821OpenFOAMBugpublic2015-08-10 12:38
Reporterssss Assigned Tohenry  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
PlatformGNU/LinuxOSUbuntuOS Version14.04
Summary0001821: Wedge mesh error in blockMesh -> OFdev
DescriptionIt seems that the new patch face matching to be vertex ordering independent functionality might cause problems in some wedge meshes.

Running blockMesh with the attached blockMeshDict works without problems in OF240, however in OFdev it throws the following error:

--> FOAM FATAL ERROR:
Trying to specify a boundary face 4(0 3 5 4) on the face on cell 0 which is either an internal face or already belongs to some other patch. This is face 0 of patch 1 named back.

    From function polyMesh::setTopology
(
    const cellShapeList& cellsAsShapes,
    const faceListList& boundaryFaces,
    const wordList& boundaryPatchNames,
    labelList& patchSizes,
    labelList& patchStarts,
    label& defaultPatchStart,
    label& nFaces,
    cellList& cells
)
    in file meshes/polyMesh/polyMeshFromShapeMesh.C at line 355.

The blockMeshDict was obtained from:

https://openfoamwiki.net/index.php/Main_ContribExamples/AxiSymmetric

On the other hand running blockMesh in the tutorial rhoCentralFoam/wedge15Ma5 with OF240 and OFdev works without any errors.

This might be a problem related with the way the new algorithm treates the repeated index found in wedge blockMeshDicts. I will try to have a look at the code tomorrow to see if I can find the solution.
Steps To ReproduceUse blockMeshDict from:

https://openfoamwiki.net/index.php/Main_ContribExamples/AxiSymmetric

Run blockMesh with OFdev -> error
Run blockMesh with OF240 -> no error
TagsNo tags attached.

Activities

ssss

2015-08-09 22:38

reporter  

blockMeshDict (1,303 bytes)   
FoamFile
{
    version         2.0;
    format          ascii;
 
    root            "";
    case            "";
    instance        "";
    local           "";
 
    class           dictionary;
    object          blockMeshDict;
}
 
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
convertToMeters 1;
 
vertices
(
(0 0 0)
(0.0949 0.00414 0)
(0.0949 0.00414 1.1) 
(0 0 1.1)
(0.0949 -0.00414 0) 
(0.0949 -0.00414 1.1)
);
 
blocks
(
hex (0 4 1 0 3 5 2 3) (19  1 300) simpleGrading (1 1 1)
);
 
edges
(
);
 
boundary
(
     front
     { 
           type wedge;
           faces  
           (
               (0 1 2 3)
           );
      }
     back
     { 
           type wedge;
           faces  
           (
               (0 3 5 4)
           );
      }
     tankWall
     { 
           type wall;
           faces  
           (
               (1 4 5 2)
           );
      }
     inlet
     { 
           type patch;
           faces  
           (
               (0 4 1 0)
           );
      }
     outlet
     { 
           type patch;
           faces  
           (
               (3 5 2 3)
           );
      }
     axis
     { 
           type empty;
           faces  
           (
               (0 3 3 0)
           );
      }
);
 
mergePatchPairs
(
);

blockMeshDict (1,303 bytes)   

henry

2015-08-10 08:49

manager   ~0005214

Thanks for the bug-report, I am testing more general list matching methods at the moment and will push the option which is most efficient for these small lists.

henry

2015-08-10 10:04

manager   ~0005217

I have commited a new face::sameVertices function which handles duplicates:
commit 36b1c587a8f48df1def9a42deefd1de9a0ce9921

let me know if is solves your problem.

ssss

2015-08-10 12:27

reporter   ~0005219

Dear henry,

Thank you a lot for your support, now it works perfectly

Issue History

Date Modified Username Field Change
2015-08-09 22:38 ssss New Issue
2015-08-09 22:38 ssss File Added: blockMeshDict
2015-08-10 08:49 henry Note Added: 0005214
2015-08-10 10:04 henry Note Added: 0005217
2015-08-10 12:27 ssss Note Added: 0005219
2015-08-10 12:38 henry Status new => resolved
2015-08-10 12:38 henry Resolution open => fixed
2015-08-10 12:38 henry Assigned To => henry