Copy mesh from circular face

Hi everybody,
I just started working with cubit, so I hope my question is not a stupid one.
I have a brick with two spherical inclusions with their center points on opposite brick surfaces (actually just one particle in a periodic environment).
Now I want to generate a periodic mesh, for which I first mesh one surface of the brick (with the circular particle surface on it), and copy this mesh to the other side. Unfortunately, the mesh copied is by now means periodic, probably because the circular face has only one curve, and I cannot define a proper direction.
You can see the result, when you run the following commands:

reset
brick x 10
create sphere radius 3
create sphere radius 3
move volume 2 x 5 include_merged
move volume 3 x -5 include_merged
intersect volume 1 2 keep
intersect volume 1 3 keep
delete volume 2 3
remove overlap volume 1 4 modify volume 1
remove overlap volume 1 5 modify volume 1
imprint volume 1 4 5
merge volume 1 4 5
surface 16 9 11 20 scheme trimesh
surface 11 20 size 1
surface 11 20 size 1
mesh surface 11 20
copy mesh surface 11 onto surface 9 source curve 14 source vertex 10 target curve 13 target vertex 9 smooth
copy mesh surface 20 onto surface 16 source curve 11 source vertex 8 target curve 12 target vertex 5 smooth

I know that one solution (I would rather call it a workaround) is to divide the sphere in half-spheres. Then the meshing direction is properly defined. But since my original model is much larger (hundreds of particles) I would like to skip this procedure.
Can anybody show me a simple method to create a periodic mesh?
Thanks
Ingo

Hi Ingo,

Welcome to the forum!

The problem arises because the sphere vertices are mirrored. When you copy the mesh, the mesh also gets mirrored. Note that vertex 9 and 10 are on opposite sides of the XY plane.

image

I fixed this by splitting the sphere curves. You probably don’t need to do this on both curves, but I liked keeping the symmetry. I used the curve in volume syntax just to demonstrate capability and to reduce picking.

I changed a couple of other minor things in your script.

  1. Remember the keyword all. It can dramatically reduce the amount of picking required.
  2. Because the geometry is merged, I can use the same source and target curve and vertex in the copy command.
  3. I removed the smooth keyword from the copy mesh command. We want to keep the mesh the same and not perform any additional optimizations on node positions.
reset
brick x 10
create sphere radius 3
create sphere radius 3
move volume 2 x 5 include_merged
move volume 3 x -5 include_merged
intersect volume 1 2 keep
intersect volume 1 3 keep
delete volume 2 3
remove overlap volume 1 4 modify volume 1
remove overlap volume 1 5 modify volume 1
split curve in volume 4 fraction 0.5     # new command
split curve in volume 5 fraction 0.5     # new command
imprint volume all
merge volume all
surface 16 9 11 20 scheme trimesh
surface 11 20 size 1
surface 11 20 size 1
mesh surface 11 20
copy mesh surface 11 onto surface 9 source curve 21 source vertex 10 target curve 19 target vertex 15
copy mesh surface 20 onto surface 16 source curve 21 source vertex 10 target curve 19 target vertex 15

Here is the view from the +X axis (keyboard shortcut F11) in transparent mode. All the edges are aligned front to back.
image

Thanks,
Karl

Dear Karl,
Thank you very much. This solves my problem in a simple way.
Best regards
Ingo