|
[Sponsors] |
November 28, 2001, 13:05 |
Mesh smoothing schemes
|
#1 |
Guest
Posts: n/a
|
Hi there,
I am looking for a robust mesh smoothing technique for 2D unstructured grids, with fixed boundary nodes. I used the Laplacian smoothing. However, when the original internal mesh is very much distorted (nearly overlapped), the smoothing simply does not work. Any suggestion? Thanks in advance. Tony , |
|
November 28, 2001, 16:51 |
Re: Mesh smoothing schemes
|
#2 |
Guest
Posts: n/a
|
For each interior grid point, consider all triangles incident to the point. Then place the vertex at the centroid of the polygon formed by these triangules.
A few iterations on this procedure (less than 5?) may do the trick. |
|
November 28, 2001, 17:41 |
Re: Mesh smoothing schemes
|
#3 |
Guest
Posts: n/a
|
Thanks kindly.
In fact, I am using this method. However, since the interior grid is so bad that it does not work very properly. Sometime the "smoothed" grid may run out of the boundary. Any comment? Thanks again. Tony |
|
November 28, 2001, 18:31 |
Re: Mesh smoothing schemes
|
#4 |
Guest
Posts: n/a
|
How about using a spring analogy method based on torsional springs? This may preserve positive volumes as the angle between edges (and hence area) becomes small. The vertices are then displaced by summing the moments and computing a change in angle.
Perhaps you could post an image of the mesh somewhere to give a better picture of what's happening. |
|
November 28, 2001, 18:46 |
Re: Mesh smoothing schemes
|
#5 |
Guest
Posts: n/a
|
Thanks.
What is the spring analogy method? Could you please provide some references? I am doing some landslide simulations in Lagrangian frame. Whenever the mesh becomes nearly overlapping, I need to map it to a better mesh (it is activated automatically). The boundary is somewhat complicated, therefore I want the mapping robust. Tony |
|
November 28, 2001, 19:41 |
Re: Mesh smoothing schemes
|
#6 |
Guest
Posts: n/a
|
What exactly is the problem? Do your elements get inverted? Would it be allowed to change the mesh topology?
A very simple approach would be to check if any of the adjacent elements of a node get inverted. If that happens simply move the node as far as you can without inverting anything. By doing so, you will "push away" nodes which would otherwise block your smoother. The best mesh smoother I know for triangular grids, would be to minimize the circum-circles of your triangles. This is more difficult to implement, though. Oliver |
|
November 28, 2001, 19:56 |
Re: Mesh smoothing schemes
|
#7 |
Guest
Posts: n/a
|
Before you jump to this approach, a simple technique you may want to try with your current method is to under-relax the change in node coordinates. This may be helpful if the computed change is too abrupt initially.
The basic concept of spring analogies, lineal or torsional, is that the mesh is represented as a system of interconnected springs, whose stiffness is inversely proportional to the edge length or the angle between edges. Forces/moments are then summed to zero as F = k*(delta x) for all edges incident to a given node, and a change in coordinate or angle is computed. I can get those references to you tomorrow if the under-relaxation doesn't work. As a last resort, if the change in grid topology is too great, a mesh movement may simply not be sufficient and you may have to resort to a local or complete mesh regeneration, which in 2D isn't that bad. |
|
November 29, 2001, 08:12 |
Re: Mesh smoothing schemes
|
#8 |
Guest
Posts: n/a
|
Along these lines, Tony, you may attempt to remove the high aspect ratio triangles (which have large circumradii) by performing edge swaps. This would apply to interior edges only, of course, but this operation will improve mesh quality as Oliver suggessted. A combination of edge swapping and node smoothing could help things.
Again, keep in mind that for large changes in boundary motion and/or topology, some degree of mesh reconstruction/regeneration is likely required. Good luck. |
|
November 29, 2001, 08:51 |
Re: Mesh smoothing schemes
|
#9 |
Guest
Posts: n/a
|
1) I worked on grid generation in my diploma thesis and that is many years ago so my comments may not be technical enough but may be they help. 2) Laplacian smooting is a bit like placing nodes on a 3rd order polynom in a 2D plane, hoping that
y_node_i - y_node_i+1 is always positiv or always negativ. This of course is not always the case since 3rd order polynoms are monotonous not very often 3) On of my teachers had the idea to develop a smooting scheme which behaves more in a exponential way. And as you know the exponential function always is monotonous 4) I implemented that scheme and it worked perfectly. 5) Unfortunately I do not have any papers or code listings of that work anymore. But I can offer to bring you in touch with him. If you like to talk to him please write me a personal email. |
|
November 29, 2001, 12:54 |
Re: Mesh smoothing schemes
|
#10 |
Guest
Posts: n/a
|
Thanks.
I tried under-relax. It did work. The under-relax parameter must be small though, so that the iteration converges. I am thinking of incorporating a mesh generator later. Anyway, it solves my current problems. Thanks to all. Tony |
|
December 7, 2001, 01:55 |
Re: Mesh smoothing schemes
|
#11 |
Guest
Posts: n/a
|
Hello, Tony.
More efficient grid post smoothing algorithms are : 1. Topological clean up algorithm 2. Optimization based smoothing U can find related articles in Finite Element Arena. Algorithm 1 is very efficient even though grid quality was very unsatisfactory. Good Luck. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[snappyHexMesh] SnappyHexMesh for internal Flow | vishwa | OpenFOAM Meshing & Mesh Conversion | 24 | June 27, 2016 09:54 |
[snappyHexMesh] non-smooth mesh | Svensson | OpenFOAM Meshing & Mesh Conversion | 11 | January 18, 2012 10:13 |
basic of mesh refinement | arya | CFX | 4 | June 19, 2007 13:21 |
Icemcfd 11: Loss of mesh from surface mesh option? | Joe | CFX | 2 | March 26, 2007 19:10 |
Mesh | Mignard | FLUENT | 2 | March 22, 2000 06:12 |