Meshing volumes with internal planes using Hex elements

I would like to ask advice on how to mesh a volume containing an internal surface using Hex elements. This can be easily done using Tets, but I can’t get it to work using Hex elements.

Below is a figure of the model geometry. A MWE script is also attached here.

Let me know if you can help.

MWE_3D_Volume.txt (1.9 KB)


The sub-mapping algorithm does not recognize the internal surface as part of the volume. Part of this is due to the global nature of hex-meshing. You cannot perform local operations without affecting the entire mesh in some way. Tet-meshing allows for local change, and the tet-meshing example just works.

You will have to manually decompose the volume to get Cubit to recognize that surface. One possible example is shown below.



cubit.cmd(f'create surface rectangle width {faultWidth} height {faultHeigth} zplane')
cubit.cmd('rotate Surface 1 angle -60  about Y include_merged')

cubit.cmd(f'brick x {volumeLength} y {volumeLength} z {volumeLength}')

cubit.cmd('webcut volume 2  sweep surface 1  vector 1 0 0 through_all ')
cubit.cmd('imprint all')
cubit.cmd('merge all')

cubit.cmd('vol 2 scheme submap')
cubit.cmd('mesh vol 2 3')

Depending on what you are doing you may also want to delete the original internal sheet body.