version 3.11-dev
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
Hyperelastic solid mechanics

Models nonlinear deformation of an elastic solid. More...

Description

Hyperelastic model.

Deformation of a solid body using the theory of (nonlinear) elasticity (large deformations)

This model describes the deformation of a solid body using the finite strain theory. The displacement vector of a material point following the deformation function x=χ(X) is given by the difference of current position and position in the reference configuration:

d=xX.

An important kinematic quantity characterizing the deformation is the deformation gradient

F=xX=I+d.

The equilibrium equation (nonlinear elastostatics) in the reference frame is given by

P=f

where f in N/m3 is the external force acting on the body per unit volume and P=P(F) is the first Piola-Kirchhoff stress tensor which relates the stress in the current and the reference configuration. It is related to the Cauchy stress, P=JσFT, where J=detF.

A suitable constitutive law for P=P(F) completes the model. All hyperelastic materials can be described in terms of a strain energy density function ψ(F) [66] and the first Piola-Kirchhoff stress tensor can be computed as

P=ψF=F2ψC,

where C=FTF is the right Cauchy-Green tensor and the term S=2(ψ/C) is the second Piola-Kirchhoff stress tensor. This model expects the user problem implementation to provide a function firstPiolaKirchhoffStressTensor(F) implementing the constitutive law.

Files

file  solidmechanics/hyperelastic/localresidual.hh
 Local residual for the hyperelastic model.
 
file  solidmechanics/hyperelastic/model.hh
 Hyperelastic model.
 
file  solidmechanics/hyperelastic/spatialparams.hh
 Default implementation of the spatial params.
 
file  solidmechanics/hyperelastic/volumevariables.hh
 Volume variables for the hyperelasticity model.
 

Classes

class  Dumux::HyperelasticLocalResidual< TypeTag >
 Local residual for the hyperelastic model. More...
 
struct  Dumux::HyperelasticModelTraits< dim >
 HyperelasticModelTraits. More...
 
class  Dumux::HyperelasticVolumeVariables< Traits >
 Volume variables for the hyperelasticity model. More...