[Gmsh] Intersection between 2 tetrahedral meshes

Patrick Farrell patrick.farrell at maths.ox.ac.uk
Sat Dec 15 16:08:19 CET 2018

On 15/12/18 13:42, Octavio Castillo Reyes wrote:
> I'm trying to build a tetrahedral mesh from 2 meshes with a complex vertical surface. I have managed to build the meshes independently, however, I have no idea how to do the intersection operation between them.
> My final goal is to build a mesh where both materials can be identified (please see the attached image). Can you provide me with details and tips to face my problem? Which could be the best strategy?

Dear Octavio,

I _think_ what you're looking for is a supermesh. Given two input meshes A and
B, a supermesh C has the property that every element of C is entirely contained
within exactly one element of A and one element of B.

If that is what you're looking for, you could read about algorithms for
constructing supermeshes in


and we have an open source implementation available at


I don't believe libsupermesh currently has a binary that reads in two gmsh
meshes and saves the output as a gmsh mesh, although it could be done without
too much trouble. Alternatively, gmsh could link against libsupermesh, or it
could reimplement the algorithms (they're not too hard, certainly not as
complex as things already in gmsh).

Hope this helps,


More information about the gmsh mailing list