[Gmsh] Question on creating meshes with layered elements

Marco Antolovic marco_antolovic at yahoo.it
Thu Oct 22 12:56:28 CEST 2020


Hi all,
I'm trying to find the best way to approach the following problem:
I have a parallelepiped with the edge alone z much smaller than that along x and y (this is typical, for example, for PCB traces) and I would like to guarantee, in the volume, a predefined number of layers (np_layers) along zedge.
If I build the structure in gmsh this is quite simple to obtain by saying:
SetFactory("OpenCASCADE");thickness = 140e-6;nr_layers = 4;surf=newreg;Rectangle(surf)={.001,0,0,.001,.001,0};Extruded_surf() = Extrude { 0,0, thickness } { Surface{surf}; Layers{nr_layers}; Recombine;};
But how can I apply this in case the parallelepiped is coming from a step file? The command above(Extrude{...}{... Layers{}}) can't be used.
I was thinking about slicing the Volume with some planes (see example below)
SetFactory("OpenCASCADE");thickness = 140e-6;nr_layers = 4;surf=newreg;Rectangle(surf)={.001,0,0,.001,.001,0};Extruded_surf() = Extrude { 0,0, thickness } { Surface{surf};};vol() = Extruded_surf(1);For i In {1:nr_layers-1}surf1(i-1)=newreg;Rectangle(surf1(i-1)) = {.001, 0, thickness/nr_layers*i, .001, .001};EndForresults() = BooleanFragments{Volume{vol()};Delete;}{Surface{surf1()}; Delete;};
but when trying to recombine the triangles in the layers I get the following error:
Error   : Pyramid top vertex already classified on volume 2 (!= 3) - non-manifold quad boundaries not supportedyet
Any suggestion on how to address the issue is much appreciated.
Regards,
Marco
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://onelab.info/pipermail/gmsh/attachments/20201022/ab05d45d/attachment.html>


More information about the gmsh mailing list