In which cases should we consider non-zero traction term?


Supposing I have this variational form of the linear elasticity problem to solve:
\int\limits_\Omega (\sigma:∇v) dx = \int\limits_{\delta\Omega} (\sigma.n.v) ds + \int\limits_\Omega f.v dx, where T = \sigma.n

In this tutorial, the traction T is set to 0. But I guess, this is not always the case for elastic equation, is not it?

Here are my questions:

  • What is the physical sense of the traction term? Is it an external constraint imposed on the boundary (like external forces) or rather an internal-behaviour term due to the equation itself?

  • In which cases should I consider and leave the traction term in the variational form? For instance, I read non-zero traction was “artificially” used to avoid simulation divergence when potential fluid backflow, but it was in the case of Navier-Stokes equation → So what about elastic equation?

  • In the examples I read on non-zero traction boundaries, it was proposed an imposed value for the traction (e.g. Constant((1.0, 1.0)). But is it possible/what happens if I leave the theoretical expression of traction as it is: \int\limits_{\delta\Omega} (\sigma.n.v) ds ? (I tried to do so but it seems to crash and I had to put it at T=0)

Many thanks for your help,

Hi Anne,

Some clarification: in your first equation you should write T \cdot v in the RHS, and as a natural result you will have \sigma \cdot n = T.

  1. From the Cauchy theorem t(x, n) = \sigma(x) \cdot n , where x is the position.
  2. If you forget traction terms in a primal formulation, it means zero-traction, i.e., free-boundary.
  3. It does not work since your \sigma(u) and in the RHS you should only have v, i.e., no trials, only test functions.

Hope that it helps.


1 Like

Many thanks for your answer @Felipe_Rocha,

  • I made some other researches. From what I understood, that are the different steps required to formulate the variational form which lead to then “inject” traction T into the equation (as in

    • Problem:
      \left\{ \begin{array} &-Δ\sigma(u) = f&\\ u=uD& \mbox{on} &\Gamma_D& \mbox{(Dirichlet boundary conditions)}\\ \sigma(u).n =T& \mbox{on} &\Gamma_N& \mbox{(Neumann/"traction" boundary conditions)}\\ \end{array} \right.

    • Variational form (using integration by part):
      \int_{\Omega}(\sigma:\nabla v) dx = \int_{\Omega}(f. v) dx + \int_{\delta\Omega}(\sigma(u).n. v) ds , \mbox{∀v∈V}

    • Boundary conditions:
      \int_{\delta\Omega}(\sigma.n. v) ds = \int_{\Gamma_D}(\sigma(u_D).n. v) ds + \int_{\Gamma_N}(T. v) ds

    • Taking v=0 on \Gamma_D and injecting the traction boundary condition:
      \int_{\Omega}(\sigma:\nabla v) dx = \int_{\Omega}(f. v) dx + \int_{\Gamma_N}(T. v) ds , \mbox{∀v∈V}

  • As a matter of fact, T can be “choosen” as a external surface loading force, which is physicially equivalent to internal stresses at boundary (\sigma(u)). Is that correct?

  • So to conclude, here are my refined questions:

    1. I can choose the traction term expression:
    • either T = non-zero fenics.Constant (homogeneous traction loading)
    • either T = f(x,y,z) (heterogenous traction loading)
    • either T = 0 traction-free)
      Is that correct?
    1. I don’t need to write the term \int_{\delta\Omega}(\sigma(u).n. v) ds in the fenics variational form (LHS in that case), but I replace it by \int_{\Gamma_N}(T. v) ds with the imposed traction T in RHS, isn’t it?
    2. I can consider non-zero traction term if I want to consider external surface loading in my model. Isn’t it?

Many thanks for your help,

Hi Anne,

For your middle question: Traction is equivalent to \sigma \cdot n.
Yes for your 3 refined questions. In your initial problem I suppose you wanted to write the divergence instead of the Laplacian.



Hi Felipe,
Many thanks for your feedback.
You are rigtht about σ⋅n and the divergence! It’s a mistake.

Kind regards,