<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#ffffff" text="#000000">
<tt>Dear Gmsh users,
<br>
<br>
I am trying to generate a (structured) grid in 2D, in the following
context:
<br>
<br>
- we have a geometry like :
<br>
<br>
____________________________
<br>
| /|
<br>
| (1) / |
<br>
| / |
<br>
|......................../ |
<br>
| (2) |(3)|
<br>
|________________________|___|
<br>
<br>
- I am trying to mesh it in a structured way, i.e. via a Frontal
algorithm with the "Recombine all"
<br>
option enabled (with the "Blossom" recombination method). The point
is that the frontiers
<br>
between all surfaces do not have any physical meaning: we want to
mesh each surface separately,
<br>
then to smooth the mesh on the <b class="moz-txt-star"><span
class="moz-txt-tag">*</span>whole<span class="moz-txt-tag">*</span></b>
(compound) surface of surfaces (1), (2) and (3).
<br>
<br>
To obtain this mesh, I proceed as follows:
<br>
1. I mesh each surface, (1), (2) and (3), I refine by splitting (to
quadrangles as well)
<br>
and I store the resulting mesh.
<br>
2. I add a Compound Surface with surfaces (1), (2) and (3) to the
geometry.
<br>
3. I specify a number of smoothing steps to the Frontal meshing
algorithm.
<br>
4. I try to "merge" the mesh obtained at step 1 with the geometry
obtained
<br>
at step 2.
<br>
<br>
Everything seems to work fine in steps 1, 2 and 3. However, in step 4,
when I merge the mesh
<br>
obtained at step 1, there seems to be no smoothing the way I would have
wanted it (especially
<br>
towards the point where the three surfaces intersect).
<br>
Should I perform this smoothing in a post-processing step?
<br>
<br>
I have also tried to remesh the compound surface obtained at step 2
with the same parameters as
<br>
in step 1. However, in this case, Gmsh crashes with a segmentation
fault.
<br>
<br>
As I am novice with Gmsh, I wonder whether I am doing something wrong,
or if I
should<br>
obtain the smoothed mesh in a different way? <br>
If this involves post-processing, how could I
drive this process?
<br>
Or is this actually a multi-domain meshing problem, which Gmsh doesn't
handle?
<br>
<br>
For details, I also post the .geo file below.<br>
I use this file as gmsh compound.geo -2 for generating the mesh.<br>
<br>
Thank you very much for your answer.
<br>
<br>
Regards,
<br>
Vladimir Popescu<br>
<br>
compound.geo file :<br>
Point(1) = {-2.7, 0.2, 0, 1};<br>
Point(2) = {-2.7, -0.2, 0, 1};<br>
Point(3) = {-2.1, -0.2, 0, 1};<br>
Point(4) = {-2.1, 0.2, 0, 1};<br>
Point(5) = {-1.8, 0.5, 0, 1};<br>
Point(6) = {-1.8, -0.2, 0, 1};<br>
Point(7) = {-2.7, 0.5, 0, 1};<br>
Line(1) = {1, 2};<br>
Line(2) = {2, 3};<br>
Line(3) = {3, 4};<br>
Line(4) = {4, 1};<br>
Line(5) = {7, 1};<br>
Line(7) = {4, 5};<br>
Line(8) = {5, 7};<br>
Line(9) = {5, 6};<br>
Line(10) = {6, 3};<br>
Line Loop(13) = {8, 5, -4, 7};<br>
Plane Surface(13) = {13};<br>
Line Loop(15) = {4, 1, 2, 3};<br>
Plane Surface(15) = {15};<br>
Line Loop(17) = {7, 9, 10, 3};<br>
Plane Surface(17) = {17};<br>
Compound Surface(18) = {13, 15, 17};<br>
Hide {Surface{13, 15, 17}; }<br>
//Geometry.HideCompounds = 0;<br>
Mesh.Algorithm = 6;<br>
Mesh.RecombineAll = 1;<br>
Mesh.RecombinationAlgorithm = 1;<br>
Mesh.RemeshAlgorithm = 1;<br>
Mesh.RemeshParametrization = 1;<br>
Mesh.Smoothing = 5;<br>
</tt>
</body>
</html>