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] blockMesh "Number of edges not aligned with or perpendicular to non-empty direction" (https://www.cfd-online.com/Forums/openfoam-meshing/134109-blockmesh-number-edges-not-aligned-perpendicular-non-empty-direction.html)

DuarteMagalhaes April 24, 2014 11:56

blockMesh "Number of edges not aligned with or perpendicular to non-empty direction"
 
Hi, can anyone help me on this?

When i run checkMesh i get the following error message:

"
(...)
Wedge axi_symm-r with angle 2.5 degrees
***Number of edges not aligned with or perpendicular to non-empty directions: 9360
<<Writing 5746 points on non-aligned edges to set nonAlignedEdges
(...)
Failed 1 mesh checks.
"
My blockMeshDict file is:

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

convertToMeters 1;

vertices
(
(0 0 0) //0
(0.0000436193873653360 0.000999048221581858 0) //1
(-0.0000436193873653360 0.000999048221581858 0) //2
(0.00218096936826680 0.0499524110790929 0) //3
(-0.00218096936826680 0.0499524110790929 0) //4
(0 0 0.2) //5
(0.0000436193873653360 0.000999048221581858 0.2) //6
(-0.0000436193873653360 0.000999048221581858 0.2) //7
(0.00218096936826680 0.0499524110790929 0.2) //8
(-0.00218096936826680 0.0499524110790929 0.2) //9
);

blocks
(
hex (0 5 5 0 2 7 6 1) (25 10 5) simpleGrading (1 1 1)
hex (1 3 4 2 6 8 9 7) (15 10 25) simpleGrading (1 1 1)
);

edges
(
arc 2 1 (0 0.001 0)
arc 7 6 (0 0.001 0.2)
arc 4 3 (0 0.05 0)
arc 9 8 (0 0.05 0.2)
);

patches
(
patch
inlet_center_tube
(
(0 2 1 0)
)

patch
outlet
(
(5 7 6 5)
(7 6 8 9)
)

patch
inlet_co_flow
(
(1 2 4 3)
)

wedge
axi_symm-f
(
(0 5 7 2)
(2 7 9 4)
)

wedge
axi_symm-r
(
(0 5 6 1)
(1 6 8 3)
)

wall
wall
(
(4 9 8 3)
)
);

mergePatchPairs
(
);

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

I have checked and the numbering of my patches seems to be correct. I'm doing a one layer thick wedge mesh.

If anyone has any clue or hint, please let me know!

Thanks in advance!

alexeym April 24, 2014 12:33

Hi,

in general this message means you forgot to describe certain patches in blockMeshDict (so face of these patches went to empty patch with the name defaultFaces and checkMesh is not happy about it).

DuarteMagalhaes April 28, 2014 07:09

Quote:

Originally Posted by alexeym (Post 487994)
Hi,

in general this message means you forgot to describe certain patches in blockMeshDict (so face of these patches went to empty patch with the name defaultFaces and checkMesh is not happy about it).

Hi Alexey,

Indeed, when i run blockMesh, it creates a patch named defaultFaces:
"patch 6 (start: 15700 size: 0) name: defaultFaces". However, this happens because it creates the interface between my two blocks (central tube and annular region), and since it is not a boundary of the main domain, I cannot set this interface as a patch. Do you know how can i define it in blockMeshDict, so that blockMesh knows that it is a simple interface between two blocks?

Thanks for your help!

alexeym April 28, 2014 10:00

Hi,

you should define two patches in these two blocks, and then use mergePatchPairs in blockMeshDict to merger patches. Otherwise you'll have defaultFaces empty type patch between blocks and result won't be as you expect.

Though it's just a guess from what you've written in the previous message. Maybe if you describe the problem in more details someone will be able to propose more convenient way to create a mesh for you case.

DuarteMagalhaes April 28, 2014 13:48

checkMesh error, centre flow + annular flow
 
Quote:

Originally Posted by alexeym (Post 488669)
Hi,

you should define two patches in these two blocks, and then use mergePatchPairs in blockMeshDict to merger patches. Otherwise you'll have defaultFaces empty type patch between blocks and result won't be as you expect.

Though it's just a guess from what you've written in the previous message. Maybe if you describe the problem in more details someone will be able to propose more convenient way to create a mesh for you case.

Hi,

Thank you for your reply!

I have been reading about face matching and face merging, and apparently OpenFoam says that "To connect two blocks with face matching, the two patches that form the connection should simply be ignored from the patches list. blockMesh then identifies that the faces do not form an external boundary and combines each collocated pair into a single internal faces that connects cells from the two blocks."

This is what i am doing and for this reason he is creating the defaultFaces patch (empty patch).

To describe my problem more thoroughly, I have followed this tutorial: http://www.somogyibence.hu/documents.../Cornell1.html , and afterwards, changed the geometry to insert a central tube, transforming the remaining flow in an annular co-flow.

I do believe the problem is in the interface of these two blocks, centre tube and annular region, however, I am not being able to fix the error that checkMesh reports, which is the following:

"
Checking geometry...
Overall domain bounding box (-0.00218097 0 0) (0.00218097 0.0499524 0.2)
Mesh (non-empty, non-wedge) directions (0 1 1)
Mesh (non-empty) directions (1 1 1)
Wedge axi_symm-f with angle 2.5 degrees
Wedge axi_symm-r with angle 2.5 degrees
***Number of edges not aligned with or perpendicular to non-empty directions: 4160
<<Writing 4186 points on non-aligned edges to set nonAlignedEdges
Boundary openness (-5.30238e-15 -1.60247e-16 6.32555e-19) OK.
Max cell openness = 3.67795e-16 OK.
Max aspect ratio = 400.381 OK.
Minimum face area = 1.74311e-10. Maximum face area = 2.61333e-05. Face area magnitudes OK.
Min volume = 1.39449e-12. Max volume = 1.10163e-08. Total volume = 2.17889e-05. Cell volumes OK.
Mesh non-orthogonality Max: 2.25027 average: 1.10984
Non-orthogonality check OK.
Face pyramids OK.
Max skewness = 0.333333 OK.
Coupled point location match (average 0) OK.

Failed 1 mesh checks.

End
"

Can anyone help me on this?
Thanks in advance!

alexeym April 28, 2014 14:06

Hi,

checked the tutorial, still can't get what changes did you do to the tutorial mesh. Post your case files, this way it'll be simpler.

Yes, there is face matching algorithm which can merge faces automatically but there are also certain conditions for this algorithm to work.

DuarteMagalhaes April 28, 2014 15:27

I am trying to create a domain with inlet: central tube with annular co-flow. In the rest of the domain, this central tube no longer exists, only exists the wall that now contains both the flow entering from the central tube, and the annular co flow.


My blockMeshDict file:

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

convertToMeters 1;

vertices
(

(0 0 0) //0
(0.0000436193873653360 0.000999048221581858 0) //1
(-0.0000436193873653360 0.000999048221581858 0) //2
(0.00218096936826680 0.0499524110790929 0) //3
(-0.00218096936826680 0.0499524110790929 0) //4
(0 0 0.2) //5
(0.0000436193873653360 0.000999048221581858 0.2) //6
(-0.0000436193873653360 0.000999048221581858 0.2) //7
(0.00218096936826680 0.0499524110790929 0.2) //8
(-0.00218096936826680 0.0499524110790929 0.2) //9

);

blocks
(
hex (0 5 5 0 2 7 6 1) (25 10 5) simpleGrading (1 1 1)
hex (1 3 4 2 6 8 9 7) (15 10 25) simpleGrading (1 1 1)
);

edges
(
arc 2 1 (0 0.001 0)
arc 7 6 (0 0.001 0.2)
arc 4 3 (0 0.05 0)
arc 9 8 (0 0.05 0.2)
);

patches
(
patch
inlet_center_tube
(
(0 2 1 0)
)

patch
outlet
(
(5 7 6 5)
(7 6 8 9)
)

patch
inlet_co_flow
(
(1 2 4 3)
)

wedge
axi_symm-f
(
(0 5 7 2)
(2 7 9 4)
)

wedge
axi_symm-r
(
(0 5 6 1)
(1 6 8 3)
)

wall
wall
(
(4 9 8 3)
)
);

mergePatchPairs
(
);

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

My velocity BC's are:

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

dimensions [0 1 -1 0 0 0 0];

internalField uniform (0 0 0);

boundaryField
{

inlet_center_tube
{
type fixedValue;
value uniform (0 0 0.7);
}

outlet
{
type zeroGradient;
}

inlet_co_flow
{
type fixedValue;
value uniform (0 0 0.2);
}

wall
{
type fixedValue;
value uniform (0 0 0);
}

axi_symm-f
{
type wedge;
}

axi_symm-r
{
type wedge;
}

}


Thank you so much for your help!

DuarteMagalhaes May 5, 2014 12:04

Hi,

I was able to fix the problem by changing my mesh and also by using mergePatchPairs.
Thanks for your help Alexey!

ltiago94 April 6, 2018 08:21

Hello ,

I'm also having this problem, what did you exactly do to solve this error?

Thanks

Luís

A H Gazi July 2, 2018 02:04

edges not aligned with or perpendicular to non-empty directions
 
Hello
I have made a mesh in blockMeshDict which is working good.but when i changed the Z co ordinate to increase the height of the geometry it is showing the following error in checkMesh.....for example i have changed (0.5 0 -.5) ; (0.5 0 .5) to (0.5 0 -4) ; (0.5 0 4).....please can you help me, i don't get a solution, i cant find the error .

Checking geometry...
Overall domain bounding box (-0.05 -0.05 0) (0.05 0.05 1)
Mesh (non-empty, non-wedge) directions (0 0 0)
Mesh (non-empty) directions (0 0 0)
***Number of edges not aligned with or perpendicular to non-empty directions: 2700
<<Writing 1652 points on non-aligned edges to set nonAlignedEdges
Boundary openness (1.8035e-16 4.9005e-17 5.2265e-18) OK.
***Open cells found, max cell openness: 1, number of open cells 40
<<Writing 40 non closed cells to set nonClosedCells
***Zero or negative face area detected. Minimum area: 0
<<Writing 2 zero area faces to set zeroAreaFaces
***Zero or negative cell volume detected. Minimum negative volume: -4.8531e-06, Number of negative volume cells: 161
<<Writing 161 zero volume cells to set zeroVolumeCells
Mesh non-orthogonality Max: 180 average: 43.969
*Number of severely non-orthogonal (> 70 degrees) faces: 26.
***Number of non-orthogonality errors: 324.
<<Writing 350 non-orthogonal faces to set nonOrthoFaces
***Error in face pyramids: 950 faces are incorrectly oriented.
<<Writing 653 faces with incorrect orientation to set wrongOrientedFaces
***Max skewness = 23.18, 2 highly skew faces detected which may impair the quality of the results
<<Writing 2 skew faces to set skewFaces
Coupled point location match (average 0) OK.

Failed 7 mesh checks.
Thanks in advance.


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