Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2018:08_17

Commit August 17th, 2018

Previously, in commit 3198, the ContactTractionElement, which sets the resultant traction forces equal to zero at the nodes that are in contact, was introduced. Setting the traction forces equal to zero might, however, be incoherent at a node belonging to an element at the transition from “no contact” to “contact”, since the majority of the element is still stressed by the traction as can be seen in the following figure (red triangle). For this reason, an additional property was added to the ContactTractionElement, i.e. TRACTION_AT_TRANSITION_ON. In the past, the ContactTractionElement computed the forces as in the case TRACTION_AT_TRANSITION_ON = False. In the other case, the traction force is not set equal to zero, if the ContactTractionElement is located at the transition from “no contact” to “contact” (see red arrow below). The new default case is TRACTION_AT_TRANSITION_ON = True.

Test cases

The tests

  • mtContact.tests.contactTraction2DElement
  • mtContact.tests.contactTraction3DElement

were replaced by more complete tests of the new features as shown in the following figure.

In a test case, 5 squares (or cubes in 3D) are crushed by a compressive pressure due to the TractionElement or ContactTractionElement and a descending contact tool (either edge or plane). The 3D test case is the natural extension of the 2D case (i.e. out-of-plane extrusion). The contact will either be partial, i.e. with a transition from contact to no contact, or full, i.e. without such a transition. Hence, the contact state (transition or not), the traction element (TractionElement or ContactTractionElement) and the transition treatment (TRACTION_AT_TRANSITION_ON) will impact the external forces at nodes $P_{4}$, $P_{14}$, $P_{24}$, $P_{34}$, $P_{44}$.

Let's denote by $F_{t_{1}}$, $F_{t_{2}}$, $F_{t_{3}}$, $\ldots$ and $F_{c_{1}}$, $F_{c_{2}}$, $F_{c_{3}}$, $\ldots$ the total and contact forces along $\mathbf{y}$ at the previous nodes. The following conditions are then tested in the extractors:

  • $F_{t_{1}} - F_{t_{2}} = 0$, correct implementation at transition
  • $F_{t_{2}} - F_{c_{2}} \neq 0$, correct implementation at transition, pressure force not zero
  • $F_{t_{3}} - F_{c_{3}} = 0$, pressure force set to zero at transition
  • $F_{t_{4}} - F_{c_{4}} = 0$, pressure force set to zero since no transition
  • $F_{t_{5}} - F_{c_{5}} = 0$, pressure force set to zero since no transition

Added [a] / deleted [d] / modified [m] / renamed [r] test cases

[m] mtContact/tests/contactTraction2DElement.py
[m] mtContact/tests/contactTraction3DElement.py

Dominik Boemer 2018/08/17 23:15

commit/2018/08_17.txt · Last modified: 2018/08/17 23:15 by boemer