[Gmsh] Embedded Curve in Volumes

Christophe Geuzaine cgeuzaine at uliege.be
Tue Feb 19 11:58:56 CET 2019



> On 19 Feb 2019, at 10:57, Sotiris Bakogiannis <sotbako at gmail.com> wrote:
> 
> Good morning,
> 
> pretty straightforward problem here.
> I'm using gmsh 4.1.5 and I want to embed one curve in two (2) volumes. The curve stretches from one volume and then inside the other. Take a look at the example.
> 
> SetFactory("OpenCASCADE");
> Box(1) = {0, 0, 0, 15, 15, 15};
> Extrude {7, 0, 0} {
>   Surface{2}; 
> }
> Line(21) = {2, 11};
> Curve{21} In Volume{1};
> Curve{21} In Volume{2};
> 
> Basically it is a box, then an extrusion of one of its surfaces to form the second volume and a line from one volume corner to the other volume. Then I embed the curve in each volume. Trying to 3D Mesh the system, gmsh crashes. I've tried it with all gmsh versions >4 and same thing happens.

You'll need to split the curve. Gmsh can do this for you:

SetFactory("OpenCASCADE");
Box(1) = {0, 0, 0, 15, 15, 15};
Extrude {7, 0, 0} {
  Surface{2};
}
Line(21) = {2, 11};
BooleanFragments{ Curve{21}; Delete; }{ Volume{1,2}; Delete; }

Moreover, BooleanFragments will embed the 2 curves automatically, so you don't have to do it explicitly.

(The crash is also fixed in the Git version and the previous geometry will now just lead to an error.)

Christophe


> 
> Any clue? Should the curve be entirely inside each volume that is to be embedded? I guess so. Must I split the curve if it stretches across different volumes?
> 
> Greetings
> _______________________________________________
> gmsh mailing list
> gmsh at onelab.info
> http://onelab.info/mailman/listinfo/gmsh

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






More information about the gmsh mailing list