Continuum deformation
Note that the conservative elastic material forces \(f_{\textrm{e}}\) in general require some rather involved computation. Since this computation is not straightforward, we briefly explain the derivation of the nonlinear hyper-elastic material forces, which follows standard nonlinear finite element procedures 123. \(\renewcommand{\p}{\partial}\) \(\renewcommand{\R}{\mathbb{R}}\) \(\renewcommand{\vec}[1]{\mathbb{#1}}\) \(\renewcommand{\FB}{\mathbf{F}}\) \(\renewcommand{\fB}{\mathbf{f}}\) \(\renewcommand{\x}{\mathbf{x}}\)
Intermezzo: deformation gradient
A fundamental measure of deformation in continuum mechanics is the deformation gradient, denoted by \(\mathbf{F}\). The deformation gradient characterizes the local deformation for a neighborhood of the continuum body \(\Omega\). Since a subvolume of the continuum body cannot be reduced to a point, it follows that \(\det{\mathbf{F}} = J > 0\) and \(\mathbf{F}^{-1}\) exists. The term \(J\) is called the relative volume change and it is equal to 1 for isochoric deformations, such as rigid body deformations. Given these properties, the deformation gradient can then be factorized into \(\mathbf{F} = \mathbf{Q} \mathbf{V}\), where \(\mathbf{V} \succ 0\) is the right-handed stretch tensor and \(\mathbf{Q} \in \mathrm{SO}(3)\) is a rotation matrix belonging to the special orthogonal group 12. For convenience, we summarize the derived quantities of \(\mathbf{F}\) in the table below that will be used throughout this section.
Relative volume change | Polar decomposition | Right Cauchy-Green tensor |
---|---|---|
\(J = \det(\mathbf{F})\) | \(\mathbf{F} = \mathbf{Q} \mathbf{V}\) | \(\mathbf{C} = \mathbf{F}^\top \mathbf{F}\) |
First strain invariant | Second strain invariant | Third strain invariant |
\(I_1 = \textrm{tr}(\mathbf{C})\) | \(I_2 = \frac{1}{2} \left[\textrm{tr}(\mathbf{C})^2 - \textrm{tr}(\mathbf{C}^2)\right]\) | \(I_3 = \det(\mathbf{C})\) |
Intermezzo: Derivation of hyperelastic forces
Let \(\Omega_i\) denote the subspace spanned by the \(i\)-th element of the finite element mesh, and let \(\x_i\) denote its nodal displacement vector. The elasticity of the constitutive soft material can be described by a strain-energy density function \(\Psi: \FB \to \R_{\ge 0}\). A comprehensive discussion on common constitutive models for \(\Psi\) will be provided later in the subsequent paragraph. The elastic potential energy of the continuum body is given by \(\mathcal{U}_e = \int_\Omega \Psi(\cdot) \; dV\), and the conservative hyper-elastic force contribution can be computed as \(\fB_e := \nabla_{\x}\,\mathcal{U}_e\). This contribution can be approximated using piecewise finite element interpolation and integrated using the Gauss quadrature rule1 as follows:
where the Gauss weights are denoted by \(w_j > 0\), and the number of finite elements and Gauss samples are represented by \(N_e\) and \(N_w\), respectively.
The term \({\partial \Psi}/{\partial \FB}\) is also referred to as the first Piolla-Kirchhoff (PK1) stress tensor, which can be represented in closed-form for many constitutive models. The term \({\partial \FB}/{\partial \x_e}\) denotes the deformation Jacobian, which can also be given in closed-form but depends on the choice of element type. In addition to the first Piolla stress tensor, we also introduce the Cauchy stress tensor (i.e., true stress) \(\vec{\sigma} := J^{-1} \frac{\partial \Psi}{\partial \FB} \FB^\top\), which is a symmetric second-order tensor whose components represent the true stress. It should be noted that these tensor calculations are highly nonlinear, making their computation the most time-consuming aspect of the finite element assembly. To enhance computational efficiency, the toolkit employs \texttt{.mex} executable code, generated during installation (\texttt{Matlab Coder} is required).
-
Nam Ho Kim. Introduction Analysis Finite Element to Nonlinear. Springer, 2018. ISBN 9781441917454. ↩↩↩
-
Gerhard A. Holzapfel. Nonlinear Solid Mechanics: A Continuum Approach for Engineering Science. Volume 37. Kluwer Academic Publishers, Heidelberg, Germany, July 2002. doi:10.1023/A:1020843529530. ↩↩
-
Breannan Smith, Fernando De Goes, and Theodore Kim. Stable neo-hookean flesh simulation. ACM Trans. Graph., mar 2018. URL: https://doi.org/10.1145/3180491, doi:10.1145/3180491. ↩