Stress
Stress is a tensor field, akin to the deformation gradient , and is defined over the entire domain of solid materials. It quantifies the internal pressures and tensions experienced by a material object. The link between stress and strain (or ) is established through what is known as a constitutive relationship. This relationship outlines how materials respond to various deformations.
A common example of a constitutive relationship is Hooke's law in one dimension, which applies to many conventional materials under elastic conditions. In the context of hyperelastic materials, the relationship is specifically defined by the strain energy function, .
Definition 14.1.1 (Hyperelastic Materials). Hyperelastic materials are those elastic solids whose first Piola-Kirchhoff stress can be derived from a strain energy density function via With index notation, this means is discretely a small matrix with the same dimensions as .
In the study of material behavior under stress, various definitions are utilized, with Cauchy stress being particularly prevalent in engineering contexts. Cauchy stress, denoted as , can be mathematically linked to the first Piola-Kirchhoff stress tensor through the relationship:
Calculating from the strain energy function is relatively straightforward for energy models that do not require singular value decomposition (SVD), such as the Neo-Hookean model. However, general isotropic elasticity models, like ARAP (As-Rigid-As-Possible), often rely on the computation of principal stretches or the closest rotation matrix, necessitating SVD. This computation becomes particularly complex and resource-intensive when determining , which is crucial for implicit time integrations.
We present an efficient method that leverages the sparsity structure, as introduced by [Stomakhin et al. 2012], to compute the first Piola-Kirchhoff stress tensor and its derivative (whether as a tensor or the differential ) for general isotropic elastic materials. This approach utilizes symbolic software packages, and we will specifically discuss the implementation in Mathematica. Implementations in Maple or other software are similarly straightforward, following the same conceptual framework. For a deeper exploration of derivative computations commonly employed in computer graphics, refer to the work of [Schroeder 2022].
It is important to note that the computational strategy discussed can also be applied to other derivatives in diagonal space, similar to . For instance, in certain models, the Kirchhoff stress is preferred over the first Piola-Kirchhoff stress . The Kirchhoff stress is expressed as: where is a diagonal stress measure, with each entry being a function of the singular values . The methodology for computing mirrors that of .