Use Fragments:

SetFactory("OpenCASCADE");
Box(1) = {-25, -25, -50, 50, 50, 50};
Disk(7) = {0, 0, 0, 0.5, 0.5};
BooleanFragments{ Surface{7}; Delete; }{ Volume{1}; Delete; }
Characteristic Length {9} = 0.05;
Physical Volume("bulk") = {1};
Physical Surface("disk") = {7};

Christophe


> On 10 May 2019, at 13:06, Zenker, Dr. Matthias <[email protected]> 
> wrote:
> 
> Hi,
>  
> I try to create a block with the top surface containing a disk:
>  
> //+
> SetFactory("OpenCASCADE");
> //+
> Box(1) = {-25, -25, -50, 50, 50, 50};
> //+
> Disk(7) = {0, 0, 0, 0.5, 0.5};
> //+
> BooleanDifference{ Surface{6}; Delete; }{ Surface{7}; }
> //+
> Characteristic Length {9} = 0.05;
> //+
> Delete {
>   Volume{1}; 
> }
> //+
> Surface Loop(2) = {1, 3, 5, 4, 2, 6, 7};
> //+
> Volume(1) = {2};
> //+
> Physical Volume("bulk") = {1};
> //+
> Physical Surface("disk") = {7};
> //+
> Physical Surface("top") = {6};
> //+
> Physical Surface("bottom") = {5};
> //+
> Physical Surface("side") = {1, 4, 2, 3};
>  
> The problem is that the surface 6 is not attached to the volume, but there is 
> a new surface 8 instead which is identical to surface 6, and which is used 
> for the volume.
> Consequently, when I create a mesh, the boundary corresponding to surface 6 
> is not attached to the volume, i.e. the nodes of surface 6 do not figure in 
> tetrahedra of the volume, and surface 6 is not recognized by Elmer on import.
> What do I do wrong?
>  
> Thank you for a hint,
> Matthias
>  
>  
> 
> Erbe Elektromedizin GmbH Firmensitz: 72072 Tuebingen Geschaeftsfuehrer: 
> Christian O. Erbe, Reiner Thede Registergericht: Stuttgart HRB 380137
> 
> _______________________________________________
> gmsh mailing list
> [email protected]
> http://onelab.info/mailman/listinfo/gmsh

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




_______________________________________________
gmsh mailing list
[email protected]
http://onelab.info/mailman/listinfo/gmsh

Reply via email to