[Gmsh] 3D mesh where volumes share part of a boundary

Christophe Geuzaine cgeuzaine at ulg.ac.be
Thu Aug 26 15:02:30 CEST 2010


On 21/08/10 13:01, matthew suddards wrote:
> Hi,
>
> I am having some problems meshing 3D shapes where parts of the
> geometry include surfaces shared between different volumes. I start
> with a 2D object comprising a number of surfaces and I extrude these
> different surfaces by different amounts to produce a set of volumes. I
> have tried making the 3D shape from a set of points rather than using
> the extrude function and I get the same problem.
>
> I guess it is an issue with the mesh overlapping at this boundary but
> I have concluded I just don't understand gmsh well enough to work out
> how I should get round this problem.
>
> I have included a simple example of a geometry in which I see the
> meshing problem. In this case it would be easy for me to make the
> whole object one volume and not have the internal boundary. In the
> actual  example I am working towards the boundaries are important as I
> have different materials.

Hi Matthew - Gmsh's interal CAD engine does not split surfaces. You'll 
need to generate the common surfaces separately, e.g.:

Point(1) = {0, 0, 0};
Point(2) = {1, 0, 0};
Point(3) = {1, 1, 0};
Point(4) = {0, 1, 0};
Point(5) = {0, 2, 0};
Point(6) = {1, 2, 0};
Line(1) = {5, 4};
Line(2) = {4, 3};
Line(3) = {3, 6};
Line(4) = {6, 5};
Line(5) = {5, 4};
Line(7) = {1, 4};
Line(8) = {1, 2};
Line(9) = {2, 3};
Line Loop(10) = {1, 2, 3, 4};
Plane Surface(11) = {10};
Line Loop(12) = {7, 2, -9, -8};
Plane Surface(13) = {12};
Extrude {0, 0, 0.25} { Surface{11,13}; }
Extrude {0, 0, 0.25} { Surface{35}; }



-- 
Prof. Christophe Geuzaine
University of Liege, Electrical Engineering and Computer Science
http://www.montefiore.ulg.ac.be/~geuzaine