3.1.10.6. zeroLengthContactNTS2D Element
This command is used to construct a node-to-segment (NTS) frictional contact element for 2D analysis. The relation follows the Mohr-Coulomb frictional law: \(T = N \times \tan(\phi)\), where \(T\) is tangential force, \(N\) is normal force, and \(\phi\) is friction angle.
- element zeroLengthContactNTS2D $eleTag -sNdNum $sNdNum -mNdNum $mNdNum -Nodes $nodeTags $kn $kt $phi
Argument |
Type |
Description |
|---|---|---|
$eleTag |
integer |
unique element object tag |
$sNdNum |
integer |
number of slave nodes |
$mNdNum |
integer |
number of master nodes |
$nodeTags |
list integer |
slave and master node tags (counterclockwise order) |
$kn |
float |
penalty in normal direction |
$kt |
float |
penalty in tangential direction |
$phi |
float |
friction angle in degrees |
Note
Slave and master nodes must have 2 DOF and be entered in counterclockwise order.
The tangent from the contact element is non-symmetric; use a non-symmetric system solver if convergence is difficult.
The contact normal is computed automatically (no predefined normal vector required).
The element supports large deformations.
See also
Example
From the OpenSees wiki: element with tag 1, 6 slave and 6 master nodes, node tags as listed, kn = kt = 1e8, friction angle 16°.
Tcl Code
element zeroLengthContactNTS2D 1 -sNdNum 6 -mNdNum 6 -Nodes 5 10 12 3 9 11 1 4 2 8 7 6 1e8 1e8 16
Python Code
ops.element('zeroLengthContactNTS2D', 1, '-sNdNum', 6, '-mNdNum', 6, '-Nodes', 5, 10, 12, 3, 9, 11, 1, 4, 2, 8, 7, 6, 1e8, 1e8, 16)
References: Wriggers, P., Computational Contact Mechanics, John Wiley & Sons, 2002.
Code developed by: Roozbeh G. Mikola, UC Berkeley and N. Sitar, UC Berkeley