Could not recover boundary mesh: error 2
Hello,
I'm trying to generate a 3D mesh, but I face the error Could not recover boundary mesh: error 2
. I have tried mesh.ToleranceInitialDelaunay=1e-12
as you suggested in another issue, but it still doesn't work. Can you please let me know how I can solve this issue?
Thanks in advance!
l =1
h = 0.1
lcar = h/5
gmsh.initialize()
gmsh.clear()
model = gmsh.model
occ = model.occ
p1 = occ.addPoint(0, 0, l, lcar)
p2 = occ.addPoint(0, 0, -l, lcar)
p3 = occ.addPoint(l, 0, 0, lcar)
p4 = occ.addPoint(0, -l, 0, lcar)
p5 = occ.addPoint(-l, 0, 0, lcar)
p6 = occ.addPoint(0, l, 0, lcar)
s1 = occ.addPlaneSurface([occ.addCurveLoop([occ.addLine(p1, p3), occ.addLine(p3, p6), occ.addLine(p6, p1)])])
s2 = occ.addPlaneSurface([occ.addCurveLoop([occ.addLine(p1, p6), occ.addLine(p6, p5), occ.addLine(p5, p1)])])
s3 = occ.addPlaneSurface([occ.addCurveLoop([occ.addLine(p1, p5), occ.addLine(p5, p4), occ.addLine(p4, p1)])])
s4 = occ.addPlaneSurface([occ.addCurveLoop([occ.addLine(p1, p4), occ.addLine(p4, p3), occ.addLine(p3, p1)])])
s5 = occ.addPlaneSurface([occ.addCurveLoop([occ.addLine(p3, p6), occ.addLine(p3, p2), occ.addLine(p2, p6)])])
s6 = occ.addPlaneSurface([occ.addCurveLoop([occ.addLine(p5, p6), occ.addLine(p6, p3), occ.addLine(p3, p5)])])
s7 = occ.addPlaneSurface([occ.addCurveLoop([occ.addLine(p4, p5), occ.addLine(p5, p2), occ.addLine(p2, p4)])])
s8 = occ.addPlaneSurface([occ.addCurveLoop([occ.addLine(p4, p3), occ.addLine(p3, p2), occ.addLine(p2, p4)])])
occ.addVolume([occ.addSurfaceLoop([s1, s2, s3, s4, s5, s6, s7, s8])], 100)
occ.synchronize()
model.mesh.ToleranceInitialDelaunay=1e-12
model.mesh.generate()