Sculp multiple volumes of different Sizes with conformal meshes

Hi cubit experts!

I want to sculpt a complex geometry consistng of a large volume with several smaller volumes inside, all derived from STL files. For example, if I have three volumes of different sizes, I thought a good approach would be to mesh the smaller volumes first, and then mesh the larger volume, considering the mesh at the interfaces. However, I’ve found that sculpt doesn’t seem to handle this well. I only get conformal meshes when I mesh all the volumes together at once. This works fine but I cannot smooth or refine a particular volume.

I’ve created a small example in cubit. Perhaps someone can guide me in the right direction :slight_smile:

reset
brick x .5 
create cylinder height .3 radius .05 
rotate Volume 2 angle 30  about Y include_merged 
move Volume 2 x .1 y .15 z -0.05 include_merged 
create sphere radius .12 
move Volume 3 x -.05 y -.08 z .03 include_merged 
subtract volume 2 3 from volume 1 imprint keep 
delete volume 1
volume 4 id 1

How can I mesh volumes of different sizes or apply mesh refinements while ensuring the meshes remain conformal?

Thanks!

Carlos

Hi Carlos,
have you already tried to refine the mesh with the adapt_material option?

Would this work for you?

sculpt volume all autosize 10 adapt_type 8 adapt_material 2 2 1 0.5 0 0 3 1 0.5 0 0
graphics clip on location 0 0 0 direction 0 0 -1

Hi Norbert,

Thank you for your quick reply! :slight_smile: Yes, I tried adapt_type 8. While it does the job, the mesh quality is sometimes still poor, and some volumes require refinement or surfaces need additional smoothing. I was wondering if there’s a way to target each volume individually while maintaining mesh conformity.

Carlos

There doesn’t seem to be another way with sculpt. The only thing i could find was the adapt_type 8.

If you don’t want to put much time into meshing you could of course also try to thex a tetmesh.

reset
brick x .5 
create cylinder height .3 radius .05 
rotate Volume 2 angle 30  about Y include_merged 
move Volume 2 x .1 y .15 z -0.05 include_merged 
create sphere radius .12 
move Volume 3 x -.05 y -.08 z .03 include_merged 
subtract volume 2 3 from volume 1 imprint keep 
delete volume 1
volume 4 id 1

imprint vol all
merge vol all

vol all scheme tetmesh
vol 1 size auto factor 6
vol 2 size auto factor 4
vol 3 size auto factor 5

block 1 add vol 1
block 2 add vol 2
block 3 add vol 3

mesh vol all
thex vol all

draw hex all in block 1 with x_coord>0 color green
draw block 2 color yellow add
draw block 3 color blue add

1 Like