3.1.10.5. zeroLengthContact Element

This command is used to construct a node-to-node frictional contact element (2D or 3D). The element connects a constrained node and a retained node. The relation follows the Mohr-Coulomb law: \(T = \mu N + c\), where \(T\) is tangential force, \(N\) is normal force, \(\mu\) is friction coefficient, and \(c\) is cohesion.

2D:

element zeroLengthContact2D $eleTag $cNode $rNode $Kn $Kt $mu -normal $Nx $Ny

3D:

element zeroLengthContact3D $eleTag $cNode $rNode $Kn $Kt $mu $c $dir

Argument

Type

Description

$eleTag

integer

unique element object tag

$cNode $rNode

integer

constrained and retained node tags

$Kn

float

penalty in normal direction

$Kt

float

penalty in tangential direction

$mu

float

friction coefficient

$Nx $Ny

float

(2D) normal vector components

$c

float

(3D) cohesion (not available in 2D)

$dir

integer

(3D) out-normal of retained plane: 1 = +X, 2 = +Y, 3 = +Z

Note

  1. The tangent from the contact element is non-symmetric; use a non-symmetric system solver.

  2. For 2D contact, nodes must have 2 DOF; for 3D contact, nodes must have 3 DOF.

  3. The out-normal of the master (retained) plane is assumed unchanged during analysis.

Example

2D: Contact element with tag 1 between constrained node 2 and retained node 4, normal direction (0, -1).

  1. Tcl Code

element zeroLengthContact2D 1 2 4 1e8 1e8 0.3 -normal 0 -1
  1. Python Code

ops.element('zeroLengthContact2D', 1, 2, 4, 1e8, 1e8, 0.3, '-normal', 0, -1)

3D: Contact element with tag 1, cohesion 0, normal in +Z.

  1. Tcl Code

element zeroLengthContact3D 1 2 4 1e8 1e8 0.3 0.0 3
  1. Python Code

ops.element('zeroLengthContact3D', 1, 2, 4, 1e8, 1e8, 0.3, 0.0, 3)

Code developed by: Gang Wang, Geomatrix