"Optional title"
coid
entype, enid, mapid, csysid, $t_{map}$, i${}_x$, i${}_y$, i${}_z$, $sf$
$x_0$, $y_0$, $z_0$, $x_1$, $y_1$, $z_1$
Parameter definition
Variable | Description |
---|---|
coid | Command ID |
entype | Entity type |
enid | ID of entity to which data will be mapped |
mapid | ID of map containing damage values |
csysid | Optional local coordinate system ID |
$t_{map}$ | Activation time |
i${}_x$, i${}_y$, i${}_z$ | Optional impulse vector that will be distributed inside the damaged region |
$sf$ | Optional damage scale factor |
$x_0$ | Mapping domain minimum x-coordinate |
$y_0$ | Mapping domain minimum y-coordinate |
$z_0$ | Mapping domain minimum z-coordinate |
$x_1$ | Mapping domain maximum x-coordinate |
$y_1$ | Mapping domain maximum y-coordinate |
$z_1$ | Mapping domain maximum z-coordinate |
Description
This command is used in combination with OUTPUT_DAMAGE_MAP. The command takes the damage field that has been stored in the ASCII file damage_map1.k from the previous simulation and projects it on the new model. The file needs to be included to the model and correct map ID must be assigned.
Typical use is in multi-step blast and fragment loading simulations. The fragment loading requires a fine mesh and is of short duration. On the contrary a blast loading simulation requires longer simulation time but the mesh can be relatively coarse. Thus, a combined fragment and blast loading simulation would be computationally expensive (many elements and small time steps are required). However, if separated, a significant speed up can be achived by mapping the result from a local fragment impact simulation to a global blast loading model.
Example
Blast loaded concrete slab with initial damage from fragment impacts
A global model of a blast loaded concrete slab. The local fragment impact simulation (step 1) can be found under examples in OUTPUT_DAMAGE_MAP. The damage is mapped to the global model and repeated at 20 random locations.


SI
*PARAMETER
%N_impact = 20, "number of fragment impacts"
%m_tnt = 5, "charge mass"
%soff = 1.0, "stand-off distance"
#
# --- TIME and OUTPUT ---
#
*TIME
0.01
#
# --- MESH ---
#
*COMPONENT_BOX
"slab"
1, 1, 150, 150, 15
-1.0, -1.0, -0.2, 1.0, 1.0, 0.0
*COMPONENT_PIPE
"support"
2, 2, 1, 40, 5
0, 0, -0.25, 0, 0, -0.2, 1.0, 1.2
#
# --- MATERIAL ---
#
*MAT_HJC_CONCRETE
"concrete"
1, 2310.0, 14.86e9
0.79, 1.60, 0.61, 0.007, 50.5e6, 4.0e6, 1.0, 0.01
7.0, 16.0e6, 0.001, 800.0e6, 0.10, 0.04, 1.0, 85.0e9
-171.0e9, 208.0e9, 0
*MAT_RIGID
2, 7800.0
#
# --- PART ---
#
*PART
"slab"
1, 1, 0, 0, 0, 0, 2.0, 2.0
"support"
2, 2
#
# --- BC ---
#
*BC_MOTION
"support"
2
P, 2, XYZ, XYZ
#
# --- CONTACT ---
#
*CONTACT
"all to all"
1
ALL, 0, ALL, 0
#
# --- BLAST LOAD ---
#
*LOAD_AIR_BLAST
1
P, 1, [%m_tnt], 0, 0, [%soff]
1
#
# --- DAMAGE MAP ---
#
*INCLUDE
../step_1/damage_map1.k
~repeat %N_impact
*PARAMETER
%x0 = -0.8 + 1.6*rnd
%y0 = -0.8 + 1.6*rnd
*COORDINATE_SYSTEM_FIXED
[r1], [%x0], [%y0], 0.0
1, 0, 0, 0, 1, 0
*INITIAL_DAMAGE_MAP
"impact [r1]"
1
P, 1, 1, [r1]
-0.1, -0.1, -0.2, 0.1, 0.1, 0.0
~end_repeat
*END
Fragment loaded concrete slab with time offset and impulses
In this example, $t_{map}$ is being used to set a time offset at which the damage will be inflicted to the model. Also impulses are applied with parameter i${}_x$, i${}_y$ and i${}_z$.

SI
*PARAMETER
%N_impact = 20, "number of fragment impacts"
%m_tnt = 5, "charge mass"
%soff = 1.0, "stand-off distance"
#
# --- TIME and OUTPUT ---
#
*TIME
0.001
#
# --- MESH ---
#
*COMPONENT_BOX
"slab"
1, 1, 150, 150, 15
-1.0, -1.0, -0.2, 1.0, 1.0, 0.0
*COMPONENT_PIPE
"support"
2, 2, 1, 40, 5
0, 0, -0.25, 0, 0, -0.2, 1.0, 1.2
#
# --- MATERIAL ---
#
*MAT_HJC_CONCRETE
"concrete"
1, 2310.0, 14.86e9
0.79, 1.60, 0.61, 0.007, 50.5e6, 4.0e6, 1.0, 0.01
7.0, 16.0e6, 0.001, 800.0e6, 0.10, 0.04, 1.0, 85.0e9
-171.0e9, 208.0e9, 0
*MAT_RIGID
2, 7800.0
#
# --- PART ---
#
*PART
"slab"
1, 1, 0, 0, 0, 0, 2.0, 2.0
"support"
2, 2
#
# --- BC ---
#
*BC_MOTION
"support"
2
P, 2, XYZ, XYZ
#
# --- CONTACT ---
#
*CONTACT
"all to all"
1
ALL, 0, ALL, 0
#
# --- DAMAGE MAP ---
#
*INCLUDE
../step_1/damage_map1.k
~repeat %N_impact
*PARAMETER
%x0 = -0.8 + 1.6*rnd
%y0 = -0.8 + 1.6*rnd
%toff = (r1-1) * 1.0e-5
*COORDINATE_SYSTEM_FIXED
[r1], [%x0], [%y0], 0.0
1, 0, 0, 0, 1, 0
*INITIAL_DAMAGE_MAP
"impact [r1]"
1
P, 1, 1, [r1], [%toff], 0, 0, -100
-0.1, -0.1, -0.2, 0.1, 0.1, 0.0
~end_repeat
*END