Section 18.1 of Chapter 18: Hyperelastic Materials

Hyperelastic materials, Mooney-Rivlin material model for nearly incompressible material, Part I

A Total Lagrangian Q4 formulation for a nearly incompressible Mooney-Rivlin material in plane strain.

Plane strainQ4HyperelasticTotal Lagrangian

01

Hyperelastic materials

StrainLarge
DisplacementLarge
MaterialNonlinear elastic
Stress statePlane strain

Hyperelastic materials may undergo very large elastic deformations and return to their initial shape after unloading. Elastomers, many polymers, and several biological tissues are common examples. [1], [2], [3]

For an ideal hyperelastic material, the response is history-independent. This means that the stress at a given material point is determined by the current deformation state, not by the sequence of intermediate deformations followed to reach that state. It does not mean that two different loading arrangements necessarily produce the same deformation merely because their final resultant loads are equal. [3]

The constitutive behavior is described through a strain-energy density function WW. [3] Here, WW is the elastic strain energy per unit volume of the initial configuration. In the Total Lagrangian formulation, the constitutive pair consists of the Green–Lagrange strain tensor E\boldsymbol{E} and the second Piola–Kirchhoff stress tensor S\boldsymbol{S}. The stress follows from the variation of stored elastic energy with deformation:

S=WE\boxed{\boldsymbol{S}=\frac{\partial W}{\partial\boldsymbol{E}}}

The position vector in the current configuration is related to the initial position and the displacement vector by:

x^=x+u\hat{\boldsymbol{x}}=\boldsymbol{x}+\boldsymbol{u}

The deformation gradient and the Green-Lagrange strain tensor are:

F=I+u,E=12(FTFI)\boldsymbol{F}=\boldsymbol{I}+\nabla\boldsymbol{u},\qquad \boldsymbol{E}=\frac12\left(\boldsymbol{F}^{T}\boldsymbol{F}-\boldsymbol{I}\right)
E=12(CI),C=FTF\boldsymbol{E}=\frac12\left(\boldsymbol{C}-\boldsymbol{I}\right),\qquad \boldsymbol{C}=\boldsymbol{F}^{T}\boldsymbol{F}

In three dimensions, the Green–Lagrange strain tensor is written in component form as:

E=[ExExyEzxExyEyEyzEzxEyzEz]\boldsymbol{E}=\begin{bmatrix} E_x&E_{xy}&E_{zx}\\ E_{xy}&E_y&E_{yz}\\ E_{zx}&E_{yz}&E_z \end{bmatrix}

This component notation will be used later when the general three-dimensional constitutive relations are specialized to plane strain.

02

Isotropy and strain invariants

For an isotropic material, there are no preferred directions in the initial configuration. It is therefore natural to express the strain-energy density through the invariants of the right Cauchy–Green tensor, because these scalar quantities are independent of the orientation of the coordinate system: [3]

W=W(I1,I2,I3)\boxed{W=W(I_1,I_2,I_3)}
I1=tr(C)=Cx+Cy+CzI2=12[tr(C)2tr(C2)]=CxCy+CyCz+CzCxCxy2Cyz2Czx2I3=detC=J2\begin{aligned} I_1&=\operatorname{tr}(\boldsymbol{C})=C_x+C_y+C_z\\[3pt] I_2&=\frac12\left[\operatorname{tr}(\boldsymbol{C})^2-\operatorname{tr}(\boldsymbol{C}^2)\right]\\ &=C_xC_y+C_yC_z+C_zC_x-C_{xy}^2-C_{yz}^2-C_{zx}^2\\[3pt] I_3&=\det\boldsymbol{C}=J^2 \end{aligned}

Because C\boldsymbol{C} is symmetric, only six independent components are required in three dimensions. The invariants provide a coordinate-independent description of the deformation and are therefore particularly convenient for isotropic hyperelastic models.

C=[CxCxyCzxCxyCyCyzCzxCyzCz]\boldsymbol{C}=\begin{bmatrix} C_x&C_{xy}&C_{zx}\\ C_{xy}&C_y&C_{yz}\\ C_{zx}&C_{yz}&C_z \end{bmatrix}

The component notation introduced above will be used in the following expressions for the invariants and their derivatives.

03

Volume change and reduced invariants

The determinant of the deformation gradient gives the local volume ratio:

J=detF,I3=detC=J2J=\det\boldsymbol{F},\qquad I_3=\det\boldsymbol{C}=J^2
εV=VV0V0=J1\varepsilon_V=\frac{V-V_0}{V_0}=J-1

Thus, J=1J=1 indicates no volume change, J>1J>1 indicates dilatation, and J<1J<1 indicates compression. The third invariant I3I_3 is therefore directly related to local volume change.

The first and second invariants also change during pure dilatation, even though no distortion occurs. To distinguish changes of shape from changes of volume, the reduced invariants are introduced: [1], [3]

Iˉ1=I1I31/3,Iˉ2=I2I32/3,Iˉ3=I31/2=J\boxed{\bar I_1=I_1 I_3^{-1/3},\qquad \bar I_2=I_2 I_3^{-2/3},\qquad \bar I_3=I_3^{1/2}=J}

Consider a pure dilatation for which C=cI\boldsymbol{C}=c\boldsymbol{I}. Then:

I1=3c,I2=3c2,I3=c3I_1=3c,\qquad I_2=3c^2,\qquad I_3=c^3
Iˉ1=3,Iˉ2=3,Iˉ3=J\bar I_1=3,\qquad \bar I_2=3,\qquad \bar I_3=J

This shows that the reduced invariants remove the pure volumetric contribution from I1I_1 and I2I_2.

04

Nearly incompressible Mooney-Rivlin model

The two-parameter Mooney–Rivlin model is simple and widely used. It gives satisfactory results for tensile strains up to about 100%, although difficulties may arise in compression. [3] For a nearly incompressible material, the strain-energy density is separated into distortional and volumetric contributions: [3], [4]

W=Wdist+Wvol\boxed{W=W_{\rm dist}+W_{\rm vol}}
Wdist=A10(Iˉ13)+A01(Iˉ23)W_{\rm dist}=A_{10}(\bar I_1-3)+A_{01}(\bar I_2-3)
Wvol=K2(J1)2W_{\rm vol}=\frac{K}{2}(J-1)^2

The constants A10A_{10} and A01A_{01} define the distortional response: changes of shape with the purely volumetric contribution removed. The term containing KK represents the energy associated with local volume change. The bulk modulus is large for nearly incompressible materials, so even a small departure of JJ from unity produces a large volumetric energy penalty. [3]

G=2(A10+A01),K=E3(12ν)G=2(A_{10}+A_{01}),\qquad K=\frac{E}{3(1-2\nu)}

For small strains, E6(A10+A01)E\approx6(A_{10}+A_{01}) in three dimensions, while the corresponding two-dimensional relation used here is E8(A10+A01)E\approx8(A_{10}+A_{01}). [3] As ν\nu approaches 0.5, the bulk modulus tends to infinity and the material approaches the incompressible limit.

For the present numerical example, the volumetric parameter K=133.33 MPaK=133.33\ {\rm MPa} corresponds to E=4 MPaE=4\ {\rm MPa} and ν=0.495\nu=0.495 through the small-strain bulk-modulus relation. The Mooney-Rivlin constants A10=0.48 MPaA_{10}=0.48\ {\rm MPa} and A01=0.11 MPaA_{01}=0.11\ {\rm MPa} define the distortional response.

05

PK2 stress and material tangent

The second Piola–Kirchhoff stress follows from the derivative of the strain-energy density with respect to the Green–Lagrange strain. Applying the chain rule to the reduced invariants and JJ gives:

S=A10Iˉ1E+A01Iˉ2E+K(J1)JE\boldsymbol{S}=A_{10}\frac{\partial\bar I_1}{\partial\boldsymbol{E}}+A_{01}\frac{\partial\bar I_2}{\partial\boldsymbol{E}}+K(J-1)\frac{\partial J}{\partial\boldsymbol{E}}
Iˉ1E=I31/3I1E13I1I34/3I3EIˉ2E=I32/3I2E23I2I35/3I3EJE=12I31/2I3E\begin{aligned} \frac{\partial\bar I_1}{\partial\boldsymbol{E}}&=I_3^{-1/3}\frac{\partial I_1}{\partial\boldsymbol{E}}-\frac13 I_1I_3^{-4/3}\frac{\partial I_3}{\partial\boldsymbol{E}}\\[3pt] \frac{\partial\bar I_2}{\partial\boldsymbol{E}}&=I_3^{-2/3}\frac{\partial I_2}{\partial\boldsymbol{E}}-\frac23 I_2I_3^{-5/3}\frac{\partial I_3}{\partial\boldsymbol{E}}\\[3pt] \frac{\partial J}{\partial\boldsymbol{E}}&=\frac12 I_3^{-1/2}\frac{\partial I_3}{\partial\boldsymbol{E}} \end{aligned}

The material (constitutive) tangent matrix is obtained by differentiating the second Piola–Kirchhoff stress with respect to the Green–Lagrange strain:

D=SE\boxed{\boldsymbol{D}=\frac{\partial\boldsymbol{S}}{\partial\boldsymbol{E}}}
D=A102Iˉ1E2+A012Iˉ2E2+K(J1)2JE2+KJE(JE)T\boldsymbol{D}=A_{10}\frac{\partial^2\bar I_1}{\partial\boldsymbol{E}^2}+A_{01}\frac{\partial^2\bar I_2}{\partial\boldsymbol{E}^2}+K(J-1)\frac{\partial^2J}{\partial\boldsymbol{E}^2}+K\frac{\partial J}{\partial\boldsymbol{E}}\left(\frac{\partial J}{\partial\boldsymbol{E}}\right)^T

Here, D\boldsymbol{D} is the three-dimensional 6×66\times6 material tangent associated with the Total Lagrangian constitutive pair E\boldsymbol{E}-S\boldsymbol{S}. It relates an increment of the six engineering components of Green–Lagrange strain to the corresponding increment of the six second Piola–Kirchhoff stress components. The first and second derivatives follow directly from the chain rule applied to Iˉ1\bar I_1, Iˉ2\bar I_2, and JJ. [3]

2Iˉ1E2=I31/32I1E213I34/3[I1E(I3E)T+I3E(I1E)T]+49I1I37/3I3E(I3E)T13I1I34/32I3E2\begin{aligned} \frac{\partial^2\bar I_1}{\partial\boldsymbol{E}^2}={}&I_3^{-1/3}\frac{\partial^2 I_1}{\partial\boldsymbol{E}^2} -\frac13I_3^{-4/3}\left[\frac{\partial I_1}{\partial\boldsymbol{E}}\left(\frac{\partial I_3}{\partial\boldsymbol{E}}\right)^T+\frac{\partial I_3}{\partial\boldsymbol{E}}\left(\frac{\partial I_1}{\partial\boldsymbol{E}}\right)^T\right]\\ &+\frac49I_1I_3^{-7/3}\frac{\partial I_3}{\partial\boldsymbol{E}}\left(\frac{\partial I_3}{\partial\boldsymbol{E}}\right)^T -\frac13I_1I_3^{-4/3}\frac{\partial^2 I_3}{\partial\boldsymbol{E}^2} \end{aligned}
2Iˉ2E2=I32/32I2E223I35/3[I2E(I3E)T+I3E(I2E)T]+109I2I38/3I3E(I3E)T23I2I35/32I3E2\begin{aligned} \frac{\partial^2\bar I_2}{\partial\boldsymbol{E}^2}={}&I_3^{-2/3}\frac{\partial^2 I_2}{\partial\boldsymbol{E}^2} -\frac23I_3^{-5/3}\left[\frac{\partial I_2}{\partial\boldsymbol{E}}\left(\frac{\partial I_3}{\partial\boldsymbol{E}}\right)^T+\frac{\partial I_3}{\partial\boldsymbol{E}}\left(\frac{\partial I_2}{\partial\boldsymbol{E}}\right)^T\right]\\ &+\frac{10}{9}I_2I_3^{-8/3}\frac{\partial I_3}{\partial\boldsymbol{E}}\left(\frac{\partial I_3}{\partial\boldsymbol{E}}\right)^T -\frac23I_2I_3^{-5/3}\frac{\partial^2 I_3}{\partial\boldsymbol{E}^2} \end{aligned}
2JE2=12I31/22I3E214I33/2I3E(I3E)T\frac{\partial^2J}{\partial\boldsymbol{E}^2}=\frac12I_3^{-1/2}\frac{\partial^2I_3}{\partial\boldsymbol{E}^2}-\frac14I_3^{-3/2}\frac{\partial I_3}{\partial\boldsymbol{E}}\left(\frac{\partial I_3}{\partial\boldsymbol{E}}\right)^T

06

Plane-strain specialization

The derivatives of the invariants are first obtained from the general three-dimensional expressions. The plane-strain kinematic constraints are imposed only afterwards. Thus, the out-of-plane strain components that do not belong to the two-dimensional deformation field are set to zero, while the corresponding stress component SzS_z is still obtained from the full three-dimensional constitutive relation.

Ez=Eyz=Ezx=0E_z=E_{yz}=E_{zx}=0

The stress component SzS_z is not set to zero. The three-dimensional constitutive law is retained while the plane-strain kinematic constraint is imposed.

E=[ExExy0ExyEy0000],C=2E+I\boldsymbol{E}=\begin{bmatrix}E_x&E_{xy}&0\\E_{xy}&E_y&0\\0&0&0\end{bmatrix},\qquad \boldsymbol{C}=2\boldsymbol{E}+\boldsymbol{I}
I1=2Ex+2Ey+2Ez+3I2=4Ex+4Ey+4Ez+4ExEy+4EyEz+4EzEx4Exy2+3I3=2Ex+2Ey+2Ez+4ExEy+4EyEz+4EzEx4Exy2+8ExEyEz8EzExy2+1\begin{aligned} I_1={}&2E_x+2E_y+2E_z+3\\ I_2={}&4E_x+4E_y+4E_z+4E_xE_y+4E_yE_z+4E_zE_x-4E_{xy}^2+3\\ I_3={}&2E_x+2E_y+2E_z+4E_xE_y+4E_yE_z+4E_zE_x\\ &-4E_{xy}^2+8E_xE_yE_z-8E_zE_{xy}^2+1 \end{aligned}

After evaluating the three-dimensional derivatives of the invariants and imposing the plane-strain kinematic constraints, the first derivatives can be written in engineering vector notation as follows:

Eeng={ExEyEz2Exy2Eyz2Ezx}\boldsymbol{E}_{\rm eng}=\left\{\begin{array}{c}E_x\\E_y\\E_z\\2E_{xy}\\2E_{yz}\\2E_{zx}\end{array}\right\}
I1Eeng={220000},I2Eeng={4Ey+44Ex+44Ex+4Ey+42Exy00}\frac{\partial I_1}{\partial\boldsymbol{E}_{\rm eng}}=\left\{\begin{array}{c}2\\2\\0\\0\\0\\0\end{array}\right\},\qquad \frac{\partial I_2}{\partial\boldsymbol{E}_{\rm eng}}=\left\{\begin{array}{c}4E_y+4\\4E_x+4\\4E_x+4E_y+4\\-2E_{xy}\\0\\0\end{array}\right\}
I3Eeng={4Ey+24Ex+22Exy2+2(2Ex+1)(2Ey+1)2Exy00}\frac{\partial I_3}{\partial\boldsymbol{E}_{\rm eng}}=\left\{\begin{array}{c}4E_y+2\\4E_x+2\\-2E_{xy}^2+2(2E_x+1)(2E_y+1)\\-2E_{xy}\\0\\0\end{array}\right\}

The second derivatives form symmetric 6×66\times6 matrices. For example:

2I1Eeng2=06×6,2I2Eeng2=[044000404000440000000200000020000002]\frac{\partial^2 I_1}{\partial\boldsymbol{E}_{\rm eng}^2}=\boldsymbol{0}_{6\times6},\qquad \frac{\partial^2 I_2}{\partial\boldsymbol{E}_{\rm eng}^2}=\begin{bmatrix} 0&4&4&0&0&0\\4&0&4&0&0&0\\4&4&0&0&0&0\\0&0&0&-2&0&0\\0&0&0&0&-2&0\\0&0&0&0&0&-2 \end{bmatrix}
2I3Eeng2=[048Ey+4000408Ex+40008Ey+48Ex+404Exy00004Exy20000004Ex22Exy00002Exy4Ey2]\frac{\partial^2 I_3}{\partial\boldsymbol{E}_{\rm eng}^2}=\begin{bmatrix} 0&4&8E_y+4&0&0&0\\ 4&0&8E_x+4&0&0&0\\ 8E_y+4&8E_x+4&0&-4E_{xy}&0&0\\ 0&0&-4E_{xy}&-2&0&0\\ 0&0&0&0&-4E_x-2&2E_{xy}\\ 0&0&0&0&2E_{xy}&-4E_y-2 \end{bmatrix}

The MoonRiv_strain subprogram computes the complete three-dimensional 6×66\times6 constitutive tangent matrix D\boldsymbol{D}, so that the out-of-plane stress SzS_z is also obtained. In the stiff subprogram, only rows and columns 1, 2 and 4 of D\boldsymbol{D}, corresponding to the xx, yy and xyxy components of the two-dimensional plane-strain problem, are used in the finite-element equations.

stiff.m — plane-strain tangent block
D([1 2 4],[1 2 4])

The corresponding plane-stress formulation is presented in Section 18.2, where both a simplified treatment for a nearly incompressible material and an exact enforcement of the plane-stress condition are discussed.

07

MATLAB implementation

The Total Lagrangian Q4 implementation follows the same finite-element sequence used in Section 12.2. At every Gauss point, the Green-Lagrange strain is evaluated and passed to MoonRiv_strain. This subprogram computes I1I_1, I2I_2, I3I_3, the reduced invariants, the PK2 stresses Sx,Sy,Sz,SxyS_x,S_y,S_z,S_{xy}, and the 6×66\times6 material tangent D\boldsymbol{D}.

Because the material is hyperelastic, the stresses are calculated directly from the current deformation through the strain-energy density function; no stress-history update is required.

stiff.m — constitutive calculation
% Green-Lagrange strains:
E=B*S+B_nl*S;

% constitutive calculation:
MoonRiv_strain

% plane-strain material tangent:
D2=D([1 2 4],[1 2 4]);

% store strains:
strnt(ig,:,istep+1)=E';

The RMS displacement correction used as convergence measure is evaluated over all equations:

main.m — convergence criterion
error=sqrt(dS'*dS/neq);

08

Numerical example

The example is a perforated plate modeled in plane strain with 767 nodes and 685 isoparametric Q4 elements. The material constants are:

A10=0.48 MPa,A01=0.11 MPa,K=133.33 MPaA_{10}=0.48\ {\rm MPa},\qquad A_{01}=0.11\ {\rm MPa},\qquad K=133.33\ {\rm MPa}

The loading is increased incrementally to F=160 NF=160\ {\rm N}, and symmetry conditions are used. In ANSYS, the same Mooney–Rivlin constants A10A_{10} and A01A_{01} are supplied together with the incompressibility parameter dd. For the volumetric energy convention used in this example, d=2/K=0.015 MPa1d=2/K=0.015\ {\rm MPa}^{-1}. [1]

ANSYS output provides Cauchy stresses and Hencky strains in the global coordinate frame. [1] The comparisons below use displacements as the primary global response and show corresponding displacement and strain maps on the same plotting geometry.

Finite-element mesh and loading of the perforated plate
Figure 1. Perforated plate, loading, boundary conditions, and Q4 finite-element mesh.

The standard displacement formulation converges slowly and uses under-relaxation:

main.m — under-relaxation
sr=0.167;
S=S-dS*sr;

The slow convergence is mainly associated with the nearly incompressible character of the material. The volumetric stiffness is much larger than the distortional stiffness, which makes the standard displacement formulation numerically difficult. An under-relaxation factor is therefore used here to improve robustness. In Section 18.3, this difficulty will be treated more effectively by Selective Reduced Integration, in which the volumetric and distortional contributions are integrated differently.

09

Displacement comparison

The force-displacement curve obtained with the MATLAB program is compared with ANSYS. In the ANSYS finite-strain hyperelastic constitutive description, the strain-energy function is expressed using deformation quantities referred to the undeformed configuration. [1] This is consistent with the Total Lagrangian formulation adopted in the present MATLAB program.

The displacement maps are presented on the undeformed geometry so that the MATLAB and ANSYS results can be compared directly using the same visual representation. This plotting choice is consistent with the adopted Total Lagrangian description, but is not imposed by it.

Force versus vertical displacement comparison between MATLAB and ANSYS
Figure 2. Force versus vertical displacement: MATLAB and ANSYS comparison.

The maximum downward displacements are vmax=159.41 mmv_{\max}=159.41\ {\rm mm} in MATLAB and vmax=161.23 mmv_{\max}=161.23\ {\rm mm} in ANSYS.

Figure 3. Vertical displacement obtained with MATLAB.
Figure 4. Vertical displacement obtained with ANSYS.

10

Strain comparison

The MATLAB program stores Green–Lagrange strains. For comparison with the logarithmic strain output from ANSYS, the Hencky strain is evaluated during postprocessing:

EH=lnU,U=FTF=C\boldsymbol{E}_H=\ln\boldsymbol{U},\qquad \boldsymbol{U}=\sqrt{\boldsymbol{F}^{T}\boldsymbol{F}}=\sqrt{\boldsymbol{C}}

The following maps compare the vertical strain component in the global coordinate frame. The MATLAB Green–Lagrange result is shown together with the MATLAB and ANSYS Hencky-strain results. All three maps are presented on the undeformed geometry for a direct visual comparison.

Figure 5a. MATLAB Green-Lagrange strain EyE_y.
Figure 5b. MATLAB Hencky strain εH,y\varepsilon_{H,y}.
Figure 5c. ANSYS Hencky strain εH,y\varepsilon_{H,y}.

11

Programs and references

The MATLAB program, the Hencky-strain postprocessor, and the ANSYS macro used for this example can be downloaded below.

References

  1. [1]Ansys Inc., ANSYS Mechanical APDL Theory Reference, Release 2026 R1, 2026.
  2. [2]Hyperelastic material, Wikipedia.
  3. [3]N.-H. Kim, Introduction to Non-Linear Finite Element Analysis, Springer, 2015.
  4. [4]J. Bonet and R. D. Wood, Nonlinear Continuum Mechanics for Finite Element Analysis, Cambridge University Press, 1997.