Meshing error: no side traversal

Dear all,

I am trying to mesh many small cube structures attached to a big cube.
I did “imprint volume 1 to 105 with volume 106”
And then “merge all, compress all”

However, when `I want to mesh the volume 106, there’s the error as follows:

ERROR: Logical connection error for surface -1: no side traversal.

ERROR: SweepTool::problem meshing source surface 641

ERROR: Volume 106 meshing unsuccessful using scheme: sweep

ERROR: 1 volume did not mesh : Volume 106

Although some entities failed to mesh, Cubit will log the command in the journal file anyway, for future use.

Finished Command: mesh volume 106


Does anyone knows how to solve the issue?

Thank you very much!

Hi @sul_geo,
can you share the geometry that you want to mesh?

history.jou (33.1 KB)

Dear @Norbert_Hofbauer ,

In the attachment is the file of geometry I would like to mesh.

When I have less cube (such as 8), I could successfully mesh the geometry. But I failed to do it again with more cubes as this case.

Thank you.

Hi @sul_geo,

when the submap scheme fails you could try to use the pave scheme for the surface where the small volumes are merged.

Surface 106 scheme pave
mesh surface 106
mesh vol all

I saw that your small volumes are all of the same size. Instead of creating a long journal you could also use the python mode to script the geometry creation and meshing.

#!cubit
reset

#!python
# create base bricks
x_1 = 500
y_1 = 500
z_1 = 12
x_2 = 20
y_2 = 20
z_2 = 30
cubit.cmd(f"create brick x {x_1} y {y_1} z {z_1}")
cubit.cmd(f"create brick x {x_2} y {y_2} z {z_2}")

# create coordinates for copying
coordinates = []
start = [-125,-125,(z_1+z_2)/2]
delta_x = 25
delta_y = 25
n = 10
m = 10

for i in range(n):
 for ii in range(m):
  position = []
  position.append(start[0]+i*delta_x)
  position.append(start[1]+ii*delta_y)
  position.append(start[2])
  coordinates.append(position)

for coord in coordinates:
 cubit.cmd(f"volume 2 copy move x {coord[0]} y {coord[1]} z {coord[2]}")

print("finished")

#!cubit
delete vol 2

imprint vol all
merge vol all

vol all size 4
#!python
cubit.cmd(f"surface all in volume 1 with z_coord = {z_1/2} scheme pave")
cubit.cmd(f"mesh surface all in volume 1 with z_coord = {z_1/2}")
#!cubit
mesh vol all