|October 21, 2016, 10:32||
On body-fitted cartesian mesh generation
Join Date: Mar 2009
Blog Entries: 17Rep Power: 21
i recently worked on my own unstructured flow solver, which i'm using with external mesh generators. While happy with this, i now start feeling uncomfortable because of the time-to-solution/robustness/price/capability limitations which somehow affect all the products i worked with until now.
So i started thinking about developing my own grid generator. For the very obvious reason that i have no background on mesh-generation, and by looking at the methods which seem to meet my constraints, i ended up with very few options which, roughly speaking, can be classified as body-fitted cartesian meshes. In practice, something along the lines of snappyHexMesh from the OpenFOAM suite. However, as i said, i also found the SHM approach to lack speed/robustness/simplicity. Which is the reason that bringed me here.
At the moment i am following the approach in this work (which should be at the base of CFD-VisCART from ESI https://www.esi-group.com/it/soluzio...te/cfd-viscart):
which, roughly speaking, does the following:
1) Create a cartesian (i.e., octree) mesh covering the whole domain
2) Refine the mesh near the surfaces of interest up to the required resolution
3) Tag the mesh cells as fluid/intersected/solid and discard intersected/solid ones (as well as fluid ones too close to the boundary)
4) Smooth (i.e., Laplacian) the resulting cartesian front (and probably also the connected interior cells)
5) Connect the cartesian front nodes with the nearest points on the surface
6) Enforce sharp feature representation and/or smoothness of the resulting surface mesh
7) If necessary, fill the newly created layer of cells near the surface with N layers (i.e., a boundary layer)
This, to me, looks much more simple, robust and straightforward than what SHM does (to the best of my knowledge):
1) The cartesian front can cut the surface
2) Snapping has to move the front back on the surface, starting from both sides of the surface
3) If a viscous layer is needed, the previous mesh is somehow moved away (again!) and cells are somehow inserted.
However, as i said, i have a very low confidence on the mesh generation subject, and hearing tips from experienced in mesh generation would be great.
For what concerns the method in the paper above, my practical experience ends in point 3, the easy part, and i know that the resulting mesh is always well formed and each boundary surface, as stated in the paper, will have a well formed boundary cartesian front around it. This, in practice, will work for arbitrary "triangle soups".
Also, i do not see any unsurmountable problem in handling point 4 without breaking the previous grid.
What i fear the most, obviously, is what comes from here, points 5-7. Also, i know this is just one of several possible choices to handle this last part.
For example, BOXERMESH:
seems to use a distance function for most of its tasks.
So, in practice, the very general question i would like to ask is if there is a method known to handle the part 5-7 above in a robust way not requiring user intervention. Might this method be the one above?
According to the paper, the resulting layer of cells next to the boundaries can be proven to be always well formed (before smoothing and cell insertion), even if not necessarily good. But, do you know if this is actually true?
At this stage, actually, i don't even care of representing sharp features, to have a boundary layer or a smooth surface mesh. I would be just happy with a method which can always produce a valid mesh after point 5. So i am open to any suggestion here.
Sorry for posting this here and not there http://www.cfd-online.com/Forums/mesh-generation/, but that forum didn't look like the best choice neither.
|Thread||Thread Starter||Forum||Replies||Last Post|
|[ICEM] Generating Mesh for STL Car in Windtunnel Simulation||tommymoose||ANSYS Meshing & Geometry||48||April 15, 2013 04:24|
|Layers:problem with curvature||giulio.topazio||OpenFOAM Native Meshers: snappyHexMesh and Others||10||August 22, 2012 09:03|
|[ANSYS Meshing] Question about mesh generation learning||lnk||ANSYS Meshing & Geometry||2||July 7, 2012 06:45|
|2D Mesh Generation Tutorial for GMSH||aeroslacker||Open Source Meshers: Gmsh, Netgen, CGNS, ...||12||January 19, 2012 04:52|
|Body fitted grid generation in FLOW3D||Nur Ikhwan||Main CFD Forum||1||January 25, 1999 06:40|