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

[Technical] Polyhedral mesh generation

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

Like Tree9Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   September 15, 2008, 00:30
Default Hrv, Something came to mind
  #41
Senior Member
 
Chris Sideroff
Join Date: Mar 2009
Location: Ottawa, ON, CAN
Posts: 434
Rep Power: 22
cnsidero is on a distinguished road
Hrv,

Something came to mind after I posted. If the triangular surface meshing is done independently from the tetrahedral volume meshing, the tet mesh may not be able to modify to surface mesh to allow the tets near the surfaces to be Delaunay - I believe this is called 'constrained Delaunay' meshing. Constrained Delaunay meshes may not be strictly Delaunay.

This a common approach for most mesh generators as the user typically 'tunes' the surface mesh manually - through local refinement and boundary point adjustment - and the volume mesh is generated based off the surface mesh.

This may be where the loosening of the Delaunay criteria may be appearing.

Chris
Tobias Adam likes this.
cnsidero is offline   Reply With Quote

Old   July 9, 2009, 06:31
Default
  #42
bfa
Member
 
Björn Fabritius
Join Date: Mar 2009
Location: Freiberg, Germany
Posts: 31
Rep Power: 17
bfa is on a distinguished road
It seems like polyDualMesh still suffers from some restrictions. Unfortunately in the current state it's of not much use to me.
Do you know of any papers on the matter? I would like to know more about what the polyDualMesh tool actually does. I tried to understand all of it by browsing the code, but that is at least tedious work. The common search engines did not yield any useful links when searching for something like "convert tetrahedral to polyhedral grids". (80% of the links point to this forum...)

Bjoern
bfa is offline   Reply With Quote

Old   July 10, 2009, 03:41
Default
  #43
Senior Member
 
Mark Olesen
Join Date: Mar 2009
Location: https://olesenm.github.io/
Posts: 1,714
Rep Power: 40
olesen has a spectacular aura aboutolesen has a spectacular aura about
Quote:
Originally Posted by bfa View Post
The common search engines did not yield any useful links when searching for something like "convert tetrahedral to polyhedral grids". (80% of the links point to this forum...)
This link should give you a bit of an idea, even if the exact implementation is different:
http://www.anova.com.tr/dosyalar/destek/polyhedral.pdf

You might also try searching for < voronoi delaunay > - this is a somewhat similar concept.
olesen is offline   Reply With Quote

Old   October 20, 2009, 13:22
Default 2D polyhedral mesh
  #44
Senior Member
 
Tomislav Maric
Join Date: Mar 2009
Location: Darmstadt, Germany
Posts: 284
Blog Entries: 5
Rep Power: 21
tomislav_maric is on a distinguished road
Hi everyone,


Can someone tell me is there a straightforward way to produce "2D" polyhedral meshes for OpenFOAM?

Thanks...
tomislav_maric is offline   Reply With Quote

Old   November 10, 2010, 10:10
Default
  #45
Senior Member
 
Markus Rehm
Join Date: Mar 2009
Location: Erlangen (Germany)
Posts: 184
Rep Power: 17
markusrehm is on a distinguished road
Hello,

I converted a hybrid mesh with polyDualMesh and got nice poly cells in the former tet region but in the hexa region the cells are split leading to a huge final mesh. I suppose that polyDualMesh splits one hexa cell into 8 new hexas.

Is there a way to supress this behaviour or to apply the utility only in a certain region?

Regards Markus.
markusrehm is offline   Reply With Quote

Old   November 10, 2010, 10:40
Default
  #46
Senior Member
 
Mark Olesen
Join Date: Mar 2009
Location: https://olesenm.github.io/
Posts: 1,714
Rep Power: 40
olesen has a spectacular aura aboutolesen has a spectacular aura about
Quote:
Originally Posted by markusrehm View Post
Hello,

I converted a hybrid mesh with polyDualMesh and got nice poly cells in the former tet region but in the hexa region the cells are split leading to a huge final mesh. I suppose that polyDualMesh splits one hexa cell into 8 new hexas.

Is there a way to supress this behaviour or to apply the utility only in a certain region?
Are you really sure about it splitting the hexas? I haven't used polyDualMesh for a while or looked into the code recently but this certainly was not the case previously. From what I remember seeing, it internally split along the cell edges and then recombined about the corner points. Thus a duallized hexa mesh should result in another hexa mesh, albeit shifted by approx. 1/2 cell in each direction.

If I check with the mesh from angledDuctImplicit, then checkMesh reports

Before:
hexahedra: 22000

After:
hexahedra: 23232
prisms: 4
polyhedra: 1460


The non-hexas arise from the corners of the domain.
At least for this type of mesh I wouldn't say that the increase in the cell count is excessive.
olesen is offline   Reply With Quote

Old   November 11, 2010, 05:06
Default
  #47
Senior Member
 
Markus Rehm
Join Date: Mar 2009
Location: Erlangen (Germany)
Posts: 184
Rep Power: 17
markusrehm is on a distinguished road
Hello Mark,

thank you for your reply. I can confirm your observation for the angledDuct geometry.
I ran another test with the cavity case and the cell number goes up from 400 to 882.
In our geometry which has quite a few edges I start with 0.4 mill. cells and end up with 2.7 mill. !

I post some pictures of the two examples.

Do you see a chance to ignore the hexas in the polyDualMesh algorithm? As it works now it is not very benefitial for complex hybrid geometries.



Regards, Markus
Attached Images
File Type: jpg 01_cavity_before.jpg (50.4 KB, 140 views)
File Type: jpg 02_cavity_after.jpg (58.9 KB, 152 views)
File Type: jpg 03_cavity_afterSlice.jpg (86.8 KB, 158 views)
File Type: jpg 04_geom_before.jpg (95.8 KB, 183 views)
File Type: jpg 05_geom_after.jpg (97.7 KB, 208 views)
markusrehm is offline   Reply With Quote

Old   November 11, 2010, 05:40
Default
  #48
Senior Member
 
Mark Olesen
Join Date: Mar 2009
Location: https://olesenm.github.io/
Posts: 1,714
Rep Power: 40
olesen has a spectacular aura aboutolesen has a spectacular aura about
Quote:
Originally Posted by markusrehm View Post
Hello Mark,

thank you for your reply. I can confirm your observation for the angledDuct geometry.
I ran another test with the cavity case and the cell number goes up from 400 to 882.
In our geometry which has quite a few edges I start with 0.4 mill. cells and end up with 2.7 mill. !
This is probably your issue as well. If (as an extreme example) the mesh is a single cell layer deep (ie, essentially 2d), the number of hexas will approximately double.

Quote:
Do you see a chance to ignore the hexas in the polyDualMesh algorithm? As it works now it is not very benefitial for complex hybrid geometries.
It would not be general enough for the polyDualMesh algorithm to simply ignore hexas. It would essentially need to do the same as the workaround that you'll need to attempt. Sorry I haven't tried any of this myself, so I can't be much more help here.

1. Identify the hex-dominant region that you don't want dualized and assign it to a cellset. This region should be contiguous.
2. Use splitMeshRegions to split things apart.
3. You'll need a modified polyDualMesh that handles the '-region' option so that you only dualize a particular region. You might need support help for that.
4. Rejoin the mesh regions. I don't find a command for that immediately, but it must be there (I hope).
olesen is offline   Reply With Quote

Old   November 11, 2010, 06:01
Default
  #49
Senior Member
 
Markus Rehm
Join Date: Mar 2009
Location: Erlangen (Germany)
Posts: 184
Rep Power: 17
markusrehm is on a distinguished road
Thanks a lot. I will check it out.

Markus
markusrehm is offline   Reply With Quote

Old   July 17, 2012, 03:59
Default
  #50
Super Moderator
 
-mAx-'s Avatar
 
Maxime Perelli
Join Date: Mar 2009
Location: Switzerland
Posts: 3,297
Rep Power: 41
-mAx- will become famous soon enough
Hello,
Did you solved your problem?
I tried yesterday to convert a 4 millions cells with polyDualMesh and it generated 21 millions cells.
My mesh comes from Gambit, and it is an hybrid one : Hexa Volumes in combination with Volumes which are meshed with tetra-hexcore schema. With this schema a core of hexa is generated within the volume, and surrounding it there are some tetra layers.
I would like to convert only tetra in polyhedra
any idea?
__________________
In memory of my friend Hervé: CFD engineer & freerider
-mAx- is offline   Reply With Quote

Reply

Thread Tools Search this Thread
Search this Thread:

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


Similar Threads
Thread Thread Starter Forum Replies Last Post
how to set periodic boundary conditions Ganesh FLUENT 15 November 18, 2020 07:09
Polyhedral mesh generation sanathkeshav ANSA 1 September 3, 2018 10:39
Mesh motion with Translation & Rotation Doginal CFX 2 January 12, 2014 07:21
[ICEM] Need urgent help for hybrid mesh generation Pursuor ANSYS Meshing & Geometry 1 August 29, 2012 17:04
Convergence moving mesh lr103476 OpenFOAM Running, Solving & CFD 30 November 19, 2007 15:09


All times are GMT -4. The time now is 08:15.