CFD Online Logo CFD Online URL
Home > Forums > OpenFOAM Mesh Utilities

Sharp edge problem on concave patches using polyDualMesh without error

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree2Likes
  • 2 Post By keepfit

LinkBack Thread Tools Display Modes
Old   September 12, 2012, 07:53
Default Sharp edge problem on concave patches using polyDualMesh without error
David Long
Join Date: May 2012
Location: Germany
Posts: 69
Rep Power: 7
keepfit is on a distinguished road
Hi OpenFoamers,

I made a simple 3D damBreak case in order to test polyDualMesh utility, i.e. convert tetrahedral mesh to polyhedral mesh. Because sometimes you want to reduce tet cell number especially when it reaches millions.

Right now I could run the case with relative lower nonOrthoFaces, but I doubt if runing a case with large number of cells (millions) it may blow up.

My question is:
How to produce a perfect share edge on concave patches, without losing geometry information, and without nonOrthoFaces, wrong OrientedFaces ,etc.

I would appreciate any of your tips or recommendations.


1. Small feature angle / without -concaveMultiCells option

First a tetrahedral mesh is generated with Delaunay algorithm according to previous posts, import it to OpenFoam and checkMesh, everything is fine. Then perform:

 polyDualMesh [option] <feature angle>
 combinePatchFaces <feature angle>
After polyDualMeshing with a feature angle 60 I found that some wrongOrientedFaces is produced, see below:

2. Small feature angle / with -concaveMultiCells option

By looking into the polyDualmesh options I realized the -concaveMultiCells option is missed. By adding this option we can still get the sharp edges on concave patches and wrongOrientedFaces are eliminated. However, the concave edges could not be combined by varying from small to large feature angle. Furthermore, nonOrthoFaces are produced around concave patches/boundaries during the process.

 polyDualMesh -concaveMultiCells 60
combinePatchFaces 60

3. corrected feature angle / with and without -concaveMultiCells option

Since the feature angle is the minimum angle between patches (if wrong please correct me). In this case the angle is approximately 90 degree.

polyDualMesh -concaveMultiCells 90
or without -concaveMultiCells
polyDualMesh 90
Both commands produce identical results and they can pass checkMesh without error information.

It seems that the featured concave edges are smoothened by polyhedral cell, and some of the geometry information is lost! During the polyDualMeshing I found that there is no "Detected concave feature edge ...." information, while with smaller feature angle, we can see such information

Detected concave feature edge:21320 cos:0.0123893 coords2.11429 0.685714 0.464286)(2.12857 0.671429 0.428571)
Detected concave feature edge:21386 cos:0.00931472 coords1.38571 1.41429 0.214286)(1.37143 1.42857 0.178571)
4. Summary

It seemed that none of above meshes are perfect.

Based on the tests above, using polyDualMesh utility in OpenFoam to convert tet mesh (with concave patches) to polyhedral mesh, the feature angle is the key parameter. Assuming Alpha_min is the minimum angle between patches, and Beta_ is the feature angle used with polyDualMesh,

I. if Beta_ < alpha_min, -concaveMultiCells option must be used to eliminate wrong OrientedFaces, but meanwhile it may produce nonOrthoFaces.
II. if Beta_ >= alpha_min, polyDualMesh will generate same polyhedral mesh either with or without -concaveMultiCells option, because it seems that polyDualMesh can not detect feature edges with a relative large feature angle.

Best regards,

nsf and Alhasan like this.

Last edited by keepfit; September 15, 2012 at 13:27.
keepfit is offline   Reply With Quote

Old   November 25, 2014, 15:28
Smile How to convert tetrahedral to polyhedral
New Member
Join Date: Nov 2012
Posts: 2
Rep Power: 0
wang2012 is on a distinguished road
i want to convert my mesh from tetrahedral to polyhedral for the chtMultiRegionFoam.

The mesh was built from ANSYS. I try the polyDualMesh.
polyDualMesh 180 -concaveMultiCells 
combinePatchFaces 180
aber they worked not so well. After convert with polyDualMesh, the number of elements are 4 times larger than previously, and there are 99% of hexahedra and only 1% of polyhedral.



I really appreciate if you help me at this.

wang2012 is offline   Reply With Quote


Thread Tools
Display Modes

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 On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
GroovyBC the dynamic cousin of funkySetFields that lives on the suburb of the mesh gschaider OpenFOAM 300 October 29, 2014 19:00
Problem running perturbUCyl sen.1986 OpenFOAM 14 March 23, 2012 05:12
Saving ParaFoam views and case sail OpenFOAM Paraview & paraFoam 9 November 25, 2011 16:46
ParaView for OF-1.6-ext Chrisi1984 OpenFOAM Installation 0 December 31, 2010 07:42
CGNS lib and Fortran compiler manaliac Main CFD Forum 2 November 29, 2010 07:25

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