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

[Other] Trying to understand checkMesh errors

Register Blogs Community New Posts Updated Threads Search

Like Tree44Likes
  • 3 Post By derekm
  • 31 Post By franjo_j
  • 2 Post By Astrodan
  • 4 Post By Astrodan
  • 4 Post By franjo_j

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   March 9, 2015, 12:50
Question Trying to understand checkMesh errors
  #1
Senior Member
 
Alex
Join Date: Oct 2013
Posts: 337
Rep Power: 21
zfaraday will become famous soon enough
Hi all,

I'm doing some tests with a geometry that is giving me some troubles according to what checkMesh says. This are the errors that the utility finds (using -allTopology -allGeometry options):

Code:
 ***Cells with small determinant (< 0.001) found, number of cells: 570
  <<Writing 570 under-determined cells to set underdeterminedCells
 ***Concave cells (using face planes) found, number of cells: 424
  <<Writing 424 concave cells to set concaveCells
    Face interpolation weight : minimum: 0.007427217 average: 0.4584105
 ***Faces with small interpolation weight (< 0.05) found, number of faces: 608
  <<Writing 608 faces with low interpolation weights to set lowWeightFaces
    Face volume ratio : minimum: 0.005415454 average: 0.8586378
 ***Faces with small volume ratio (< 0.01) found, number of faces: 304
  <<Writing 304 faces with low volume ratio cells to set lowVolRatioFaces
I would like to know what these errors exactly mean and how can they affect to the final result. I think that the concave cells are not a problem in my case taking into account all the information I've found out in the forum, but the other errors I have no clue what they mean nor how to solve them if its impact on the result is really significant.

Any hint about it will be much appreciated!

Regards,

Alex
__________________
Web site where I present my Master's Thesis: foamingtime.wordpress.com

The case I talk about in this site was solved with chtMultiRegionSimpleFoam solver and involves radiation. Some basic tutorials are also resolved step by step in the web. If you are interested in these matters, you are invited to come in!
zfaraday is offline   Reply With Quote

Old   March 10, 2015, 05:19
Default
  #2
Member
 
Alexander Bartel
Join Date: Feb 2015
Location: Germany
Posts: 97
Rep Power: 11
alexB is on a distinguished road
Hi Alex,

can you look at your mesh with paraFoam?
Perhaps you can upload a picture here somehow (Dropbox etc. desribed here http://www.cfd-online.com/Forums/ope...-get-help.html ).

I am also just at the beginning of learning OF, so the errors dont mean much to me.

Greetings
Alex
alexB is offline   Reply With Quote

Old   March 10, 2015, 06:49
Default
  #3
Senior Member
 
Alex
Join Date: Oct 2013
Posts: 337
Rep Power: 21
zfaraday will become famous soon enough
Hi Alex,

The reason why I didn't upload any picture of my geometry is that the only think I want is to have a better understanding of this errors, I mean the theoretical background behind them so that I can detect more easily the cells/faces and how to proceed to correct the mesh on my own.

Greetings,

Alex
__________________
Web site where I present my Master's Thesis: foamingtime.wordpress.com

The case I talk about in this site was solved with chtMultiRegionSimpleFoam solver and involves radiation. Some basic tutorials are also resolved step by step in the web. If you are interested in these matters, you are invited to come in!
zfaraday is offline   Reply With Quote

Old   March 19, 2015, 10:30
Default
  #4
Member
 
Timm Severin
Join Date: Mar 2014
Location: Munich
Posts: 63
Rep Power: 12
Astrodan is on a distinguished road
I can't help there either, but I have quite similar problems and would be interested.

However, maybe given images might help identify the "physical" problem, so I attached images for four different errors that occur in
Code:
checkMesh -allGeometry -allTopology

Result (excerpt):
    Face-face connectivity OK.
  <<Writing 117 cells with two non-boundary faces to set twoInternalFacesCells
    Number of regions: 1 (OK).

    Cell determinant (wellposedness) : minimum: 0 average: 109.741
 ***Cells with small determinant (< 0.001) found, number of cells: 117
  <<Writing 117 under-determined cells to set underdeterminedCells
 ***Concave cells (using face planes) found, number of cells: 4498
  <<Writing 4498 concave cells to set concaveCells
    Face interpolation weight : minimum: 0.0733659 average: 0.447134
    Face interpolation weight check OK.
    Face volume ratio : minimum: 0.0011126 average: 0.821268
 ***Faces with small volume ratio (< 0.01) found, number of faces: 3884
  <<Writing 3884 faces with low volume ratio cells to set lowVolRatioFaces

Failed 3 mesh checks.
What seems to be the case is that, the twoInternalFacesCell and underdeterminedCells are identical.

I also attached the concave cells, since I have a lot of them.

To have a better overview:
I also have 10 non-orthogonal cells, but I think they are not that bad, and I have a pretty good idea how to remove them.


Furthermore, for the mesh generation process, which I'm sure is quite important:
  1. I Created the geometry with four regions (different mesh structures in screenshots) in ANSYS Meshing
    1. The left and both right parts are structured meshes, with some refinement done towards the walls
    2. the center part contains some ugly geometry, and the hex mesh tended to be messy, so I but a tet-mesh here.
  2. Export the mesh as ACSII-msh
  3. Import in OpenFOAM using fluent3DMeshToFoam
  4. Merge all boundaries that are the same (e.g. walls) for different regions using createPatch utility
  5. Stitch the regions using the stitchMesh utitiliy
  6. Remove empty patches with the createPatch utility
So, if anyone has ideas what is going on there, I'd (we'd) appreciate help. And I hope you don't mind me using you thread, Alex .
__________________
PhD Student at the Institute of Biochemical Engineering at TU München
Modelling of fluid dynamics in open photobioreactors.

System:
OpenFOAM 2.3.x, 64bit, 8 Core Xeon Workstation
Astrodan is offline   Reply With Quote

Old   March 23, 2015, 12:00
Default
  #5
Senior Member
 
Derek Mitchell
Join Date: Mar 2014
Location: UK, Reading
Posts: 172
Rep Power: 13
derekm is on a distinguished road
Quote:
Originally Posted by zfaraday View Post
Hi Alex,

The reason why I didn't upload any picture of my geometry is that the only think I want is to have a better understanding of this errors, I mean the theoretical background behind them so that I can detect more easily the cells/faces and how to proceed to correct the mesh on my own.

Greetings,

Alex
have you read
ALGEBRAIC MESH QUALITY METRICS∗
PATRICK M. KNUPP SIAM J. SCI. COMPUT. Vol. 23, No. 1, pp. 193–218.
Derek
zfaraday, seuchsy and jadidi.cfd like this.
__________________
A CHEERING BAND OF FRIENDLY ELVES CARRY THE CONQUERING ADVENTURER OFF INTO THE SUNSET
derekm is offline   Reply With Quote

Old   March 23, 2015, 12:35
Default
  #6
Senior Member
 
Alex
Join Date: Oct 2013
Posts: 337
Rep Power: 21
zfaraday will become famous soon enough
Hi Derek,

Many many many thanks for your information! I totally ignored the existence of this paper and I think it is exactly what I needed!

Again, thanks for sharing so useful information!

Best regards,

Alex
__________________
Web site where I present my Master's Thesis: foamingtime.wordpress.com

The case I talk about in this site was solved with chtMultiRegionSimpleFoam solver and involves radiation. Some basic tutorials are also resolved step by step in the web. If you are interested in these matters, you are invited to come in!
zfaraday is offline   Reply With Quote

Old   March 24, 2015, 03:05
Default
  #7
Senior Member
 
Franjo Juretic
Join Date: Aug 2011
Location: Velika Gorica, Croatia
Posts: 124
Rep Power: 16
franjo_j is on a distinguished road
Send a message via Skype™ to franjo_j
Hello,

These errors do not mean that you mesh is invalid, it just tells that it may cause problems to the numerics in the following ways:
1. Small determinants - generally this mean that the volume of some cells is very small compared to their area and that they are nearly planar or collinear. I would not expect convergence problems if these cells were in the right locations (and aligned with the gradient of the solution).
2. Concave cells - are a consequence of non-flat faces, and in general it does not cause convergence problems. It does affect accuracy, but it is not too worrying when it is difficult to generate any mesh in the first place.
3. Interpolation weights - are important for the convection term and implicitly for the diffusion term. Low weights mean that one of cell at a face dominates over the other. This is not a problem when the solution is uniform, and severely reduces accuracy and convergence is case of non-uniform fields.
4. Volume ratio - is important for the source terms and the pressure equation. Again, it might be a problem if the solution is not uniform at that location.

I hope this adds some value so that you can understand these quality metrics better. These are my experiences when dealing with adaptive refinement with high aspect ratio cells.

Regards,

Franjo
jhoepken, akidess, Tobi and 28 others like this.
franjo_j is offline   Reply With Quote

Old   March 24, 2015, 08:30
Default
  #8
Senior Member
 
Alex
Join Date: Oct 2013
Posts: 337
Rep Power: 21
zfaraday will become famous soon enough
Hello Franjo,

Quote:
Originally Posted by franjo_j View Post
Hello,

These errors do not mean that you mesh is invalid, it just tells that it may cause problems to the numerics in the following ways:
1. Small determinants - generally this mean that the volume of some cells is very small compared to their area and that they are nearly planar or collinear. I would not expect convergence problems if these cells were in the right locations (and aligned with the gradient of the solution).
2. Concave cells - are a consequence of non-flat faces, and in general it does not cause convergence problems. It does affect accuracy, but it is not too worrying when it is difficult to generate any mesh in the first place.
3. Interpolation weights - are important for the convection term and implicitly for the diffusion term. Low weights mean that one of cell at a face dominates over the other. This is not a problem when the solution is uniform, and severely reduces accuracy and convergence is case of non-uniform fields.
4. Volume ratio - is important for the source terms and the pressure equation. Again, it might be a problem if the solution is not uniform at that location.

I hope this adds some value so that you can understand these quality metrics better. These are my experiences when dealing with adaptive refinement with high aspect ratio cells.

Regards,

Franjo
Wow! Thanks for this detailed and complete explanation! That was exactly what I needed!

However, I thought that the small determinant issue was an important point to take into account as Bruno Santos "wyldcat" suggested here in the forum in some other thread...

Again, thanks for taking your time with this very good answer!

Best regards,

Alex
__________________
Web site where I present my Master's Thesis: foamingtime.wordpress.com

The case I talk about in this site was solved with chtMultiRegionSimpleFoam solver and involves radiation. Some basic tutorials are also resolved step by step in the web. If you are interested in these matters, you are invited to come in!
zfaraday is offline   Reply With Quote

Old   March 24, 2015, 08:35
Default
  #9
Member
 
Timm Severin
Join Date: Mar 2014
Location: Munich
Posts: 63
Rep Power: 12
Astrodan is on a distinguished road
As marango say here underdetermined cells apparently can also occur when they have multiple boundary faces, so maybe that is your problem, too.

Apart from that, thanks Franjo for the explanation. As helpful as the Paper might be, it is far too complex for me to understand any time soon..
kyushusamurai and hogsonik like this.
__________________
PhD Student at the Institute of Biochemical Engineering at TU München
Modelling of fluid dynamics in open photobioreactors.

System:
OpenFOAM 2.3.x, 64bit, 8 Core Xeon Workstation
Astrodan is offline   Reply With Quote

Old   May 4, 2015, 12:02
Smile
  #10
Member
 
Howar
Join Date: Mar 2015
Posts: 53
Rep Power: 11
Howard is on a distinguished road
Quote:
Originally Posted by Astrodan View Post
I can't help there either, but I have quite similar problems and would be interested.

However, maybe given images might help identify the "physical" problem, so I attached images for four different errors that occur in
Code:
checkMesh -allGeometry -allTopology
 
Result (excerpt):
    Face-face connectivity OK.
  <<Writing 117 cells with two non-boundary faces to set twoInternalFacesCells
    Number of regions: 1 (OK).
 
    Cell determinant (wellposedness) : minimum: 0 average: 109.741
 ***Cells with small determinant (< 0.001) found, number of cells: 117
  <<Writing 117 under-determined cells to set underdeterminedCells
 ***Concave cells (using face planes) found, number of cells: 4498
  <<Writing 4498 concave cells to set concaveCells
    Face interpolation weight : minimum: 0.0733659 average: 0.447134
    Face interpolation weight check OK.
    Face volume ratio : minimum: 0.0011126 average: 0.821268
 ***Faces with small volume ratio (< 0.01) found, number of faces: 3884
  <<Writing 3884 faces with low volume ratio cells to set lowVolRatioFaces
 
Failed 3 mesh checks.
What seems to be the case is that, the twoInternalFacesCell and underdeterminedCells are identical.

I also attached the concave cells, since I have a lot of them.

To have a better overview:
I also have 10 non-orthogonal cells, but I think they are not that bad, and I have a pretty good idea how to remove them.


Furthermore, for the mesh generation process, which I'm sure is quite important:
  1. I Created the geometry with four regions (different mesh structures in screenshots) in ANSYS Meshing
    1. The left and both right parts are structured meshes, with some refinement done towards the walls
    2. the center part contains some ugly geometry, and the hex mesh tended to be messy, so I but a tet-mesh here.
  2. Export the mesh as ACSII-msh
  3. Import in OpenFOAM using fluent3DMeshToFoam
  4. Merge all boundaries that are the same (e.g. walls) for different regions using createPatch utility
  5. Stitch the regions using the stitchMesh utitiliy
  6. Remove empty patches with the createPatch utility
So, if anyone has ideas what is going on there, I'd (we'd) appreciate help. And I hope you don't mind me using you thread, Alex .
Hi, friend. Could I ask how to see the bad cells or points in paraview? I also have these problem. Thank you!
Howard is offline   Reply With Quote

Old   May 6, 2015, 04:31
Default
  #11
Member
 
Timm Severin
Join Date: Mar 2014
Location: Munich
Posts: 63
Rep Power: 12
Astrodan is on a distinguished road
If you execute checkMesh it writes you cellSets with the erroneous cells in your polyMesh directory.

If you then view your case with paraFoam you can mark the checkbox "include sets" and choose the generated sets in the same list where you find the boundary conditions etc..

If you open the case twice in the same paraFoam window, you can use one instance to display the internal mesh (wired) and one to display the bad cells in surface rendering with a colour of your choice.
__________________
PhD Student at the Institute of Biochemical Engineering at TU München
Modelling of fluid dynamics in open photobioreactors.

System:
OpenFOAM 2.3.x, 64bit, 8 Core Xeon Workstation
Astrodan is offline   Reply With Quote

Old   February 10, 2016, 02:00
Default checkMesh error!!
  #12
New Member
 
ravi
Join Date: Nov 2013
Posts: 10
Rep Power: 12
ark704 is on a distinguished road
Hi all,

I have converted a fluent mesh (made in ICEM) to Openfoam format. I am facing 2 errors :
1. I am getting twoInernalfacecells problem at the edges of the geometry which is resulting in small determinant problem too.
2. underdetermined cells (<0.001).
The above problems were not shown in ICEM Quality patterns. How do I resolve this problem while meshing in ICEM?

How does the openfoam solver behaves if small determinant (< 0.001) and twoInternalfacecells are present in the mesh?
ark704 is offline   Reply With Quote

Old   February 10, 2016, 07:04
Default
  #13
Senior Member
 
Franjo Juretic
Join Date: Aug 2011
Location: Velika Gorica, Croatia
Posts: 124
Rep Power: 16
franjo_j is on a distinguished road
Send a message via Skype™ to franjo_j
Hello,

Quote:
Originally Posted by ark704 View Post
Hi all,

I have converted a fluent mesh (made in ICEM) to Openfoam format. I am facing 2 errors :
1. I am getting twoInernalfacecells problem at the edges of the geometry which is resulting in small determinant problem too.
There are some cells in the mesh that have mostly boundary faces and only two or one internal face. Do you maybe have columns of stacked hexes somewhere in the mesh?
By all means this is not an error.

Quote:
Originally Posted by ark704 View Post
2. underdetermined cells (<0.001).
The above problems were not shown in ICEM Quality patterns. How do I resolve this problem while meshing in ICEM?
As was already mentioned, cells in oneInternalFaceCells and twoInternalFaceCells are also in the set of underdetermined cells. These cells may be problematic for evaluating gradients, and it depends on the boundary conditions applied there. Solution: refine the mesh or generate a boundary layer to reduce the number of boundary faces for each cells. Once again, this does not mean that you cannot run on this mesh.

Quote:
Originally Posted by ark704 View Post
How does the openfoam solver behaves if small determinant (< 0.001) and twoInternalfacecells are present in the mesh?
With underDetermined cells I would only expect problems with Von Neumann type of boundary conditions, otherwise it should not cause problems.

Regarding the concave cells, all arbitrary polyhedra with a few faces in the same plane are classified are concave cells. These cells are the the boundary of becoming concave, and they are still not. Therefore, this is not a problem and I would not worry much about it.
ark704, hogsonik, vivek05 and 1 others like this.
__________________
Principal Developer of cfMesh and CF-MESH+
www.cfmesh.com
Social media: LinkedIn, Twitter, YouTube, Facebook, Pinterest, Instagram
franjo_j is offline   Reply With Quote

Old   November 10, 2020, 13:09
Default
  #14
Member
 
Join Date: Nov 2018
Posts: 39
Rep Power: 7
MaySea is on a distinguished road
Quote:
Originally Posted by franjo_j View Post
Hello,

3. Interpolation weights - are important for the convection term and implicitly for the diffusion term. Low weights mean that one of cell at a face dominates over the other. This is not a problem when the solution is uniform, and severely reduces accuracy and convergence is case of non-uniform fields.
Hi,

My mesh has many faces with low interpolation weights.
Code:
Faces with small interpolation weight (< 0.05) found, number of faces: 141
Is there a way to reduce this with snappyHexMeshDict?
I confirm that these faces cause convergence (convection) problems... my simulations keep blowing up with this mesh.

Thanks,
Jan
MaySea is offline   Reply With Quote

Old   November 11, 2020, 08:52
Default
  #15
Member
 
Join Date: Nov 2018
Posts: 39
Rep Power: 7
MaySea is on a distinguished road
I fixed the problem by simply adding more layers.
MaySea is offline   Reply With Quote

Reply


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
Building OpenFOAM1.7.0 from source ata OpenFOAM Installation 46 March 6, 2022 13:21
pimpleDyMFoam computation randomly stops babapeti OpenFOAM Running, Solving & CFD 5 January 24, 2018 05:28
Upgraded from Karmic Koala 9.10 to Lucid Lynx10.04.3 bookie56 OpenFOAM Installation 8 August 13, 2011 04:03
IcoFoam parallel woes msrinath80 OpenFOAM Running, Solving & CFD 9 July 22, 2007 02:58
Could anybody help me see this error and give help liugx212 OpenFOAM Running, Solving & CFD 3 January 4, 2006 18:07


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