/MAT/LAW108 (SPR_GENE)
Block Format Keyword This spring material works with six independent modes of deformation and accounts for nonlinear stiffness, damping and different unloading.
Deformation, force and energybased failure criteria are available. The general spring material is often used to model a joint connection between two parts. This material must be assigned to a /PART that references the spring property /PROP/TYPE23 (SPR_MAT).
Format
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

/MAT/LAW108/mat_ID/unit_ID or /MAT/SPR_GENE/mat_ID/unit_ID  
mat_title  
$\rho $  
I_{fail}  I_{equil}  I_{fail2} 
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

K_{1}  C_{1}  A_{1}  B_{1}  D_{1}  
fct_ID_{11}  H_{1}  fct_ID_{21}  fct_ID_{31}  fct_ID_{41}  ${\delta}_{\text{min}}^{1}$  ${\delta}_{\text{max}}^{2}$  
F_{1}  E_{1}  Ascale_{1}  Hscale_{1} 
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

K_{2}  C_{2}  A_{2}  B_{2}  D_{2}  
fct_ID_{12}  H_{2}  fct_ID_{22}  fct_ID_{32}  fct_ID_{42}  ${\delta}_{\text{min}}^{2}$  ${\delta}_{\text{max}}^{2}$  
F_{2}  E_{2}  Ascale_{2}  Hscale_{2} 
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

K_{3}  C_{3}  A_{3}  B_{3}  D_{3}  
fct_ID_{13}  H_{3}  fct_ID_{23}  fct_ID_{33}  fct_ID_{43}  ${\delta}_{\text{min}}^{3}$  ${\delta}_{\text{max}}^{3}$  
F_{3}  E_{3}  Ascale_{3}  Hscale_{3} 
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

K_{4}  C_{4}  A_{4}  B_{4}  D_{4}  
fct_ID_{14}  H_{4}  fct_ID_{24}  fct_ID_{34}  fct_ID_{44}  ${\theta}_{\text{min}}^{4}$  ${\theta}_{\text{max}}^{4}$  
F_{4}  E_{4}  Ascale_{4}  Hscale_{4} 
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

K_{5}  C_{5}  A_{5}  B_{5}  D_{5}  
fct_ID_{15}  H_{5}  fct_ID_{25}  fct_ID_{35}  fct_ID_{45}  ${\theta}_{\text{min}}^{5}$  ${\theta}_{\text{max}}^{5}$  
F_{5}  E_{5}  Ascale_{5}  Hscale_{5} 
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

K_{6}  C_{6}  A_{6}  B_{6}  D_{6}  
fct_ID_{16}  H_{6}  fct_ID_{26}  fct_ID_{36}  fct_ID_{46}  ${\theta}_{\text{min}}^{6}$  ${\theta}_{\text{max}}^{6}$  
F_{6}  E_{6}  Ascale_{6}  Hscale_{6} 
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

F_{smooth}  F_{cut} 
Definition
Field  Contents  SI Unit Example 

prop_ID  Material
identifier. (Integer, maximum 10 digits) 

unit_ID  Unit Identifier. (Integer, maximum 10 digits) 

prop_title  Material
title. (Character, maximum 100 characters) 

$\rho $  Density. (Real) 
$\left[\frac{\text{kg}}{{\text{m}}^{\text{3}}}\right]$ 
I_{fail}  Failure criteria.
(Integer) 

I_{equil}  Equilibrium flag.
5
6
(Integer) 

I_{fail2}  Failure model flag.
(Integer) 

K_{i}  If
$fct\_I{D}_{\text{}1i}=0$
: Linear loading and unloading
stiffness. If $fct\_I{D}_{\text{}1i}\ne 0$ : Only used as unloading stiffness for elastoplastic springs. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF (Real) 
$\left[\frac{\text{N}}{\text{m}}\right]$
for
$i$
=1, 2,
3 $\left[\frac{\text{Nm}}{\text{rad}}\right]$ for $i$ =4, 5, 6 
C_{i}  Damping. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF (Real) 
$\left[\frac{\mathrm{N}\mathrm{s}}{\mathrm{m}}\right]$
for
$i$
=1, 2, 3
$\left[\frac{\text{Nms}}{\text{rad}}\right]$ for $i$ =4, 5, 6 
A_{i}  Nonlinear stiffness
function scale factor. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF Default = 1.0 (Real) 
$\left[\text{N}\right]$
for
$i$
=1, 2,
3 $\left[\text{Nm}\right]$ for $i$ =4, 5, 6 
B_{i}  Logarithmic rate
effects scale factor. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF Default = 0.0 (Real) 
$\left[\text{N}\right]$
for
$i$
=1, 2,
3 $\left[\text{Nm}\right]$ for $i$ =4, 5, 6 
D_{i}  Logarithmic rate
effects scale factor. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF Default = 1.0 (Real) 
$\left[\frac{\text{m}}{\text{s}}\right]$
for
$i$
=1, 2,
3 $\left[\frac{\text{rad}}{\text{s}}\right]$ for $i$ =4, 5, 6 
fct_ID_{1i}  Function identifier
defining nonlinear stiffness
$\mathrm{f}\left(\right)$
. 7
If H_{1} = 4: Function identifier defining upper yield curve. If H_{1} = 8: Function is mandatory and defines the force or moment versus spring length. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF (Integer) 

H_{i}  Nonlinear Spring Hardening flag
for nonlinear spring.
$i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF (Integer) 

fct_ID_{2i}  Function identifier
defining force or moment as a function of spring velocity
$\mathrm{g}\left(\right)$
. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF (Integer) 

fct_ID_{3i}  Function identifier. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF If H_{1} = 4: Defines lower yield curve. If H_{1} = 5: Defines residual displacement or rotation versus maximum displacement or rotation. If H_{1}= 6: Defines nonlinear unloading curve. If H_{1}= 7: Defines nonlinear unloading curve. (Integer) 

fct_ID_{4i}  Function identifier
for nonlinear damping
$\mathrm{h}\left(\right)$
. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF (Integer) 

${\delta}_{\mathrm{min}}^{i}$  Negative translation
failure limit. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF Default = 10^{30} (Real) 

If I_{fail2}=0: Failure displacement  $\left[\text{m}\right]$  
If I_{fail2}=1: Failure force  $\left[\text{N}\right]$  
If I_{fail2}=2: Failure internal energy  $\left[\text{J}\right]$  
${\theta}_{\mathrm{min}}^{i}$  Negative rotational
failure limit. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF Default = 10^{30} (Real) 

If I_{fail2}=0: Failure rotation  $\left[\text{rad}\right]$  
If I_{fail2}=1: Failure moment  $\left[\mathrm{N}\cdot \mathrm{m}\right]$  
If I_{fail2}=2: Failure internal energy  $\left[\text{J}\right]$  
${\delta}_{\mathrm{max}}^{i}$  Positive transition
failure limit. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF Default = 10^{30} (Real) 

If I_{fail2}=0: Failure displacement  $\left[\text{m}\right]$  
If I_{fail2}=1: Failure force  $\left[\text{N}\right]$  
If I_{fail2}=2: Failure internal energy  $\left[\text{J}\right]$  
${\theta}_{\mathrm{max}}^{i}$  Positive rotational
failure limit. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF Default = 10^{30} (Real) 

If I_{fail2}=0: Failure rotation  $\left[\text{rad}\right]$  
If I_{fail2}=1: Failure moment  $\left[\mathrm{N}\cdot \mathrm{m}\right]$  
If I_{fail2}=2: Failure internal energy  $\left[\text{J}\right]$  
F_{i}  Abscissa scale factor
for the damping functions for the
$g$
and
$h$
. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF Default = 1.0 (Real) 
$\left[\frac{\text{m}}{\text{s}}\right]$
for
$i$
=1, 2,
3 $\left[\frac{\text{rad}}{\text{s}}\right]$ for $i$ =4, 5, 6 
E_{i}  Ordinate scale factor
for the damping function
$g$
. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF (Real) 
$\left[\text{N}\right]$
for
$i$
=1, 2,
3 $\left[\text{Nm}\right]$ for $i$ =4, 5, 6 
Ascale_{i}  Abscissa scale factor
for the stiffness function
$f$
. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF Default = 1.0 (Real) 
$\left[\text{m}\right]$
for
$i$
=1, 2,
3 $\left[\text{rad}\right]$ for $i$ =4, 5, 6 
Hscale_{i}  Ordinate Scale factor
for the damping function
$h$
. $i$ =1, 2, 3 are translation DOF $i$ =4, 5, 6 are rotation DOF Default = 1.0 (Real) 
$\left[\text{N}\right]$
for
$i$
=1, 2,
3 $\left[\text{Nm}\right]$ for $i$ =4, 5, 6 
F_{smooth}  Smooth strain rate flag.
(Integer) 

F_{cut}  Strain rate cutting
frequency. Default = 10^{30} (Real) 
$\text{[Hz]}$ 
Example (Spotweld  No Rupture)
#RADIOSS STARTER
#12345678910
# 1. LOCAL_UNIT_SYSTEm:
#12345678910
/UNIT/2
units for material and property
kg mm ms
#12345678910
#12345678910
/PROP/TYPE23/6680004/2
SPOTWELD_NO_RUPTURE
# Imass Area Inertia skew_ID sens_ID Isflag
2 8E+3 .002 0 0 0
/MAT/LAW108/6680004/2
TYPE8
# Density
1E6
# Ifail Iequil Ifail2
0
# KTens CTens ATens BTens DTens
1.8 0 0 0 0
# fct_ID1 HTens fct_ID2 fct_ID3 fct_ID4 delta_minTens delta_maxTens
0 0 0 0 0 0
# F E Ascale Hscalex
0 0 0 0
# KTens CTens ATens BTens DTens
.3 0 0 0 0
# fct_ID1 HTens fct_ID2 fct_ID3 fct_ID4 delta_minTens delta_maxTens
0 0 0 0 0 0
# F E Ascale Hscalex
0 0 0 0
# KTens CTens ATens BTens DTens
1.8 0 0 0 0
# fct_ID1 HTens fct_ID2 fct_ID3 fct_ID4 delta_minTens delta_maxTens
0 0 0 0 0 0
# F E Ascale Hscalex
0 0 0 0
# K C A B D
114.649681528662 0 0 0 0
# N1 H N2 N3 N4 theta_min theta_max
0 0 0 0 0 0
# F E Ascale Hscalex
0 0 0 0
# K C A B D
114.649681528662 0 0 0 0
# N1 H N2 N3 N4 theta_min theta_max
0 0 0 0 0 0
# F E Ascale Hscalex
0 0 0 0
# K C A B D
114.649681528662 0 0 0 0
# N1 H N2 N3 N4 theta_min theta_max
0 0 0 0 0 0
# F E Ascale Hscalex
# ISTRAT ASTRAT
0 0
#enddata
Comments
 When used with /PROP/TYPE23 (SPR_MAT), this material law has the same behavior as spring property /PROP/TYPE8 (SPR_GENE); except that in this material the mass is calculated from the density and volume, or density, area and length.
 Inputs repeated for
each degree of freedom (DOF)
$i$
are defined with the following directions:
 $i$ =1: tension/compression
 $i$ =2: shear xy
 $i$ =3: shear xz
 $i$ =4: torsion
 $i$ =5: bending y
 $i$ =6: bending z
 This spring should only be used when the spring has zero initial length or when one of the spring nodes is constrained in all directions. For other situations, the equilibrium is insured for forces, but not for moments. Thus, the moment calculation can be incorrect. If the initial spring length is not zero, use /PROP/TYPE13 (SPR_BEAM) or /MAT/LAW113 (SPR_BEAM).
 The spring has six DOF ${\delta}^{1},{\delta}^{2},{\delta}^{3},{\theta}^{4},{\theta}^{5},{\theta}^{6}$ computed in a local coordinate system. The local system can be defined for each element using /SPRING Skew_ID. If Skew_ID is not defined for each element, the local system defined in the /PROP/TYPE23 (SPR_MAT) Skew_ID is used. If a system is not defined in the element or property, then the global system is used.
 The sign (tension or compression) of the spring force depends on the relative displacement of Node N2 with respect to Node N1. If the movement of node N2 relative to node N1 is in the positive direction of the spring system, then the spring is in tension. If the movement of node N2 relative to node N1 is in the negative direction of the spring system, then the spring is in compression.
 If I_{equil} = 0 (no equilibrium),
then:$$\text{f}\left(\theta \right)={M}_{2y}={M}_{1y}$$
${M}_{2y}$ is moment in $Y$ by N_{2}
${M}_{1y}$ is moment in $Y$ by N_{1}
If I_{equil} = 1 (force and moment equilibrium), then:$${M}_{1y}\ne {M}_{2y}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}{M}_{1z}\ne {M}_{2z}$$$$\text{f}\left(\theta \right)=\frac{{M}_{2y}{M}_{1y}}{2}$$${M}_{2y}$ is moment in $Y$ by N_{2}
${M}_{1y}$ is moment in $Y$ by N_{1}
${M}_{2z}$ is moment in $Z$ by N_{2}
${M}_{1z}$ is moment in $Z$ by N_{1}
 Force and moment
computation.

$\delta $
is a translational DOF, the force in
direction
$\delta $
is computed as:
$\mathrm{F}\left(\delta \right)=\mathrm{f}\left(\frac{{\delta}^{i}}{Ascal{e}_{i}}\right)\left[{A}_{i}+{B}_{i}\mathrm{ln}\left\frac{{\dot{\delta}}^{i}}{{D}_{i}}\right+{E}_{i}\mathrm{g}\left(\frac{{\dot{\delta}}^{i}}{{F}_{i}}\right)\right]+{C}_{i}{\dot{\delta}}^{i}+Hscal{e}_{i}\mathrm{h}\left(\frac{{\dot{\delta}}^{i}}{{F}_{i}}\right)$ with $i$ =1,2,3

$\theta $
is a rotational DOF, the moment is
computed as:
$\mathrm{M}\left(\theta \right)=\mathrm{f}\left(\frac{{\theta}^{i}}{Ascal{e}_{i}}\right)\left[{A}_{i}+{B}_{i}\mathrm{ln}\left\frac{{\dot{\theta}}^{i}}{{D}_{i}}\right+{E}_{i}\mathrm{g}\left(\frac{{\dot{\theta}}^{i}}{{F}_{i}}\right)\right]+{C}_{i}{\dot{\theta}}^{i}+Hscal{e}_{i}\mathrm{h}\left(\frac{{\dot{\theta}}^{i}}{{F}_{i}}\right)$ with $i$ =4,5,6
Where, ${\delta}^{i}$ (with ${l}_{0}<{\delta}^{i}<+\infty $ ) is the difference between the current length $l$ and the initial length ${l}_{0}$ of the spring element for corresponding translational DOF.
 ${\theta}^{i}$ is the relative angle for corresponding rotational DOF in radians.
 For linear springs, $\mathrm{f}\left(\delta \right),\text{\hspace{0.17em}}\text{\hspace{0.33em}}\mathrm{g}\left(\dot{\delta}\right),\text{\hspace{0.33em}}\mathrm{h}\left(\dot{\delta}\right)$ and $k\left(\delta \right)\cdot \left(\mathrm{f}\left(\theta \right),\text{\hspace{0.33em}}\mathrm{g}\left(\dot{\theta}\right)\text{\hspace{0.33em}},\mathrm{h}\left(\dot{\theta}\right)\text{\hspace{0.05em}}\text{\hspace{0.33em}}\text{and}\text{\hspace{0.33em}}k\left(\theta \right)\right)$ are zero functions and ${A}_{i}$ , ${B}_{i}$ , ${E}_{i}$ and $Hscal{e}_{i}$ are not taken into account.
 If stiffness function $\mathrm{f}\left(\delta \right)$ or $\mathrm{f}\left(\theta \right)$ is requested, then $K$ is used as a slope for unloading only.
 If $K$ is lower than the maximum slop of function $\mathrm{f}\left(\delta \right)$ or $\mathrm{f}\left(\theta \right)$ ( $K$ is not consistent with the maximum slope of the curve), $K$ is set to the maximum slope of the curve.

$\delta $
is a translational DOF, the force in
direction
$\delta $
is computed as:
 Note that material density and inertia in /PROP/TYPE23
must not be null to ensure that the nodes connected by such a spring get a
nonzero mass and inertia, unless they are secondary nodes of a rigid body,
in which case unrealistically high stiffness and damping values are
avoided.
If the nodes connected by such a spring get a zero mass and inertia, they can still be secondary nodes of a rigid body, except for rigid bodies activated by a sensor. The rigid body cannot be set to OFF in the Radioss Engine.
It is not possible to use elementary time step for springs with null density or null inertia in the model. Nodal Time Step or Advanced Mass Scaling must be used. If control time step is not set to Nodal Time Step, neither Advanced Mass Scaling in the Radioss Engine nor Nodal Time Step will be turned ON automatically.