Reference documentation for deal.II version GIT relicensing-1062-gc06da148b8 2024-07-15 19:20:02+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
No Matches
Namespaces | Classes
Physics::Elasticity Namespace Reference


namespace  Kinematics


class  StandardTensors

Detailed Description

This namespace provides a collection of definitions that conform to standard notation used in (nonlinear) elasticity.


References for this notation include:

title = {Nonlinear solid mechanics. A Continuum Approach for Engineering},
publisher = {John Wiley \& Sons Ltd.},
year = {2007},
author = {Holzapfel, G. A.},
address = {West Sussex, England},
note = {ISBN: 0-471-82304-X}
title = {Nonlinear finite element methods},
publisher = {Springer Berlin Heidelberg},
year = {2008},
author = {Wriggers, P.},
volume = {4},
address = {Berlin, Germany},
note = {ISBN: 978-3-540-71000-4},
doi = {10.1007/978-3-540-71001-1}

For convenience we will predefine some commonly referenced tensors and operations. Considering the position vector \(\mathbf{X}\) in the referential (material) configuration, points \(\mathbf{X}\) are transformed to points \(\mathbf{x}\) in the current (spatial) configuration through the nonlinear map

\[ \mathbf{x} \dealcoloneq \boldsymbol{\varphi} \left( \mathbf{X} \right) = \mathbf{X} + \mathbf{u}(\mathbf{X}) \, , \]

where the \(\mathbf{u}(\mathbf{X})\) represents the displacement vector. From this we can compute the deformation gradient tensor as

\[ \mathbf{F} \dealcoloneq \mathbf{I} + \nabla_{0}\mathbf{u} \, , \]

wherein the differential operator \(\nabla_{0}\) is defined as \(\frac{\partial}{\partial \mathbf{X}}\) and \(\mathbf{I}\) is the identity tensor.

Finally, two common tensor operators are represented by \(\cdot\) and \(:\) operators. These respectively represent a single and double contraction over the inner tensor indices. Vectors and second-order tensors are highlighted by bold font, while fourth-order tensors are denoted by calliagraphic font.

One can think of fourth-order tensors as linear operators mapping second-order tensors (matrices) onto themselves in much the same way as matrices map vectors onto vectors. To provide some context to the implemented class members and functions, consider the following fundamental operations performed on tensors with special properties:

If we represent a general second-order tensor as \(\mathbf{A}\), then the general fourth-order unit tensors \(\mathcal{I}\) and \(\overline{\mathcal{I}}\) are defined by

\[ \mathbf{A} = \mathcal{I}:\mathbf{A} \qquad \text{and} \qquad \mathbf{A}^T = \overline{\mathcal{I}}:\mathbf{A} \, , \]

or, in indicial notation,

\[ I_{ijkl} = \delta_{ik}\delta_{jl} \qquad \text{and} \qquad \overline I_{ijkl} = \delta_{il}\delta_{jk} \]

with the Kronecker deltas taking their common definition. Note that \(\mathcal{I} \neq \overline{\mathcal{I}}^T\).

We then define the symmetric and skew-symmetric fourth-order unit tensors by

\[ \mathcal{S} \dealcoloneq \dfrac{1}{2}[\mathcal{I} + \overline{\mathcal{I}}] \qquad \text{and} \qquad \mathcal{W} \dealcoloneq \dfrac{1}{2}[\mathcal{I} - \overline{\mathcal{I}}] \, , \]

such that

\[ \mathcal{S}:\mathbf{A} = \dfrac{1}{2}[\mathbf{A} + \mathbf{A}^T] \qquad \text{and} \qquad \mathcal{W}:\mathbf{A} = \dfrac{1}{2}[\mathbf{A} - \mathbf{A}^T] \, . \]

The fourth-order symmetric tensor returned by identity_tensor() is \(\mathcal{S}\).