[Gmsh] Gmsh: 3D Volume with a hole (not through-going)

Omid Mahabadi omid.mahabadi at geomechanica.com
Thu Aug 28 17:08:52 CEST 2014


Hi Christophe and Gmsh team,
I've been trying to model a simple cube with a cylindrical hole that is 
NOT through-going (i.e., its depth is smaller than the depth of the 
cube), as shown in the attached picture. The Extrude command doesn't 
seem to work since it will extrude both surfaces (exterior and interior 
-- hole) at the same time. I know I can define all the surfaces, surface 
loops, and volumes manually, but is there a better way of defining 
something like this in Gmsh?

I also tried to use the Compound Volume command by first defining two 
volumes from Extrude and then trying to combine them but I'm getting 
errors for the Compound Volume visualization (Error: Cannot evaluate 
bounds on GRegion Compound) and when I mesh the geometry, the actual 
shared interfaces are still existing, although by the notion of compound 
from the documentation, the internal interfaces should be neglected. 
Here is the geometry file:

    // Characteristic length (==> element size)
    cl_external   = 25;
    cl_excavation = 5;

    // External boundaries
    Point(1)      = {-127, 0.0, -127, cl_external};
    Point(2)      = {+127, 0.0, -127, cl_external};
    Point(3)      = {+127, 0.0, +127, cl_external};
    Point(4)      = {-127, 0.0, +127, cl_external};
    Line(1)       = {1, 2};
    Line(2)       = {2, 3};
    Line(3)       = {3, 4};
    Line(4)       = {4, 1};
    Line Loop(1)  = {1, 2, 3, 4};

    // Excavation boundaries
    Point(5)      = {0.0, 0.0, 0.0, cl_excavation};
    Point(6)      = {19.05, 0.0, 0.0, cl_excavation};
    Point(7)      = {0.0, 0.0, 19.05, cl_excavation};
    Point(8)      = {-19.05, 0.0, 0.0, cl_excavation};
    Point(9)      = {0.0, 0.0, -19.05, cl_excavation};
    Circle(5)     = {6, 5, 7};
    Circle(6)     = {7, 5, 8};
    Circle(7)     = {8, 5, 9};
    Circle(8)     = {9, 5, 6};
    Line Loop(2)  = {5, 6, 7, 8};

    //Using compound volumes
    Plane Surface(1) = {1};
    out1[] = Extrude {0.0, 76.2, 0.0}{Surface{1};};

    Plane Surface(2) = {1};
    out2[] = Extrude {0.0, -76.2, 0.0}{Surface{2};};

    Compound Volume(3) = {1, 2};


I also tried to create the geometry in CAD software and imported it as 
iges, brep or step formats but for reason the hole is not there 
completely. See for instances the iges file attached.

Can you kindly shed some light here? Am I doing something wrong? Or are 
there Gmsh tricks/commands that I can use to achieve my goal?

Thank you,
Omid

-- 
Omid Mahabadi, Ph.D.
Geomechanica, Inc.
http://www.geomechanica.com/
Tel : +1-647-478-9767
Cell: +1-416-824-2408

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20140828/55429343/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cube_with_hole.png
Type: image/png
Size: 9307 bytes
Desc: not available
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20140828/55429343/attachment.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cube_with_hole_wireframe.png
Type: image/png
Size: 25781 bytes
Desc: not available
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20140828/55429343/attachment-0001.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: block.iges
Type: model/iges
Size: 55890 bytes
Desc: not available
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20140828/55429343/attachment.iges>