EdgeGrading changes geomety
Hi,
I have a 2D case with mesh generation with blockMesh. The solver didn't solve momentum (U) equation. According to this thread http://www.cfd-online.com/OpenFOAM_D...es/1/6884.html my domain is bent. I analyzed my mesh and found the problematic block. In this block I use edgeGrading. If I change all ratios to 1 the block is straight. When using combinations of ratios the block gets fatter in the middle. Parts from blockMeshDict: convertToMeters 0.001; //mm vertices ( //a (-31.7 9 -0.5) // Vertex a1b = 0 (0.0 9 -0.5) // Vertex a2b = 1 (0.0 15.775 -0.5) // Vertex a3b = 2 (-31.7 15.775 -0.5) // Vertex a4b = 3 (-31.7 9 0.5) // Vertex a1t = 4 (0.0 9 0.5) // Vertex a2t = 5 (0.0 15.775 0.5) // Vertex a3t = 6 (-31.7 15.775 0.5) // Vertex a4t = 7 ); blocks ( hex (0 1 2 3 4 5 6 7) (50 22 1) edgeGrading (0.25 1 1 0.25 1 4 4 1 1 1 1 1 )//block a ); http://www.cfd-online.com/OpenFOAM_D...ges/1/7251.png CheckMesh: (on z-axis the define points are at -0.5 mm or 0.5 mm) Checking geometry... Domain bounding box: (-0.0317 0.009 -0.000515173) (0 0.015775 0.000515173) Boundary openness (1.90575e-18 -4.52277e-17 2.57335e-16) OK. Max cell openness = 2.22755e-16 OK. Max aspect ratio = 7.16218 OK. Minumum face area = 4.29135e-08. Maximum face area = 1.16818e-06. Face area magnitudes OK. Min volume = 4.29163e-11. Max volume = 3.55129e-10. Total volume = 2.17623e-07. Cell volumes OK. Mesh non-orthogonality Max: 43.2975 average: 31.2745 Non-orthogonality check OK. Face pyramids OK. Max skewness = 0.418386 OK. Min/max edge length = 0.000141259 0.00116818 OK. All angles in faces OK. Face flatness (1 = flat, 0 = butterfly) : average = 1 min = 1 All face flatness OK. Mesh OK. Is this a bug with edgeGrading? Anita |
Sorry, I don't see the problem
Sorry, I don't see the problem: "the block gets fatter in the middle". Can I see this from the picture above?
I originally wrote all this grading stuff, it is used in the pitzDaily simpleFoam tutorial and it works in 2-D without trouble. Can you investigate further? Hrv |
Hi Hrv,
you don't see it from
Hi Hrv,
you don't see it from the above picture. I added two pictures looking sideways on the mesh. The z-axis is stretched to see the curved surface better. You can also see it from the Domain bounding box (-0.0317 0.009 -0.000515173) (0 0.015775 0.000515173) which is larger in z direction as the hex in blockMeshDict. I also looked in the points file: Only few point at the start and the end of the file have the desired z-position. Anita Looking from right side: http://www.cfd-online.com/OpenFOAM_D...ges/1/7257.png Looking from the bottom: http://www.cfd-online.com/OpenFOAM_D...ges/1/7258.png |
Hi,
I looked at the utilitis
Hi,
I looked at the utilitis of OpenFoam and found flattenMesh. This removed the curved surface and now my mesh is real 2D. Also the solver now solves the U-equation. By now I can go on with simulating my case, but I still want to now if it was my fault and how I can avoid this problem in future. Anita |
Hallo Anita,
I have the sam
Hallo Anita,
I have the same problem that by using the edgeGrading the bounding box gets greater. flattenMesh does NOT remove it, poorly. And further advice? |
Hi,
I can also confirm this
Hi,
I can also confirm this behavior for my 3D-cylinder. /Andreas |
For my case the error comes an
For my case the error comes and goes depending on what value I use on the edge.
A value less than 12.5 for instance gives bad behavior and a value greater than 13.2 works well. Hrv, do you have any clue why this error might occur? /Andreas |
A blockMeshDict like the one b
A blockMeshDict like the one below creates this error. The vertices are ordered according to http://www.opencfd.co.uk/openfoam/doc/blockMesh.html .
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \ / O peration | Version: 1.5 | | \ / A nd | Web: http://www.OpenFOAM.org | | \/ M anipulation | | /*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object blockMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // convertToMeters 1; vertices ( ( 0 0 0 ) // vertex number 0 ( 1 0 0 ) // vertex number 1 ( 1 1 0 ) // vertex number 2 ( 0 1 0 ) // vertex number 3 ( 0 0 1 ) // vertex number 4 ( 1 0 1 ) // vertex number 5 ( 1 1 1 ) // vertex number 6 ( 0 1 1 ) // vertex number 7 ); blocks ( hex (0 1 2 3 4 5 6 7) (2 2 2) edgeGrading (4 3 3 4 2 1 1 2 1 1 1 1) ); edges ( ); patches ( ); mergePatchPairs ( ); // ************************************************** *********************** // /Andreas |
All times are GMT -4. The time now is 03:20. |