CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Meshing & Mesh Conversion (https://www.cfd-online.com/Forums/openfoam-meshing/)
-   -   [blockMesh] --> FOAM FATAL ERROR: Trying to specify a boundary face (https://www.cfd-online.com/Forums/openfoam-meshing/105409-foam-fatal-error-trying-specify-boundary-face.html)

seav November 25, 2014 09:37

Quote:

Originally Posted by slash89 (Post 520984)
Trying to specify a boundary face 4(1 5 6 2) 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 2 named outlet2.

Two options:
1. This an internal face and its not allowed to do this.
2. You messed something with point-order in blocks.

Give us more information, sent ur blockMeshDict file or simply paste it here with
Code:

code
function.

slash89 November 25, 2014 09:43

This is the boudary's part of blockMeshDict:

boundary
(

inlet
{
type patch;
faces
(
(0 4 7 3)
);
}
outlet1
{
type patch;
faces
(
(2 6 5 1)
);
}
outlet2
{
type patch;
faces
(
(2 6 5 1)
);

}
wall
{
type patch;
faces
(
(0 3 2 1)
(3 7 6 2)
(1 5 4 0)
(4 5 6 7)
);
}

);

I got one inlet and two outlet. The outlet are on the same face but something doesn't work.
Thak you,

Best Regards

seav November 25, 2014 12:04

This is not enough info. Post your block(); and vertices(); section.

slash89 November 25, 2014 13:06

convertToMeters 0.001;

a 40;
b 60;
c 30;
xi -500;
xf 250;
yi -350;
yf 160;
zi 400;
zf 600;


vertices
(
($xi $yi $zi) //0
($xf $yi $zi) //1
($xf $yf $zi) //2
($xi $yf $zi) //3
($xi $yi $zf) //4
($xf $yi $zf) //5
($xf $yf $zf) //6
($xi $yf $zf) //7
);

blocks
(
hex (0 1 2 3 4 5 6 7) ($a $b $c) simpleGrading (1 1 1)
);

edges
(
);

boundary
(

inlet
{
type patch;
faces
(
(0 4 7 3)
);
}
outlet1
{
type patch;
faces
(
(2 6 5 1)
);
}
outlet2
{
type patch;
faces
(
(2 6 5 1)
);

}
wall
{
type patch;
faces
(
(0 3 2 1)
(3 7 6 2)
(1 5 4 0)
(4 5 6 7)
);
}

);

This is the entire file. I'm sorry but the upload doesn't work!

Thank you

seav November 25, 2014 13:55

Code:

convertToMeters 0.001;

a 40;
b 60;
c 30;
xi -500;
xf 250;
yi -350;
yf 160;
zi 400;
zf 600;


vertices
(
($xi $yi $zi) //0
($xf $yi $zi) //1
($xf $yf $zi) //2
($xi $yf $zi) //3
($xi $yi $zf) //4
($xf $yi $zf) //5
($xf $yf $zf) //6
($xi $yf $zf) //7
);

blocks
(
hex (0 1 2 3 4 5 6 7) ($a $b $c) simpleGrading (1 1 1)
);

edges
(
);

boundary
(

inlet
{
type patch;
faces
(
(0 4 7 3)
);
}
outlet1
{
type patch;
faces
(
(2 6 5 1)
);
}
wall
{
type patch;
faces
(
(0 3 2 1)
(3 7 6 2)
(1 5 4 0)
(4 5 6 7)
);
}

);

Didnt check this on OF but I guess it will work. The reason is becouse u set outlet1 and outlet2 in the same points. Its not allowed.

If any error accure study this : http://www.openfoam.org/docs/user/blockMesh.php (figure 5.5) to set correct points in hex() function.

slash89 November 26, 2014 03:28

Thank you, the code is the same as my old one, when I had only one outlet. Now i got 2 outlet, should I use your code, will it work? What about the boundary? with your code i will have only 3 boundary: inlet outlet1 and wall but i need the temperature also on the second outlet.

Best regards

seav November 26, 2014 10:38

You are defining two outlets, outlet1 and outlet2 on the same face. Its not allowed. I dont know what you want to achive but...

..there was a way to define 2 boundary in the same area (not face):
1. Make double vertices of points 5 1 2 6 - just copy them.
2. Make outlet2 with new vertices.
3. Use mergePatchPairs(); to connect 2 different faces.

I am not sure if it helps, it worked few months ago.

Maybe you could describe your geometry more precisely.

fatemehfarshi62 June 6, 2016 07:14

1 Attachment(s)
Hi every one! I have the same problem with the blockMesh file attached. when running, it says:
--> FOAM FATAL ERROR:
Trying to specify a boundary face 4(143 144 248 247) on the face on cell 52 which is either an internal face or already belongs to some other patch. This is face 91 of patch 1 named walls.

my version of openfoam is 2.4:)
Can any one please help me with it?
first, what does this error mean?
second, what can I do for it?

fatemehfarshi62 June 6, 2016 07:17

1 Attachment(s)
Hi every one! I have the same problem with the blockMesh file attached. when running, it says:
--> FOAM FATAL ERROR:
Trying to specify a boundary face 4(143 144 248 247) on the face on cell 52 which is either an internal face or already belongs to some other patch. This is face 91 of patch 1 named walls.

my version of openfoam is 2.4:)
first, what does it mean?
second, what can I do for that?

Antimony June 7, 2016 04:34

Hi,

Why have you defined the same block twice??

Code:

    hex (117 118 144 143 221 222 248 247) (30 140 4) simpleGrading (2 2 2) //b32lfp(after //b27rfp)

 
    hex (117 118 144 143 221 222 248 247) (30 140 4) simpleGrading (2 2 2) //b32lfp (after //b32rfp)

Relook at your definitions to ensure that they are correct, before you mesh.

Cheers,
Antimony

fatemehfarshi62 June 8, 2016 00:45

Hi Antimony!
Thank you again and again for helping me so much. problem solved!
Thanks and best wishes

Madi July 13, 2016 09:54

4 Attachment(s)
Hi to all,

I've got the same problem like Karla had.

--> FOAM FATAL ERROR:
Face 6403 specified in set bar is not an external face of the mesh.
This application can only repatch existing boundary faces.

I look in paraview like bruno said. But my face should be in the right position. I dont know what to do now. If someone can have a look i would be glad.

Thanks!

baran khaksari October 31, 2016 23:52

foam fetal error
 
hi every one. I try to simulate a compartment with a door in front door and a ventilation on the roof but I faced this error when run blockMesh.
--> FOAM FATAL ERROR:
Trying to specify a boundary face 4(12 15 14 13) on the face on cell 2 which is either an internal face or already belongs to some other patch. This is face 5 of patch 3 named empty.

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.

FOAM aborting


the below lines are my blockMesh. please help me
convertToMeters 1;

vertices
(
(0 0 0)
(3.6 0 0)
(3.6 3 0)
(0 3 0)
(0 0 2.4)
(3.6 0 2.4)
(3.6 3 2.4)
(0 3 2.4)
(1.425 0 2.4)//point8
(2.175 0 2.4)//point9
(2.175 2 2.4)//point10
(1.425 2 2.4)//point11
(1.425 0 1.7)//point12
(2.175 0 1.7)//point13
(2.175 2 1.7)//point14
(1.425 2 1.7)//point15
(1.425 0 0.7)//point16
(2.175 0 0.7)//point17
(2.175 2 0.7)//point18
(1.425 2 0.7)//point19
(1.425 0 0)//point20
(2.175 0 0)//point21
(2.175 2 0)//point22
(1.425 2 0)//point23
(1.425 3 2.4)//point24
(2.175 3 2.4)//point25
(2.175 3 1.7)//point26
(1.425 3 1.7)//point27
(2.175 3 0.7)//point28
(1.425 3 0.7)//point29
(1.425 3 0)//point30
(2.175 3 0)//point31
);

blocks
(
hex (0 20 30 3 4 8 24 7) (10 20 20) simpleGrading (1 1 1)
hex (21 1 2 31 9 5 6 25) (10 20 20) simpleGrading (1 1 1)
hex (12 13 14 15 8 9 10 11) (5 10 10) simpleGrading (1 1 1)
hex (16 17 18 19 12 13 14 15) (5 10 10) simpleGrading (1 1 1)
hex (20 21 22 23 16 17 18 19) (5 10 10) simpleGrading (1 1 1)
hex (15 14 26 27 11 10 25 24) (5 10 10) simpleGrading (1 1 1)
hex (19 18 28 29 15 14 26 27) (5 10 10) simpleGrading (1 1 1)
hex (23 22 31 30 19 18 28 29) (5 10 10) simpleGrading (1 1 1)
);

edges
(
);

boundary
(

fixedWalls
{
type wall;
faces
(
(7 4 0 3)//left
(30 24 7 3)
(7 24 8 4)
(6 2 1 5)
(9 5 6 25)
(25 6 2 31)
(12 13 9 8)
(16 17 13 12)
(20 21 17 16)
(23 22 21 20)
(11 10 25 24)
(25 26 27 24)
(29 28 31 30)
(30 31 22 23)

);
}
inlet
{
type patch;
faces
(
(9 10 11 8)//door
);
}
outlet
{
type patch;
faces
(
(28 29 27 26)//roof
);
}
empty
{
type empty;
faces
(
(24 11 15 27)
(24 30 20 8)
(25 9 21 31)
(10 14 13 9)
(11 8 12 15)
(12 15 14 13)
(15 14 13 12)
(15 14 10 11)
(14 10 11 15)
(19 18 14 15)
(18 14 15 19)
(14 18 17 13)
(15 12 16 19)
(19 18 17 16)
(18 17 16 19)
(18 22 21 17)
(19 16 20 23)
(23 22 18 19)
(22 18 19 23)
(25 26 14 10)
(27 26 14 15)
(26 14 15 27)
(26 28 18 14)
(27 15 19 29)
(29 28 18 19)
(28 18 19 29)
(28 31 22 18)
(29 19 23 30)

);
}
);

mergePatchPairs
(
);

Antimony November 1, 2016 04:42

Hi,

(12 15 14 13), or in a similar form, is part of two blocks - block 2 & block 3 (index starts from 0). As a result I can't see how it can be a boundary face....

Make sure your mesh definitions are correct.

Cheers,
Antimony

baran khaksari November 1, 2016 07:23

Thank alot

ordinary November 26, 2016 15:18

Hello everyone,

I have same annoying problem, too. I think documentation about creating block meshes are not satisfying.

Here is the problem. Sorry but I couldn't upload the whole blockMeshDict file due to the this website. So here is the code:

convertToMeters 1;

vertices
(
(0 25 0) //0
(20 25 0) //1
(20 30 0) //2
(0 30 0) //3
(0 25 0.02) //4
(20 25 0.02) //5
(20 30 0.02) //6
(0 30 0.02) //7
(40 25 0) //8
(40 30 0) //9
(40 25 0.02) //10
(40 30 0.02) //11
(80 25 0) //12
(80 30 0) //13
(80 25 0.02) //14
(80 30 0.02) //15
(0 5 0) //16
(20 5 0) //17
(40 5 0) //18
(80 5 0) //19
(0 5 0.02) //20
(20 5 0.02) //21
(40 5 0.02) //22
(80 5 0.02) //23
(0 0 0) //24
(20 0 0) //25
(40 0 0) //26
(80 0 0) //27
(0 0 0.02) //28
(20 0 0.02) //29
(40 0 0.02) //30
(80 0 0.02) //31

);

blocks
(
hex (0 1 2 3 4 5 6 7) (48 35 1) simpleGrading (0.90909 1.1 1)
hex (1 8 9 2 5 10 11 6) (1000 35 1) simpleGrading (1 1.1 1)
hex (8 12 13 9 10 14 15 11) (55 35 1) simpleGrading (1.1 1.1 1)
hex (16 17 1 0 20 21 5 4) (48 1000 1) simpleGrading (0.90909 1 1)
hex (17 18 8 1 21 22 10 5) (1000 1000 1) simpleGrading (1 1 1)
hex (18 19 12 8 22 23 14 10) (55 1000 1) simpleGrading (1.1 1 1)
hex (24 25 17 16 28 29 21 20) (48 35 1) simpleGrading (0.90909 0.90909 1)
hex (25 26 18 17 29 30 22 21) (1000 35 1) simpleGrading (1 0.90909 1)
hex (26 27 19 18 30 31 23 22) (55 35 1) simpleGrading (1.1 0.90909 1)
);

edges
(
);

boundary
(
inlet
{
type patch;
faces
(
(0 4 7 3)
(16 20 4 0)
(4 7 3 0)
);
}

outlet
{
type patch;
faces
(
(12 13 15 14)
(10 12 14 23)
(27 19 23 21)
);
}

top
{
type patch;
faces
(
(3 7 6 2)
(2 6 11 9)
(9 11 15 13)
);
}

bottom
{
type patch;
faces
(
(28 24 25 29)
(29 25 26 30)
(30 26 27 31)
);
}

frontAndBack
{
type empty;
faces
(
(3 2 1 0)
(0 1 16 17)
(16 17 24 25)
(2 9 1 8)
(1 8 17 18)
(17 18 25 26)
(9 13 8 12)
(8 12 18 19)
(18 19 26 27)
(5 6 7 4)
(21 5 4 20)
(29 21 20 28)
(10 11 6 5)
(22 10 5 21)
(30 22 21 29)
(14 15 11 10)
(23 14 10 22)
(31 23 22 30)
);
}
);

mergePatchPairs
(
);


Antimony December 22, 2016 21:11

Hi,

Why is the face (0 4 7 3) pretty much specified twice?

Quote:

inlet
{
type patch;
faces
(
(0 4 7 3)
(16 20 4 0)
(4 7 3 0)
);
}

Cheers,
Antimony

ordinary January 31, 2017 04:48

Thank you very much for your attention. Unfortunately it is too late for me to respond your reply but yes it was a mistake. I specified it twice. I figured it out and changed the whole file because of it also had several errors.

Thank you again.

crizpi21 May 24, 2018 11:22

Hi everyone,

I am new to OpenFOAM and I got stuck with this same error when creating my mesh:
--> FOAM FATAL ERROR:
Trying to specify a boundary face 4(12 16 18 14) on the face on cell 1 which is either an internal face or already belongs to some other patch. This is face 0 of patch 4 named square.

I would be very grateful if anyone could help me. This is my blockMeshDict


convertToMeters 10;

//************************************************** *********************//

vertices
(
// x y z

(0 0 -0.005) //0
(1 0 -0.005) //1
(1 0.6 -0.005) //2
(0 0.6 -0.005) //3

(0 0 0.005) //4
(1 0 0.005) //5
(1 0.6 0.005) //6
(0 0.6 0.005) //7

(0.3 0 -0.005) //8
(0.4 0 -0.005) //9
(0.3 0 0.005) //10
(0.4 0 0.005) //11

(0.3 0.25 -0.005) //12
(0.4 0.25 -0.005) //13
(0.3 0.25 0.005) //14
(0.4 0.25 0.005) //15

(0.3 0.35 -0.005) //16
(0.4 0.35 -0.005) //17
(0.3 0.35 0.005) //18
(0.4 0.35 0.005) //19

(0.3 0.6 -0.005) //20
(0.4 0.6 -0.005) //21
(0.3 0.6 0.005) //22
(0.4 0.6 0.005) //23

(0 0.25 -0.005) //24
(0 0.35 -0.005) //25
(0 0.25 0.005) //26
(0 0.35 0.005) //27

(1 0.25 -0.005) //28
(1 0.35 -0.005) //29
(1 0.25 0.005) //30
(1 0.35 0.005) //31

);

blocks
(
//Block 0
hex (0 8 12 24 4 10 14 26) (20 20 1) simpleGrading (1 1 1)
//Block 1
hex (24 12 16 25 26 14 18 27) (20 10 1) simpleGrading (1 1 1)
//Block 2
hex (25 16 20 3 27 18 22 7) (20 20 1) simpleGrading (1 1 1)
//Block 3
hex (8 9 13 12 10 11 15 14) (10 20 1) simpleGrading (1 1 1)
//Block 4
hex (12 13 17 16 14 15 19 18) (10 10 1) simpleGrading (1 1 1)
//Block 5
hex (16 17 21 20 18 19 23 22) (10 20 1) simpleGrading (1 1 1)
//Block 6
hex (9 1 28 13 11 5 30 15) (50 20 1) simpleGrading (1 1 1)
//Block 7
hex (13 28 29 17 15 30 31 19) (50 10 1) simpleGrading (1 1 1)
//Block 8
hex (17 29 2 21 19 31 6 23) (50 20 1) simpleGrading (1 1 1)
);


edges
(
);

boundary
(
inlet
{
type patch;
faces
(
(0 4 26 24)
(24 26 27 25)
(25 27 7 3)
);
}
outlet
{
type patch;
faces
(
(1 28 30 5)
(28 29 31 30)
(29 2 6 31)
);
}
top
{
type patch;
faces
(
(3 7 22 20)
(20 22 23 21)
(21 23 6 2)
);
}
bottom
{
type patch;
faces
(
(0 8 10 4)
(8 9 11 10)
(9 1 5 11)
);
}
square
{
type wall; //obstacle in the flow
faces
(
(12 16 18 14)
(16 17 19 18)
(13 15 19 17)
(13 12 14 15)
);
}

);

mergePatchPairs
(
);

// *******************************//


Cheers! :)

crizpi21 May 25, 2018 03:47

Quote:

Originally Posted by crizpi21 (Post 693475)
Hi everyone,

I am new to OpenFOAM and I got stuck with this same error when creating my mesh:
--> FOAM FATAL ERROR:
Trying to specify a boundary face 4(12 16 18 14) on the face on cell 1 which is either an internal face or already belongs to some other patch. This is face 0 of patch 4 named square.

I would be very grateful if anyone could help me. This is my blockMeshDict


convertToMeters 10;

//************************************************** *********************//

vertices
(
// x y z

(0 0 -0.005) //0
(1 0 -0.005) //1
(1 0.6 -0.005) //2
(0 0.6 -0.005) //3

(0 0 0.005) //4
(1 0 0.005) //5
(1 0.6 0.005) //6
(0 0.6 0.005) //7

(0.3 0 -0.005) //8
(0.4 0 -0.005) //9
(0.3 0 0.005) //10
(0.4 0 0.005) //11

(0.3 0.25 -0.005) //12
(0.4 0.25 -0.005) //13
(0.3 0.25 0.005) //14
(0.4 0.25 0.005) //15

(0.3 0.35 -0.005) //16
(0.4 0.35 -0.005) //17
(0.3 0.35 0.005) //18
(0.4 0.35 0.005) //19

(0.3 0.6 -0.005) //20
(0.4 0.6 -0.005) //21
(0.3 0.6 0.005) //22
(0.4 0.6 0.005) //23

(0 0.25 -0.005) //24
(0 0.35 -0.005) //25
(0 0.25 0.005) //26
(0 0.35 0.005) //27

(1 0.25 -0.005) //28
(1 0.35 -0.005) //29
(1 0.25 0.005) //30
(1 0.35 0.005) //31

);

blocks
(
//Block 0
hex (0 8 12 24 4 10 14 26) (20 20 1) simpleGrading (1 1 1)
//Block 1
hex (24 12 16 25 26 14 18 27) (20 10 1) simpleGrading (1 1 1)
//Block 2
hex (25 16 20 3 27 18 22 7) (20 20 1) simpleGrading (1 1 1)
//Block 3
hex (8 9 13 12 10 11 15 14) (10 20 1) simpleGrading (1 1 1)
//Block 4
hex (12 13 17 16 14 15 19 18) (10 10 1) simpleGrading (1 1 1)
//Block 5
hex (16 17 21 20 18 19 23 22) (10 20 1) simpleGrading (1 1 1)
//Block 6
hex (9 1 28 13 11 5 30 15) (50 20 1) simpleGrading (1 1 1)
//Block 7
hex (13 28 29 17 15 30 31 19) (50 10 1) simpleGrading (1 1 1)
//Block 8
hex (17 29 2 21 19 31 6 23) (50 20 1) simpleGrading (1 1 1)
);


edges
(
);

boundary
(
inlet
{
type patch;
faces
(
(0 4 26 24)
(24 26 27 25)
(25 27 7 3)
);
}
outlet
{
type patch;
faces
(
(1 28 30 5)
(28 29 31 30)
(29 2 6 31)
);
}
top
{
type patch;
faces
(
(3 7 22 20)
(20 22 23 21)
(21 23 6 2)
);
}
bottom
{
type patch;
faces
(
(0 8 10 4)
(8 9 11 10)
(9 1 5 11)
);
}
square
{
type wall; //obstacle in the flow
faces
(
(12 16 18 14)
(16 17 19 18)
(13 15 19 17)
(13 12 14 15)
);
}

);

mergePatchPairs
(
);

// *******************************//


Cheers! :)


I found the error: the problem was that I had specified the inner block (//Block 4
hex (12 13 17 16 14 15 19 18) (10 10 1) simpleGrading (1 1 1)).

Hence, the faces of this block were already internal faces, so when I wanted to define them in the square boundary as "walls", it said they already belonged to another path.

I hope this helps, cheers! :)


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