KASKADE 7 development version
Classes | Functions

Building blocks for stationary elasticity problems (linear elasticity and hyperelasticity) More...

Classes

class  Kaskade::Elastomechanics::ElasticModulus
 Material parameters for isotropic linearly elastic materials. More...
 
class  Kaskade::Elastomechanics::DetIpm1< dim, Scalar >
 A class for computing determinants and their derivatives. More...
 
class  Kaskade::Elastomechanics::Pstable
 Numerically stable evaluation of \( (x+1)^p -1 \). More...
 
class  Kaskade::Elastomechanics::ShiftedInvariants< dim, Scalar >
 A class for shifted invariants of a tensor. More...
 
class  Kaskade::Elastomechanics::LinearizedGreenLagrangeTensor< Scalar, dim, byValue >
 Linearized (right) Green-Lagrange strain tensor, the workhorse of linear elastomechanics. More...
 
class  Kaskade::Elastomechanics::GreenLagrangeTensor< Scalar, dim, byValue >
 Full (right) Green-Lagrange strain tensor, the workhorse of hyperelasticity. More...
 
class  Kaskade::Elastomechanics::SurfaceGreenLagrangeTensor< Scalar, dim, byValue >
 Full (right) Green-Lagrange strain tensor for displacements from dim-1 to dim. More...
 
class  Kaskade::Elastomechanics::ExtendedGreenLagrangeTensor< Scalar, dim, byValue >
 Full (right) Green-Lagrange strain tensor for displacements from dim-1 to dim. More...
 
class  Kaskade::Elastomechanics::IsochoricGreenLagrangeTensor< dim, Scalar >
 Isochoric part of the full (right) Green-Lagrange strain tensor, used in compressible hyperelasticity. More...
 
class  Kaskade::Elastomechanics::StrainView< Displacement, StrainTensor >
 A function view that provides on the fly computed strain tensors of displacemnts. More...
 
class  Kaskade::Elastomechanics::HyperelasticVariationalFunctional< HyperelasticEnergy, StrainTensor >
 General base class for variational functionals defined in terms of hyperelastic stored energies. More...
 
class  Kaskade::Elastomechanics::LameNavier< dim_, Scalar_ >
 Convenience class for handling linear elastomechanics. More...
 
class  Kaskade::Elastomechanics::OrthotropicLameNavier< Scalar, dim >
 Convenience class for handling orthotropic materials in linear elastomechanics. More...
 
class  Kaskade::Elastomechanics::FirstPiolaKirchhoffStress< HyperelasticEnergy, StrainTensor >
 Represents the first Piola Kirchhoff stress as known in nonlinear elasticity. The Piola-Kirchhoff stress is \( T = F\sigma = (I+u_x) \sigma(u) \). More...
 
class  Kaskade::Elastomechanics::MaterialLaws::MaterialLawBase< dim_, Scalar_, MaterialLaw >
 Base class for hyperelastic material laws, providing default implementations of the stress and the tangent stiffness tensor \( C \). More...
 
class  Kaskade::Elastomechanics::MaterialLaws::InvariantsMaterialLaw< Material >
 Adaptor for hyperelastic material laws, providing an easy way to formulate incompressible material laws in terms of the invariants of the Cauchy-Green strain tensor \( C = I+2E\). More...
 
class  Kaskade::Elastomechanics::MaterialLaws::CompressibleInvariantsMaterialLaw< Material, DeviatoricPenalty >
 Adaptor for hyperelastic material laws, providing an easy way to formulate compressible material laws in terms of the invariants of the isochoric part \( \bar C = C/(det C)^(1/d) \) of the Cauchy-Green strain tensor and a penalization of the deviatoric part \( I_d \). More...
 
class  Kaskade::Elastomechanics::MaterialLaws::StVenantKirchhoff< dim, Scalar >
 The St. Venant-Kirchhoff material, foundation of linear elastomechanics. More...
 
class  Kaskade::Elastomechanics::MaterialLaws::OrthotropicLinearMaterial< dim, Scalar >
 Orthotropic linear material law. More...
 
class  Kaskade::Elastomechanics::MaterialLaws::MooneyRivlin< dimension >
 Mooney-Rivlin material law formulated in terms of the (shifted) invariants \( i_1, i_2, i_3 \) of the doubled Green-Lagrange strain tensor \( 2E \). More...
 
class  Kaskade::Elastomechanics::MaterialLaws::NeoHookean< dimension >
 Neo-Hookean material law formulated in terms of the shifted invariants \( i_1, i_2, i_3 \) of the doubled Green-Lagrange strain tensor \( 2E \). More...
 
class  Kaskade::Elastomechanics::MaterialLaws::BlatzKo< dimension >
 Blatz-Ko material law for rubber foams in terms of the shifted invariants \( i_1, i_2, i_3 \) of the doubled Green-Lagrange strain tensor \( 2E \). More...
 

Functions

template<class Displacement >
auto Kaskade::Elastomechanics::makeLinearizedGreenLagrangeStrainView (Displacement const &u)
 A convenience function for creating function views for linearized Green-Lagrange strain tensors. More...
 
template<class Displacement >
auto Kaskade::Elastomechanics::makeGreenLagrangeStrainView (Displacement const &u)
 A convenience function for creating function views for full Green-Lagrange strain tensors. More...
 
template<class Real , int dim>
std::array< Dune::FieldVector< Real, dim >, dim > Kaskade::Elastomechanics::principalDirections (Dune::FieldMatrix< Real, dim, dim > const &A)
 Computes the dim principal directions of the symmetric positive definite tensor A. More...
 
template<class Function >
double Kaskade::Elastomechanics::orientationPreservingStepsize (Function const &y, Function const &dy, double epsilon)
 Computes the maximal orientation preserving stepsize. More...
 

Detailed Description

Building blocks for stationary elasticity problems (linear elasticity and hyperelasticity)

Function Documentation

◆ makeGreenLagrangeStrainView()

template<class Displacement >
auto Kaskade::Elastomechanics::makeGreenLagrangeStrainView ( Displacement const &  u)

A convenience function for creating function views for full Green-Lagrange strain tensors.

Definition at line 664 of file elasto.hh.

◆ makeLinearizedGreenLagrangeStrainView()

template<class Displacement >
auto Kaskade::Elastomechanics::makeLinearizedGreenLagrangeStrainView ( Displacement const &  u)

A convenience function for creating function views for linearized Green-Lagrange strain tensors.

Definition at line 654 of file elasto.hh.

◆ orientationPreservingStepsize()

template<class Function >
double Kaskade::Elastomechanics::orientationPreservingStepsize ( Function const &  y,
Function const &  dy,
double  epsilon 
)

Computes the maximal orientation preserving stepsize.

Given two FE functions \( y, \delta y \) with \( \det (I+y_x) > 0 \), computes the maximum step size \( \alpha \le 1 \) such that \( \det(I+y_x+\alpha \delta y_x) \ge \epsilon \det (I+y_x) \).

Parameters
epsilon(<1)

Definition at line 734 of file elasto.hh.

◆ principalDirections()

template<class Real , int dim>
std::array< Dune::FieldVector< Real, dim >, dim > Kaskade::Elastomechanics::principalDirections ( Dune::FieldMatrix< Real, dim, dim > const &  A)

Computes the dim principal directions of the symmetric positive definite tensor A.

The vectors are orthogonal to each other and have a length of the corresponding eigenvalue.