CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Meshing & Mesh Conversion

[blockMesh] blockMesh fatal error, the default patch already has faces in it

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   November 25, 2013, 09:13
Default blockMesh fatal error, the default patch already has faces in it
  #1
New Member
 
Join Date: Nov 2013
Posts: 2
Rep Power: 0
samid is on a distinguished road
Dear all,

My colleagues and I have recently ran across a strange issue about the defaultFaces patch. We want to calculate the flow around the rectangular box for the simple case scenario. For the specific reasons our mesh is formed from the prisms, but according to the userguide it should be Ok. Current blockMeshDict describes the following geometry:



When I run the blockMesh command on the blockMeshDict file (given below), the program throws the fatal error:

Default patch defaultFaces already has faces in it or it is not last in list of patches.

As far as I understand, this is because we have forgot some of the faces on the outer boundaries and blockMesh has automatically added them. Nevertheless, I'm pretty sure that all the boundaries are properly described and this error confused me.

I would be really grateful for any information concerning the rules for the defaultFaces patch formation and the reasons of why it should be the "last in the list of patches".

Thanks in advance!

Here's the blockMeshDict file, just in case.

Code:
/
*--------------------------------*- C++ -*----------------------------------*
| =========                 |                                                 |
| \      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \    /   O peration     | Version:  2.2.0                                 |
|   \  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
convertToMeters 1;
vertices
(
    ( 0 0 0 ) //0
    ( 53 0 0 ) //1
    ( 53 42 0 ) //2
    ( 0 42 0 ) //3
    ( 17 20 0 ) //4
    ( 27 14 0 ) //5
    ( 42 28 0 ) //6
    ( 32 34 0 ) //7
    ( 26 0 0 ) //8
    ( 53 21 0 ) //9
    ( 26 42 0 ) //10
    ( 0 21 0 ) //11
    ( 40 42 0 ) //12
    ( 0 0 25 ) //13
    ( 53 0 25 ) //14
    ( 53 42 25 ) //15
    ( 0 42 25 ) //16
    ( 17 20 25 ) //17
    ( 27 14 25 ) //18
    ( 42 28 25 ) //19
    ( 32 34 25 ) //20
    ( 26 0 25 ) //21
    ( 53 21 25 ) //22
    ( 26 42 25 ) //23
    ( 0 21 25 ) //24
    ( 40 42 25 ) //25
    ( 0 0 50 ) //26
    ( 53 0 50 ) //27
    ( 53 42 50 ) //28
    ( 0 42 50 ) //29
    ( 17 20 50 ) //30
    ( 27 14 50 ) //31
    ( 42 28 50 ) //32
    ( 32 34 50 ) //33
    ( 26 0 50 ) //34
    ( 53 21 50 ) //35
    ( 26 42 50 ) //36
    ( 0 21 50 ) //37
    ( 40 42 50 ) //38
);
blocks
(
    hex (8 8 4 0 21 21 17 13) (10 10 10) simpleGrading (1 1 1)
    hex (21 21 17 13 34 34 30 26) (10 10 10) simpleGrading (1 1 1)
    hex (8 8 5 1 21 21 18 14) (10 10 10) simpleGrading (1 1 1)
    hex (21 21 14 18 34 34 27 31) (10 10 10) simpleGrading (1 1 1)
    hex (4 4 7 10 17 17 20 23) (10 10 10) simpleGrading (1 1 1)
    hex (17 17 20 23 30 30 33 36) (10 10 10) simpleGrading (1 1 1)
    hex (0 0 4 11 13 13 17 24) (10 10 10) simpleGrading (1 1 1)
    hex (13 13 17 24 26 26 30 37) (10 10 10) simpleGrading (1 1 1)
    hex (18 18 20 17 31 31 33 30) (10 10 10) simpleGrading (1 1 1)
    hex (8 8 5 4 21 21 18 17) (10 10 10) simpleGrading (1 1 1)
    hex (21 21 18 17 34 34 31 30) (10 10 10) simpleGrading (1 1 1)
    hex (9 9 2 6 22 22 15 19) (10 10 10) simpleGrading (1 1 1)
    hex (22 22 15 19 35 35 28 32) (10 10 10) simpleGrading (1 1 1)
    hex (18 18 19 20 31 31 32 33) (10 10 10) simpleGrading (1 1 1)
    hex (4 4 10 3 17 17 23 16) (10 10 10) simpleGrading (1 1 1)
    hex (17 17 23 16 30 30 36 29) (10 10 10) simpleGrading (1 1 1)
    hex (6 6 2 12 19 19 15 25) (10 10 10) simpleGrading (1 1 1)
    hex (19 19 15 25 32 32 28 38) (10 10 10) simpleGrading (1 1 1)
    hex (7 7 12 10 20 20 25 23) (10 10 10) simpleGrading (1 1 1)
    hex (20 20 25 23 33 33 38 36) (10 10 10) simpleGrading (1 1 1)
    hex (1 1 9 5 14 14 22 18) (10 10 10) simpleGrading (1 1 1)
    hex (14 14 22 18 27 27 35 31) (10 10 10) simpleGrading (1 1 1)
    hex (4 4 3 11 17 17 16 24) (10 10 10) simpleGrading (1 1 1)
    hex (17 17 16 24 30 30 29 37) (10 10 10) simpleGrading (1 1 1)
    hex (5 5 9 6 18 18 22 19) (10 10 10) simpleGrading (1 1 1)
    hex (18 18 22 19 31 31 35 32) (10 10 10) simpleGrading (1 1 1)
    hex (6 6 12 7 19 19 25 20) (10 10 10) simpleGrading (1 1 1)
    hex (19 19 25 20 32 32 38 33) (10 10 10) simpleGrading (1 1 1)
);

edges
(
);

boundary
(
    floor
    {
        type wall;
        faces
        (
            (8 8 4 0)
            (8 8 1 5)
            (4 4 7 10)
            (0 0 4 11)
            (8 8 5 4)
            (9 9 2 6)
            (4 4 10 3)
            (6 6 2 12)
            (7 7 12 10)
            (1 1 9 5)
            (4 4 3 11)
            (5 5 9 6)
            (6 6 12 7)
        );
    }
    outerWalls0
    {
        type wall;
        faces
        (
            (0 13 21 8)
            (13 26 34 21)
            (8 21 14 1)
            (21 34 27 14)
        );
    }
    outerWalls1
    {
        type wall;
        faces
        (
            (0 13 24 11)
            (13 26 37 24)
            (11 24 16 3)
            (24 37 29 16)
        );
    }
    outerWalls2
    {
        type wall;
        faces
        (
            (3 16 23 10)
            (16 29 36 23)
            (10 23 25 12)
            (23 36 38 25)
            (12 25 15 2)
            (25 38 28 15)
        );
    }
    outerWalls3
    {
        type wall;
        faces
        (
            (1 14 22 9)
            (14 27 35 22)
            (9 22 15 2)
            (22 35 28 15)
        );
    }
    ceiling
    {
        type wall;
        faces
        (
            (34 34 30 26)
            (34 34 27 31)
            (30 30 33 36)
            (26 26 30 37)
            (34 34 31 30)
            (35 35 28 32)
            (30 30 36 29)
            (32 32 28 38)
            (33 33 38 36)
            (27 27 35 31)
            (30 30 29 37)
            (31 31 35 32)
            (32 32 38 33)
            (31 31 33 30)
            (31 31 32 33)
        );
    }
    boxWalls
    {
        type wall;
        faces
        (
            (4 5 18 17)
            (5 6 19 18)
            (6 7 20 19)
            (7 4 17 20)
            (18 18 20 17)
            (18 18 19 20)
        );
    }
);
mergePatchPairs
(
);
// ************************************************************************* //
samid is offline   Reply With Quote

Old   February 17, 2014, 12:23
Default
  #2
New Member
 
David H.
Join Date: Oct 2013
Posts: 25
Rep Power: 12
djh2 is on a distinguished road
I'm also having some issues with defaultFaces but mine are an unresolved interface that shouldn't be there.

Can you see what faces are being included in defaultFaces by using ParaView?

It may help you identify what is not being defined properly, so you can add them to the proper patch or otherwise remove them.

In my case, I had 16 faces go into defaultFaces, so I tried to define them into a master and slave patch to mergePatchPairs, but I keep getting an error about creating zero thickness geometry or something like that.

Might help get you onto the right direction
djh2 is offline   Reply With Quote

Old   February 17, 2014, 13:35
Default
  #3
New Member
 
Join Date: Nov 2013
Posts: 2
Rep Power: 0
samid is on a distinguished road
djh2, thanks for the reply. Actually, we have resolved an issue (at least the blockMesh works for now).

The case was in the prism definition using the hex keyword. This notation implies that if you join the vertices of the hex to form a prism, the plane between the joined vertices remains and should be added to one of the patches.

For example, if I declare a prism with a hex keyword like this:

(8 8 5 1 21 21 18 14)

the face (5 8 8 5) exists even though it has square equal to zero, as well as the face (18 21 21 18). So, if you don't add them to some of the patches, they will automatically be included into the defaultFaces, which causes the further problems. This doesn't make a lot of sense, but thats how it works.

ParaView is helpless here, since the files which are necessary to make a 3D view are not formed by the blockMeshDict because the error appears earlier.

Hope this helps,
Dmitry
samid is offline   Reply With Quote

Reply

Tags
blockmeshdict, defaultfaces, error


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[snappyHexMesh] Add Mesh Layers doesnt work on the whole surface Kryo OpenFOAM Meshing & Mesh Conversion 13 February 17, 2022 07:34
[snappyHexMesh] Help with Snappy: no layers growing GianF OpenFOAM Meshing & Mesh Conversion 2 September 23, 2020 08:26
[snappyHexMesh] sHM layer process keeps getting killed MBttR OpenFOAM Meshing & Mesh Conversion 4 August 15, 2016 03:21
[OpenFOAM.org] OF2.3.1 + OS13.2 - Trying to use the dummy Pstream library aylalisa OpenFOAM Installation 23 June 15, 2015 14:49
snappyhexmesh remove blockmesh geometry philipp1 OpenFOAM Running, Solving & CFD 2 December 12, 2014 10:58


All times are GMT -4. The time now is 00:07.