Meshing brick with an inner sphere

Hello,

I am very new to Trelis. I am currently using a trial of the software to verify that it will fit into my modeling work flow.

Currently, I am experimenting with meshing a brick geometry with an inner sphere. Ultimately, I would like to apply forces to the inner sphere, observing how this affects the brick.

I have tried to create this mesh using two different methods. The first method (method1.jou) involves the simple generation of a sphere geometry inside the brick, then meshing. This seems to mesh without a problem. Nevertheless, when I attempt to model some sort of displacement on the inner sphere (using a software called Pylith), there seems to be no coupling between the inner sphere and the outer brick.

The second method (method2.jou) I have tried is a variant of the cube with a hollow sphere tutorial. In it, I am using a brick that is extended in the z direction. When I mesh this, I encounter cells with a negative jacobian. I try to amend this by using the untangle tool. This proves to be unsuccessful.

I have attached the files (as well as included the commands below). I am surely oversimplifying this problem or making false assumption. I appreciate any help.

-P

method1.jou

brick x 6000 y 6000 z 4000

sphere r 1000

volume all move x 0 y 0 z -2000

volume 1 name “wall_rock”
volume 2 name “chamber”

surface 7 name “chamber_surface”

imprint all with volume all
merge all

volume all size 1000

mesh volume all

block 1 volume 1
block 1 name “elastic”
block 2 volume 2
block 2 name “viscoelastic”

group “chamber_nodes” add node in chamber_surface
nodeset 11 group chamber_nodes
nodeset 11 name “chamber_nodes”

group “face_zneg” add node in surface 2
nodeset 12 group face_zneg
nodeset 12 name “z_neg”

group “face_zpos” add node in surface 1
nodeset 13 group face_zpos
nodeset 13 name “z_pos”


method2.jou

brick x 6000 y 6000 z 4000
sphere r 1000

volume all move x 0 y 0 z -2000
volume all size 1000

subtract volume 2 from volume 1
webcut body 1 with plane xplane offset 0
webcut body 1 with plane yplane offset 0
delete body 4 3

volume 3 scheme polyhedron
mesh volume 3
undo group begin

volume 3 smooth scheme untangle beta 0.02 cpu 10
smooth volume 3
undo group end

quality volume 3 jacobian global draw mesh
method2.jou (418 Bytes)
method1.jou (683 Bytes)

Whenever you have a volume inside of another volume, you must subtract the inner volume from the larger volume to create a void for the inner volume. Otherwise, when you mesh the two volumes the meshes will overlap each other. Here is how you might handle the first case.

reset
brick x 6000 y 6000 z 4000
sphere r 1000
##Coreform
subtract vol 2 from vol 1 keep_tool
webcut volume all with plane xplane
webcut volume all with plane yplane
webcut volume all with plane zplane
del vol all except 16 17
vol all scheme poly
imprint all
merge all
mesh vol all
Volume all copy reflect x
Volume all copy reflect y
Volume all copy reflect z

group “chamber_surface” add Surface 184 144 128 174 204 164 154 194

block 1 vol 17 19 27 25 29 31 23 21
block 1 name “elastic”
block 2 vol 16 28 24 30 26 18 22 20
block 2 name “viscoelastic”

If you put the volumes that make up the brick in a block and the sphere volumes in another block you can export the meshes of the volumes as a part, one for the brick and one for the sphere.