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/)
-   -   [Other] Problem with mesh grading/refining (https://www.cfd-online.com/Forums/openfoam-meshing/99838-problem-mesh-grading-refining.html)

gannicus April 12, 2012 22:01

Problem with mesh grading/refining
 
2 Attachment(s)
Hi guys, I am a new user to openfoam and lately i have been experiencing some difficulties.

I have written a mesh for a naca0012 aerofoil. I was able to generate the mesh in openFoam with no mesh refinements however if i tried to refine the mesh around the aerofoil in the Y axis by using simple grading I get the following error :

--> FOAM FATAL ERROR:
Inconsistent point locations between block pair 0 and 4
probably due to inconsistent grading.

From function blockMesh::calcMergeInfo()
in file blockMesh/blockMeshMerge.C at line 294.

I have attatched an image which describes the blocks used in the mesh and the blockMeshDict file.

vertices
(

(0.5 -5 0)//0
(1 -5 0)//1
(6 -5 0)//2
(0.5 0.052940 0)//3
(0.5 -0.052940 0)//4
(1 0 0)//5
(6 0 0)//6
(0.5 5 0)//7
(1 5 0)//8
(6 5 0)//9
(0.5 -5 0.1)//10
(1 -5 0.1)//11
(6 -5 0.1)//12
(0.5 0.052940 0.1)//13
(0.5 -0.052940 0.1)//14
(1 0 0.1)//15
(6 0 0.1)//16
(0.5 5 0.1)//17
(1 5 0.1)//18
(6 5 0.1)//19

);

blocks
(
hex (0 1 5 4 10 11 15 14) (16 80 1) simpleGrading (1 1 1)//0
hex (1 2 6 5 11 12 16 15) (80 80 1) simpleGrading (1 1 1)//1
hex (3 5 8 7 13 15 18 17) (16 80 1) simpleGrading (1 1 1)//2
hex (5 6 9 8 15 16 19 18) (80 80 1) simpleGrading (1 1 1)//3
hex (3 4 0 7 13 14 10 17) (80 80 1) simpleGrading (1 1 1)//4

If i were to change the simpleGrading from (1 1 1) to (1 20 1) I get the error.

any help is appreciated thanks

akidess April 13, 2012 02:58

Your ungraded mesh is already broken, see output of 'checkMesh'. As for the grading, every block gets a local coordinate system, and you have to pay attention how they are aligned. With your current alignment the proper grading would be:

Code:

hex (0 1 5 4 10 11 15 14) (16 80 1) simpleGrading (1 2 1)//0
hex (1 2 6 5 11 12 16 15) (80 80 1) simpleGrading (1 2 1)//1
hex (3 5 8 7 13 15 18 17) (16 80 1) simpleGrading (1 0.5 1)//2
hex (5 6 9 8 15 16 19 18) (80 80 1) simpleGrading (1 0.5 1)//3
hex (3 4 0 7 13 14 10 17) (80 80 1) simpleGrading (2 0.5 1)//4

Using this the points will match up, but your mesh is of course still broken as it was before adding the grading.

- Anton

gannicus April 13, 2012 03:12

1 Attachment(s)
thanks for the reply, I believe I have fixed the broken mesh which was caused by the z-coordinates of the vertices (0.1) not matching the z-coordinates of the spline code (0.01).

I changed the way i defined block 4 from:

hex(3 4 0 7 13 14 10 17) (10 80 1) simpleGrading(1 1 1)//4

to:

hex (4 3 7 0 14 13 17 10) (10 80 1) simpleGrading (1 1 1)//4

When i ran blockMesh I get a new error regarding block 4 which is:

Creating block mesh topology
--> FOAM Warning :
From function blockMesh::createTopology(IOdictionary&)
in file blockMesh/blockMeshTopology.C at line 255
negative volume block : 4, probably defined inside-out

Edit: After paying attention to the allignment of the blocks I am able to refine the mesh thanks, however would like to know how to resolve the warning message

akidess April 13, 2012 04:53

Negative volume blocks are no problem for paraview, but will impact simulations. Your face normals are now defined inside-out.

Have a look at figure 5.5. Compare the ordering of the vertices with your own ordering, and pay attention to the direction of x1, x2 for your blocks (it will help you to add the local coordinate system for each block to your schematic figure). You don't have to reorder your vertices - see my example in the post earlier how to get the grading right for the current order.


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