/PROP/TYPE45 (KJOINT2)
Block Format Keyword KJOINT2 is a penalty connection used to model joint connections between rigid or deformable bodies.
Format
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

/PROP/TYPE45/prop_ID/unit_ID or /PROP/KJOINT2/prop_ID/unit_ID  
prop_title  
Type  K_{n}  ScF  Cr  sens_ID  Skew_ID_{1}  Skew_ID_{2} 
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

K_{ti}  fct_K_{ti}  SD_{i}  SD_{i+}  Icomb_t_{i}  
C_{t}  fct_C_{ti}  
K_{fxi}  FF_{i}  fct_FF_{i} 
(1)  (2)  (3)  (4)  (5)  (6)  (7)  (8)  (9)  (10) 

K_{ri}  fct_K_{ri}  SA_{i}  SA_{i+}  Icomb_r_{i}  
C_{ri}  fct_C_{ri}  
K_{fri}  FM_{i}  fct_FM_{i} 
Definitions
Field  Contents  SI Unit Example 

prop_ID  Property
identifier. (Integer, maximum 10 digits) 

unit_ID  (Optional) Unit Identifier. (Integer, maximum 10 digits) 

prop_title  Property
title. (Character, maximum 100 characters) 

Type  Joint type (Joint Types List).
(Integer) 

K_{n}  Stiffness for blocked DOF.
4
Default = 0.0 (Real) 
$\left[\frac{\text{N}}{\text{m}}\right]$ 
ScF  Scale factor for
K_{n}. 4 If K_{n} = 0: Scale factor on both translational and rotational stiffness. Default = 1.0 (Real) If K_{n} > 0: Scale factor on only the rotational stiffness. Default = 10.0 (Real) 

Cr  Critical damping factor.
4 Default = 0.05 (Real) 

sens_ID  Sensor identifier. 3 (Integer) 

Skew_ID_{1}  First skew system identifier . 4 (Integer) 

Skew_ID_{2}  Second skew
system identifier. 4
(Integer) 

K_{ti}  Translational stiffness of
nonblocked DOF. 4 If fct_K_{ti} = 0: Constant translational stiffness value. If fct_K_{ti} > 0: Translational stiffness scale factor. Default =1.0 (Real) 
$\left[\frac{\text{N}}{\text{m}}\right]$ or $\left[\text{N}\right]$ 
fct_K_{ti}  Translational force versus
displacement function identifier of nonblocked
DOF. (Integer) 

SDi, SD_{i+}  Negative and Positive
stopping displacement. 8 Default = 0.0 (Real) 
$\left[\text{m}\right]$ 
C_{ti}  Translational viscosity
coefficient of nonblocked DOF. 4 If fct_C_{ti} = 0: Constant translational viscosity. If fct_C_{ti} > 0: Translational viscosity scale factor. Default = 1.0 (Real) 
$\left[\frac{\text{Ns}}{\text{m}}\right]$ or $\left[\text{N}\right]$ 
fct_C_{ti}  Translational viscous
force versus displacement rate function
identifier. (Integer) 

K_{fti}  Elastic stiffness for
friction and stop displacement. 5 Default = 0.0 (Real) 
$\left[\frac{\text{N}}{\text{m}}\right]$ 
FF_{i}  Frictional force value.
5
Default = 0.0 (Real) 
$\left[\text{N}\right]$ 
fct_FF_{i}  Frictional force versus
displacement function identifier. (Integer) 

Icomb_t_{i}  Combining stop
displacements flag. 10
(Integer) 

K_{ri}  Rotational stiffness
coefficient of nonblocked DOF. 4 If fct_K_{ri} = 0: Constant rotational stiffness value. If fct_K_{ri} > 0: Rotational stiffness scale factor. Default = 1.0 (Real) 
$\left[\frac{\text{Nm}}{\text{rad}}\right]$ or $\left[\text{Nm}\right]$ 
fct_K_{ri}  Rotational moment versus
rotational angle function identifier. (Integer) 

SA_{i}, SA_{i+}  Positive and Negative
stopping angles in radians. 8 Default = 0.0 (Real) 
$\left[\text{rad}\right]$ 
C_{ri}  Rotational viscosity
coefficient of nonblocked DOF. If fct_C_{ri} = 0: Constant rotational viscosity value. If fct_C_{ri} > 0: Rotational viscosity scale factor. Default = 1.0 (Real) 
$\left[\frac{\text{Nms}}{\text{rad}}\right]$ or $\left[\text{Nm}\right]$ 
fct_C_{ri}  Rotational viscosity
moment versus rotational angle rate function
identifier. (Integer) 

K_{fri}  Elastic stiffness per
radian unit for friction and stop angle. 5 Default = 0.0 (Real) 
$\left[\frac{\text{Nm}}{\text{rad}}\right]$ 
FM_{i}  Frictional moment value of
nonblocked DOF. 5 If fct_FM_{i} = 0: Constant frictional moment value. If fct_FM_{i} > 0: Frictional moment scale factor. Default = 0.0 (Real) 
$\left[\text{Nm}\right]$ 
fct_FM_{i}  Frictional moment versus
rotational angle function identifier. (Integer) 

Icomb_r_{i}  Combining stop angles.
10
(Integer) 
Joint Types List
Type No.  Joint Type  dx  dy  dz  ${\theta}_{X}$  ${\theta}_{Y}$  ${\theta}_{Z}$ 

1  Spherical  x  x  x  0  0  0 
2  Revolute  x  x  x  0  x  x 
3  Cylindrical  0  x  x  0  x  x 
4  Planar  x  0  0  0  x  x 
5  Universal  x  x  x  x  0  0 
6  Translational  0  x  x  x  x  x 
7  Oldham  x  0  0  x  x  x 
8  Rigid  x  x  x  x  x  x 
9  Free  0  0  0  0  0  0 
 x
 Denotes a blocked DOF
 0
 Denotes a free (userdefined) DOF
Example (Rotational)
#RADIOSS STARTER
/UNIT/2
unit for prop
kg mm ms
#12345678910
/PROP/TYPE45/2/2
Revolute
###  Define angle limit < 0.52rad
###  And define friction moment 100GPa to block angle (if it reached the limit)
# Type KN SCF CR SENSORID
2 0 0 0 0
# KR1Func_ID_Kr SA1 SA1+ Icomb_r1
0 0 0 .52 0
# CR1Func_ID_Cr
0 0
# KFR1 FM1 FCT_FM1
0 100 0
#12345678910
#ENDDATA
Example (Translational)
#RADIOSS STARTER
/UNIT/2
unit for prop
kg mm ms
#12345678910
/PROP/TYPE45/12/2
Translational
###  define displacement limit: 100mm ~ 100 mm
# Type KN SCF CR SENSORID
6 0 0 .2 0
# KX1Func_ID_Kx SD1 SD1+ Icomb_t1
0 0 100 100 0
# CX1Func_ID_Cx
0 0
# KFX1 FF1 FCT_FF1
1000 0 0
#12345678910
#ENDDATA
Comments
 The KJOINT2 spring is typically used to connect rigid bodies, but can also be used to connect nodes of deformable elements. When connecting nodes of deformable elements, the moment is not transferred if the node of the element does not have any rotatinal degees of freedom (DOF). This includes the following cases: all rotational DOF for nodes of solid and truss element, the drilling DOF of shell elements with the shell property I_{dril}=2 (default), and some DOF for nodes of beam and spring elements.
 Spring element:
 The identifier must be unique in each element family, but it is advised to have a unique element identifier in the global model for each element type.
 More than one spring block can be used to define a part.
 Spring DOF:
 Joint properties are defined in a local coordinate system of the joint element.
 The total number of joint DOF computed in the local coordinate system
frame is six:
${\delta}_{{\mathbf{X}}^{\prime}},{\delta}_{{\mathbf{Y}}^{\prime}},{\delta}_{{\mathbf{Z}}^{\prime}},{\theta}_{{\mathbf{X}}^{\prime}},{\theta}_{{\mathbf{Y}}^{\prime}},{\theta}_{{\mathbf{Z}}^{\prime}}$
 Blocked and free DOF are distinguished for each joint type.
 The blocked DOF are characterized by a constant stiffness. By default, if no stiffness value is entered, the value of the stiffness is automatically computed to preserve the time step.
 The translational and rotational DOF are defined as:
(1) $$\delta =d{x}_{2}d{x}_{1}$$Where, $d{x}_{1}$ and $d{x}_{2}$ are total displacements of two joint nodes in the local coordinate system.(2) $$\theta ={\theta}_{2}{\theta}_{1}$$Where, ${\theta}_{1}$ and ${\theta}_{2}$ are total relative rotations of two connected body axes, with respect to the local coordinate system of the joint.
 If sens_ID is defined, then the joint becomes fully blocked (all degrees of freedom) when the sensor is activated.
 Forces and moments
calculation:
 The force in direction
$\mathbf{\delta}$
is computed as:Linear spring:
(3) $$\mathbf{F}={\mathbf{K}}_{ti}\mathbf{\delta}+{\mathbf{C}}_{ti}\dot{\mathbf{\delta}}$$${K}_{ti}$ : translational stiffness $\left({K}_{tx},{K}_{ty},{K}_{tz}\right)$
${C}_{ti}$ : translational viscosity $\left({C}_{tx},{C}_{ty},{C}_{tz}\right)$
Nonlinear spring:(4) $$F={K}_{ti}\mathrm{f}\left(\delta \right)+{C}_{ti}\mathrm{g}\left(\dot{\delta}\right)$$  The moment in
$\mathbf{\theta}$
direction is computed as:Linear spring:
(5) $$\mathbf{M}={\mathbf{K}}_{\mathit{ri}}\mathbf{\theta}+{\mathbf{C}}_{\mathit{ri}}\dot{\mathbf{\theta}}$$${K}_{ri}$ : rotational stiffness ( $\left({K}_{rx},{K}_{ry},{K}_{rz}\right)$ )
${C}_{ri}$ : rotational viscosity ( $\left({C}_{rx},{C}_{ry},{C}_{rz}\right)$ )
Nonlinear spring:(6) $$\mathbf{M}={\mathbf{K}}_{\mathit{ri}}\mathrm{f}\left(\mathbf{\theta}\right)+{\mathbf{C}}_{\mathit{ri}}\mathrm{g}\left(\dot{\mathbf{\theta}}\right)$$  The joint length may be, but is not necessarily equal to 0. It is recommended to use a 0 length spring to define a spherical joint or a universal joint.
 To satisfy the global balance of moments in a general case, correction
terms in the rotational DOF are calculated as:
(7) $${\mathbf{M}}_{\theta x}={\mathbf{M}}_{\theta x}+{\mathbf{L}}_{y}\times {\mathbf{F}}_{z}{\mathbf{L}}_{z}\times {\mathbf{F}}_{y}$$(8) $${\mathbf{M}}_{\theta y}={\mathbf{M}}_{\theta y}+{\mathbf{L}}_{z}\times {\mathbf{F}}_{x}{\mathbf{L}}_{x}\times {\mathbf{F}}_{z}$$(9) $${\mathbf{M}}_{\theta z}={\mathbf{M}}_{\theta z}+{\mathbf{L}}_{x}\times {\mathbf{F}}_{y}{\mathbf{L}}_{y}\times {\mathbf{F}}_{x}$$Joints do not have userdefined mass or inertia, so the nodal time step is always used. The nodal time step is based on entities that the joint connects. If attached to a main node of a rigid body, the rigid body time step is used. If attached to the nodes of a deformable element, the nodal time is calculated based on the deformable element.
 The force in direction
$\mathbf{\delta}$
is computed as:
 Stiffness of spring
 Coefficients ${K}_{ti}$ and ${K}_{ri}$ are used as constant stiffness, if there are no userdefined functions. If a function is defined, the corresponding stiffness coefficient becomes a scale factor for the function.
 If K_{n} = 0, the blocking stiffness is automatically computed at the beginning of the computation for both translational and rotational blocked DOF, in order to preserve the time step. These values are also selected according to the model physics and must be higher than the stiffness of the neighboring elements.
 If K_{n} = 0, then Scf is a scaling factor applied to both translational and rotational blocking stiffness. If K_{n} > 0, then Scf is applied only on blocking rotational stiffness. This parameter can be used to manually adjust the blocking stiffness in rotation.
 Viscosity of spring
 Coefficients ${C}_{ti}$ and ${C}_{ri}$ are used as linear viscosity coefficients, if there are no userdefined functions. If a function is defined, the corresponding coefficient becomes a scale factor for the function.
 There are two ways to introduce viscous damping:
 Defining a critical damping (for blocked DOF only):
Viscous damping is defined in terms of the critical damping factor. The critical damping coefficient is calculated using the blocking stiffness value of the element and the reduced mass (half of the harmonic mean of mass of the connected nodes). The same critical damping is applied to all blocked DOF.
 Userdefined constant or nonlinear damping:
It is possible to define independent damping parameters for each free DOF.
For more information about stiffness and damping, refer to Spring Joint TYPE45 (/PROP/KJOINT2) in the User Guide.
 Defining a critical damping (for blocked DOF only):
 Friction
 Friction is not activated, if K_{fti} or K_{fri} are not defined.
 FF_{i} and FM_{i} are used as constant friction force and moment, if there are no userdefined functions. If the friction function number is not 0, FM_{i} and FF_{i} become a scale factor for the functions (default = 1.0).
 Spring limit
 If a nonzero value is specified for SD_{i} or SD_{i+}, then an additional penalty force is applied to prevent the displacement exceeding SD_{i+} for positive displacement and SD_{i} for negative displacement. This penalty force is computed using K_{fti}.
 If a nonzero value is specified for SA_{i} or SA_{i+}, then an additional penalty moment is applied to prevent the angle exceeding SA_{i+} for positive rotation or SA_{i} for negative rotation. This penalty moment is computed using K_{fri}
 Skew of spring
 If Skew_ID_{1} is defined, the initial local coordinate system is defined by Skew_ID_{1}. If Skew_ID_{1} = 0, the local coordinate system is computed according to the additional nodes of the spring. Refer to /SPRING for more information.
 If Skew_ID_{2} is defined, rotation angles of the joint are initialized according the rotation between Skew_ID_{1} and Skew_ID_{2}. Values of the initial angles can be check in the Starter output file. For revolute (TYPE2), cylindrical (TYPE3) and planar (TYPE4) joints only ${\theta}_{X}$ can be initialized. The first axis of Skew_ID_{1} and Skew_ID_{2} must be parallel.
 If Skew_ID_{2} is nonzero and Skew_ID_{1} =0, then Skew_ID_{1} is the global coordinate system.
 The local coordinate system orientation is updated according to node_ID_{1} (/SPRING) rotation.
 Combined stop
displacements/angles:
 If Icomb_t_{i} = 0: the stop displacements are independent (default) as shown in Figure 2. Stop displacement will be checked separately in each direction.
 If Icomb_t_{i} = 1: the stop displacements of all the free translational DOF are combined. The stopping criteria is no longer applied on the displacement but on the normal of the combined displacements see Figure 3.
 2 or 3 stop displacements can be combined
 If stop displacements are combined, the same value of SDi and SDi+ must be used for each DOF.
 The above descriptions for stop displacements also apply for stop angles defined using Icomb_r_{i}.