Hyper elasticity is used to model rubbers.
It should be combined with a total lagrange formulation for the memory
of the material (so use **-total** or **-total_piola** for
**group_materi_memory**).

The stresses follow from a strain energy function (with components of the matrix , and where is the deformation tensor and is the stretch tensor following from the polar decomposition of the deformation tensor)

__Deviatoric contributions__

To obtain a purely deviatoric function, the following strain measures are used (with , and the first, second and third invariant of the elastic strain matrix respectively)

The **group_materi_hyper_besseling** function reads ( with ,
and user defined constants)

The **group_materi_hyper_mooney_blatz_ko** function reads (with and user
defined constants)

This Blatz-Ko hyperelastic material hardens in compression, and softens slightly in tension; it models a foamlike rubber.

The **group_materi_hyper_mooney_rivlin** function reads (with and user
defined constants)

The **group_materi_hyper_neohookean** function reads (with a user defined constant)

The **group_materi_hyper_reducedpolynomial** function reads (with user defined constants)

where a summation over is applied.

__Volumetric contributions__

We define . Now a volumetric part can be added to the strain energy.

The **group_materi_hyper_volumetric_linear** contribution reads:

The **group_materi_hyper_volumetric_murnaghan** contribution reads:

The **group_materi_hyper_volumetric_polynomial** contribution reads:

for .

The **group_materi_hyper_volumetric_simotaylor** contribution reads:

The **group_materi_hyper_volumetric_ogden** contribution reads:

As an example, you can combine the **group_materi_hyper_mooney_rivlin**
energy function with the **group_materi_hyper_volumetric_linear** so that
the total strain energy function becomes:

Here the initial shear modulus and bulk modulus are included as:

and

respectively.