BC_PERIODIC
Boundary conditions
*BC_PERIODIC
"Optional title"
coid
entype${}_1$, enid${}_1$, entype${}_2$, enid${}_2$
"Optional title"
coid
entype${}_1$, enid${}_1$, entype${}_2$, enid${}_2$
Parameter definition
Variable
Description
coid
Command ID
entype${}_1$
Entity type of Surface 1
enid${}_1$
Entity identification number of Surface 1
entype${}_2$
Entity type of Surface 2
enid${}_2$
Entity identification number of Surface 2
Description
This command is used specify periodic boundary conditions. The coupled surfaces must have the same shape and discretization (a node-to-node matching is expected).
Example
Indentations in a ring
The periodic boundary condition command can be used to model cyclic symmetry. In the example below, spherical indentors are first pushed into a metal ring and then moved horizontally. By only modelling a 30 degree slice the model size and computational time can be reduced.
#
# Model utilizing periodic BC
*UNIT_SYSTEM
SI
#
# --- PARAMETERS ---
#
*PARAMETER
ang = 30, "ring section angle"
R1 = 0.1, "ring inner radius"
R2 = 0.2, "ring outer radius"
h = 0.1, "ring height"
Ri = 0.03, "indentor radius"
ang2 = 20, "indentor position"
d = 0.025, "indentation"
tend = 0.01, "termination time"
#
# --- TIME ---
#
*TIME
[%tend]
#
# --- MESH ---
#
*COMPONENT_PIPE
"ring"
1, 1, 8, 8, 8, 0, [%ang]
0, 0, 0, 0, 0, [%h], [%R1], [%R2]
*COMPONENT_SPHERE
"indentor"
2, 2, 6
[0.5*(%R1+%R2)*cos(%ang2)], [0.5*(%R1+%R2)*sin(%ang2)], [%h+%Ri], [%Ri]
*CHANGE_P-ORDER
ALL, 0, 3
*SMOOTH_MESH
ALL, 0, 45.0
#
# --- MATERIAL ---
#
*MAT_METAL
"ring"
1, 7800.0, 210.0e9, 0.3
1
*FUNCTION
1
3.0e8 + 3.0e8*epsp^0.3
*MAT_RIGID
"indentor"
2, 7800.0
#
*PART
"ring"
1, 1
"indentor"
2, 2
#
# --- BC ---
#
*BC_PERIODIC
"ring"
1
G, 1, G, 2
*GEOMETRY_SEED_COORDINATE
"surface 1"
1
[0.5*(%R1+%R2)], 0, [0.5*%h]
*GEOMETRY_SEED_COORDINATE
"surface 2"
2
[0.5*(%R1+%R2)*cos(%ang)], 0.5*(%R1+%R2)*sin(%ang), [0.5*%h]
#
*BC_MOTION
"clamp ring base"
1
G, 3, XYZ
*GEOMETRY_BOX
3
0, 0, -0.0001, 0, 0, 0.0001
#
*BC_MOTION
"indentor"
1
P, 2, XY, XY, 0, 1
V, Z, 11
V, RZ, 22
*COORDINATE_SYSTEM_FIXED
1, 0, 0, 0
1, 0, 0, 0, 1, 0
*FUNCTION
11
-smooth_v(%d, 0, %tend/10)
*FUNCTION
22
-smooth_v(0.5*pi*(%ang-%ang2)/180, %tend/10, %tend)
#
# --- CONTACT ---
#
*CONTACT
"all to all"
1
ALL, 0, ALL, 0
*END