[Gmsh] Missing surfaces in mesh when using Boolean operators

Ruth Vazquez Sabariego ruth.sabariego at kuleuven.be
Wed Feb 7 12:55:15 CET 2018


Hi Isabela,

You may use BooleanFragments instead of BooleanDifference. That seems to work:
Try the following at the end of your file:

/*
voxcyl() = BooleanDifference{Volume{v};}{Volume{union19()}; Delete;};
//Physical Volume(0) = {voxcyl()};
*/

// ------- Definition of Final Volume --------
voxcyl() += BooleanFragments{ Volume{v}; Delete;}{ Volume{union19()}; Delete; };
Physical Volume(0) = {voxcyl({#voxcyl()-1})}; // around the vessels
Physical Volume(1) = {voxcyl({0:#voxcyl()-2})}; // the vessels

Printf("",voxcyl()); // Just for checking

#voxcyl() gives you the number of elements in the array.

Best regards,
Ruth

—
Prof. Ruth V. Sabariego
KU Leuven
Dept. Electrical Engineering ESAT/Electa, EnergyVille
http://www.esat.kuleuven.be/electa
http://www.energyville.be

Free software: http://gmsh.info | http://getdp.info | http://onelab.info







On 7 Feb 2018, at 11:50, ISABELA PAREDES CISNEROS <iparedes1 at uc.cl<mailto:iparedes1 at uc.cl>> wrote:

Dear all,

I am trying to mesh a cube with cylindrical holes in it. Some of the holes intersect. I am using a BooleanUnion of all the cylinders and then a BooleanDifference of the cube and the cylinders. In the meshing, I get no error but the mesh on the cylinders boundary is wrong. A lot of surfaces are missing.

Do you have any idea of what am I doing wrong?

Best regards,

Isabela

P.D: I have commented some lines (10 and 113) in the GEO file to visualize the mesh over the cylinders.

<Vessels_xyz.geo><wrong_mesh.jpg>_______________________________________________
gmsh mailing list
gmsh at onelab.info<mailto:gmsh at onelab.info>
http://onelab.info/mailman/listinfo/gmsh

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://onelab.info/pipermail/gmsh/attachments/20180207/279e8f86/attachment.html>


More information about the gmsh mailing list