the tangent) but for the majority of the operations it is not required (for example, when computing the stress).

Computation of kinematic quantities
-----------------------------------

The form of the constitutive response at a quadrature point within the volume is near identical to that on the surface (see Summary \[constiutive\_relations\]). The primary difference is the structure of the deformation gradient (and its inverse) used to parametrise the free energy. The computation of the deformation gradient in the volume and on the surface are performed here in an identical manner (as depicted in Fig. \[kinematics\]) using the routines `Solid<spacedim>::update_volume_cp_incremental_one_cell` and `Solid<spacedim>::update_surface_cp_incremental_one_cell`.

The reference volume cell (i.e. the isoparametric domain) is denoted $\Omega_\square$. A typical volume cell in the material configuration is denoted $\Omega_{e,0}$. A spatial view of the volume cell, denoted $\Omega_{e}$, is obtained by applying the nonlinear motion map $\b{\varphi}$ to all points with coordinates $\b{X} \in \Omega_{e,0}$. This is done in the code using the class `MappingQEulerian`. The material and spatial gradients of an arbitrary field can then be interpolated from the material and spatial views of the cell as follows: $$\begin{aligned}
    \Grad (\bullet) \approx \sum_{I} [\Grad{\b{\Phi}^I(\b{X})}][(\bullet)^I]  
    && \text{and} &&
    \grad (\bullet) \approx \sum_{I} [\grad{\b{\Phi}_t^I(\b{x})}][(\bullet)^I] \, ,\end{aligned}$$ where a shape function 