[Gmsh] meshing two bodies with redundant common boundary

NENNIG Benoit benoit.nennig at supmeca.fr
Tue Nov 25 16:32:58 CET 2014


Dear Gmsh users,

I am trying to mesh with coincident mesh two bodies coming from one step file (FreeCAD). For instance a shape inside a cube. You can find in attachment all the files and a capture after a 3D meshing.

The first volume is the shape and the second one is its complement with respect to the cube.

2 surfaces have identical surface mesh (3 and 12, 1 and 11) but (2 and 10) are not identical. Am I doing something wrong or is it a bug ?

Is it a parameter to check for identical surface ?
I use a trick with 'periodic surface'  but in some cases this command fails.

Regards,

Benoit
gmsh 2.8.4 - linux 64 bits


________________________________________
De : gmsh <gmsh-bounces at ace20.montefiore.ulg.ac.be> de la part de NENNIG Benoit <benoit.nennig at supmeca.fr>
Envoyé : mercredi 15 octobre 2014 11:47
À : gmsh at geuz.org
Objet : [Gmsh] meshing two bodies with redundant common boundary

Dear Gmsh users,

I am trying to mesh two bodies coming from one step file (coming from FreeCAD), like a shape inside a cube.
The first volume is the shape and the second one is its complement with respect to the cube.

I need coincident/compatible mesh on the common boundary. However, the common boundary is present twice in the step file and gmsh behavior is not clear (for me) :
- sometimes the mesh is coincident, if the boundary is made of planes
- sometimes the mesh is not coincident for some surfaces of the common boundary, but is ok for at least one surface of the common boundary

When I observed non compatible mesh I try to use :
Surf2LineM[] = Boundary { Surface{7};};
Surf2LineS[] = Boundary { Surface{23};};
Periodic Surface 23 { Surf2LineS[]}= 7 {Surf2LineM[] };

It seems to work only if I specify 'Periodic Surface' for the no coincident mesh surface, otherwise gmsh crashes.

Then I use
Coherence Mesh;
to remove the redundant mesh

Can you tell me what is the best way to impose coincident mesh on surfaces present twice ?
How to know which one of the 2 surfaces mesh is used for the volume mesh ?
Why it works for some surfaces and not all ?

Thanks,

Benoit
gmsh 2.8.4 - linux 64 bits
_______________________________________________
gmsh mailing list
gmsh at geuz.org
http://www.geuz.org/mailman/listinfo/gmsh
-------------- next part --------------
A non-text attachment was scrubbed...
Name: exemple.zip
Type: application/zip
Size: 55181 bytes
Desc: exemple.zip
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20141125/6b1a0ccc/attachment.zip>