Dear Baagaard,
When I tried to embed a fault into the block, a problem occurred. Before the embedding, the mesh could be generated normally, and according to the visualization plugin, I could see that I had 30 surfaces.
However, after I ran the embedding command, an error was produced.
gmsh.model.occ.fragment([(3, self.domain1)], [(2, self.s_kg)], removeTool=True)
Info : Meshing 3D...
Info : 3D Meshing 4 volumes with 1 connected component
Info : Tetrahedrizing 19998 nodes...
Info : Done tetrahedrizing 20006 nodes (Wall 0.231054s, CPU 0.203125s)
Info : Reconstructing mesh...
Info : - Creating surface mesh
Info : Found two exactly self-intersecting facets (dihedral angle 0.00000E+00).
Info : 1st: [164, 163, 19365] #37
Info : 2nd: [164, 163, 13517] #28
Error : Invalid boundary mesh (overlapping facets) on surface 37 surface 28
Traceback (most recent call last):
File "trace.py", line 305, in <module>
App().main()
File "F:\celltest\yt\gmsh_utils.py", line 110, in main
self.generate_mesh(args.cell)
File "trace.py", line 299, in generate_mesh
gmsh.model.mesh.generate(3)
File "E:\Anaconda3\envs\py37\lib\site-packages\gmsh.py", line 2164, in generate
raise Exception(logger.getLastError())
Exception: Invalid boundary mesh (overlapping facets) on surface 37 surface 28
I checked the fault surface and found that the embedded fault intersected with the block boundary. In this case, could it be because the fault surface is not smooth enough, causing mesh distortion when fitting to the surface? How can I solve this type of problem?