I took care to mark the fault edges and exclude the curve intersecting two layers (the red dashed line in the figure). But PyLith doesn’t seem to like it and failed to initialize the fault. Attached are the meshing script and cfg files.
debug.zip (6.6 MB)
Would it be possible to mesh this kind of geometry in 3-D? What should I do with my GMSH script?
What fault edges are you marking (can you label them in your diagram). I do not understand what you mean by “exclude the cuve intersecting the two layers”? The fault doesn’t care about the boundary between the two layers. In Gmsh, I would embed the fault in each of the volumes as demonstrated in the crustal-strikeslip-3d example .
I marked the fault edges shown as the solid red lines and excluded the dashed line. In the attached script, I did it manually. Later I realized I could just use gmsh.model.getBoundary and set combined=True.
Anyway, indeed the fault can be meshed this way. The bug is probably from the coarse nodes used to construct the B-spline surface. A node was incorrectly left out of the surface. And the tetrahedron is inverted because of that. The GMSH gives this warning: “Entity 73 not found in the Brep of entity 17.” The code attached can reproduce this. If anyone has a more precise answer, it would be very much appreciated.