LOAD_ELEMENT_SMOOTHING

Loads

*LOAD_ELEMENT_SMOOTHING
"Optional title"
coid
entype, enid, $t_{dec}$

Parameter definition

Variable
Description
coid
Command ID (optional)
entype
Entity type
options: P, PS, G, GS, FS, ALL
enid
Entity identification number
$t_{dec}$
Smoothing time parameter

Description

Numerical dispersion can result in spurious oscillations during extreme dynamic events. This command is used to mitigate such effects, by smoothing velocity variations inside higher order elements.

The smoothing mechanism operates by a local redistribution of momentum on element level. The local velocity of higher order nodes (non element corner nodes) is compared to the interpolated corner node velocity. Differences are damped out with a momentum redistribution scheme. The impulse applied to a higher order node $i$ is:

$\displaystyle{\Delta I_i = c \cdot m_e \cdot \left(1 - e^{-\Delta t / t_{dec}} \right) \cdot (\bar{v} - v_i)}$

Here $c$ is a dimensionless element type specific constant, $m_e$ is the element mass, $\Delta t$ is the current time step size, $\bar{v}$ is the corner node interpolated velocity at node $i$ and $v_i$ is the actual velocity of node $i$. A reaction impulse $-\Delta I_i$ is redistributed to the element corner nodes, ensuring that the total momentum balance is preserved.

Example

Smoothing to prevent spurious oscillations in dynamic impact

A rubber block is impacted by a rigid sphere. Element smoothing is applied to suppress the development of high frequency noise on element level.

*UNIT_SYSTEM SI # # --- TIME --- # *TIME 0.005 # # --- MESH --- # *COMPONENT_BOX "rubber block" 1, 1, 10, 10, 3 -0.2, -0.2, -0.12, 0.2, 0.2, 0.0 *COMPONENT_SPHERE "impactor" 2, 2, 6 0, 0, 0.04, 0.04 *CHANGE_P-ORDER ALL, 0, 3 *SMOOTH_MESH ALL, 0, 45.0 # # --- MATERIAL --- # *MAT_MOONEY_RIVLIN "rubber" 1, 1000.0, 1.0e9 1.0e6, 1.0e6 *MAT_RIGID "steel" 2, 7800.0 # # --- PART --- # *PART "rubber block" 1, 1 "impactor" 2, 2 # # --- VELOCITY --- # *INITIAL_VELOCITY "impactor" P, 2, 0, 0, -500.0 # # --- CONTACT --- # *CONTACT "all to all" 1 ALL, 0, ALL, 0, 0.0, 1.0e14 # # --- SMOOTHING --- # *LOAD_ELEMENT_SMOOTHING "rubber block" 1 P, 1, 1.0e-3 *END