Deformation of a solid body using the theory of linear elasticity (small deformations) More...
#include <dune/common/fvector.hh>
#include <dumux/common/properties.hh>
#include <dumux/common/properties/model.hh>
#include <dumux/geomechanics/properties.hh>
#include <dumux/flux/hookeslaw.hh>
#include "indices.hh"
#include "localresidual.hh"
#include "volumevariables.hh"
Go to the source code of this file.
This model describes the deformation of a solid body using the theory of linear elasticity. The momentum balance equation of the solid body can be expressed by
\[ \nabla\cdot\boldsymbol{\sigma} + \rho \mathbf{g} + \mathbf{f} = \rho\ddot{\mathbf{u}}, \]
where \( \boldsymbol{\sigma} \) is the stress tensor, \( \rho \) is the density of the solid, \( \mathbf{f} \) in \( \mathrm{N/m^3} \) is the external force acting on the body per unit volume (e.g. magnetism), and \( \mathbf{u} = \mathbf{x} - \mathbf{x}_{\mathrm{initial}} \) is the displacement, defined as the difference in material points \( \mathbf{x} \) and \( \mathbf{x}_{\mathrm{initial}} \) in the deformed and undeformed (initial) state, respectively. The model assumes quasi-static conditions, that is, the above momentum balance equation is solved under the assumption that the acceleration term \( \rho\ddot{\mathbf{u}} \approx 0\).
Per default, Hookes' Law is used for expressing the stress tensor \( \boldsymbol{\sigma} \) as a function of the displacement:
\[ \boldsymbol{\sigma} = \lambda\mathrm{tr}(\boldsymbol{\varepsilon}) \mathbf{I} + 2G \boldsymbol{\varepsilon}, \]
with
\[ \boldsymbol{\varepsilon} = \frac{1}{2} \left[ \nabla\mathbf{u} + (\nabla\mathbf{u})^{\mathrm{T}} \right]. \]
Primary variables are the displacements in each direction \( \mathbf{u} \). Gravity can be enabled or disabled via a runtime parameter.
Classes | |
struct | Dumux::ElasticModelTraits< dim, numSolidComp > |
Specifies a number properties of the elastic model. More... | |
struct | Dumux::ElasticVolumeVariablesTraits< PV, DV, MT, SST, SSY > |
Traits class for the volume variables of the elastic model. More... | |
struct | Dumux::Properties::TTag::Elastic |
struct | Dumux::Properties::LocalResidual< TypeTag, TTag::Elastic > |
Use the local residual of the elastic model. More... | |
struct | Dumux::Properties::ModelTraits< TypeTag, TTag::Elastic > |
The model traits of the elastic model. More... | |
struct | Dumux::Properties::VolumeVariables< TypeTag, TTag::Elastic > |
Set the volume variables property. More... | |
struct | Dumux::Properties::StressType< TypeTag, TTag::Elastic > |
By default, we use hooke's law for stress evaluations. More... | |
Namespaces | |
namespace | Dumux |
namespace | Dumux::Properties |
The energy balance equation for a porous solid. | |
namespace | Dumux::Properties::TTag |
Type tag for numeric models. | |