VanishingStrain material model that enforces strain components to be zero.
More...
#include <ikarus/finiteelements/mechanics/materials/vanishingstrain.hh>
|
static constexpr std::string | nameImpl () noexcept |
|
static constexpr std::string | name () |
| Get the name of the implemented material. More...
|
|
template<auto strainIndexPair, typename MI>
struct Ikarus::Materials::VanishingStrain< strainIndexPair, MI >
- Template Parameters
-
strainIndexPair | An array of MatrixIndexPair representing fixed stress components. |
MI | The underlying material model. |
◆ MaterialImpl
◆ MaterialParameters
template<auto strainIndexPair, typename MI >
◆ MaterialTensor
template<auto strainIndexPair, typename MI >
◆ ScalarType
template<auto strainIndexPair, typename MI >
◆ StrainMatrix
template<auto strainIndexPair, typename MI >
◆ StressMatrix
template<auto strainIndexPair, typename MI >
◆ Underlying
template<auto strainIndexPair, typename MI >
◆ VanishingStrain()
template<auto strainIndexPair, typename MI >
- Parameters
-
mat | The underlying material model. |
◆ impl() [1/2]
- Returns
- Reference to the underlying material.
◆ impl() [2/2]
- Returns
- Const reference to the underlying material.
◆ materialParameters()
◆ materialParametersImpl()
template<auto strainIndexPair, typename MI >
◆ name()
|
inlinestaticconstexprinherited |
- Returns
- Name of the material.
◆ nameImpl()
template<auto strainIndexPair, typename MI >
|
inlinestaticconstexprnoexcept |
◆ rebind()
template<auto strainIndexPair, typename MI >
template<typename ScalarTypeOther >
◆ storedEnergy()
This function return the free Helmholtz energy of the material
- Template Parameters
-
tag | Strain tag indicating which strain tensor components are passed. |
Derived | The underlying Eigen type. |
- Parameters
-
Eraw | The strain tensor components passed in Voigt notation or matrix notation. |
- Returns
- Scalar return of stored energy.
◆ storedEnergyImpl()
template<auto strainIndexPair, typename MI >
template<typename Derived >
- Template Parameters
-
Derived | The derived type of the input matrix. |
- Parameters
-
- Returns
- ScalarType The stored energy.
◆ stresses()
- Template Parameters
-
tag | Strain tag indicating which strain tensor components are passed. |
voigt | Boolean indicating whether to return Voigt-shaped result. |
Derived | The underlying Eigen type. |
- Parameters
-
Eraw | The strain tensor components passed in Voigt notation or matrix notation. |
- Returns
- Vectorial or Matrix return of stresses.
◆ stressesImpl()
template<auto strainIndexPair, typename MI >
template<bool voigt, typename Derived >
- Template Parameters
-
voigt | A boolean indicating whether to return strains in Voigt notation. |
Derived | The derived type of the input matrix. |
- Parameters
-
Eraw | The Green-Lagrangian strain. |
- Returns
- StressMatrix The strains.
◆ tangentModuli()
- Template Parameters
-
tag | Strain tag indicating which strain tensor components are passed. |
voigt | Boolean indicating whether to return Voigt-shaped result. |
Derived | The underlying Eigen type. |
- Parameters
-
Eraw | The strain tensor components passed in Voigt notation or matrix notation. |
- Returns
- Tangent moduli in Voigt notation or as fourth-order tensor.
◆ tangentModuliImpl()
template<auto strainIndexPair, typename MI >
template<bool voigt, typename Derived >
- Template Parameters
-
voigt | A boolean indicating whether to return tangent moduli in Voigt notation. |
Derived | The derived type of the input matrix. |
- Parameters
-
- Returns
- TangentModuli The tangent moduli.
◆ underlying()
template<auto strainIndexPair, typename MI >
◆ derivativeFactor
For neoHooke the inserted quantity is $C$ the Green-Lagrangian strain tensor, the function relation between the energy and the stresses is $S = 1 \dfrac{\partial\psi(E)}{\partial E}$. This factor is the pre factor, which is the difference to the actual derivative, which is written here
◆ derivativeFactorImpl
template<auto strainIndexPair, typename MI >
◆ dim
template<auto strainIndexPair, typename MI >
◆ energyAcceptsVoigt
template<auto strainIndexPair, typename MI >
◆ fixedPairs
template<auto strainIndexPair, typename MI >
◆ fixedVoigtIndices
template<auto strainIndexPair, typename MI >
◆ freeStrains
template<auto strainIndexPair, typename MI >
◆ freeVoigtIndices
template<auto strainIndexPair, typename MI >
◆ isReduced
◆ moduliAcceptsVoigt
template<auto strainIndexPair, typename MI >
◆ moduliToVoigt
template<auto strainIndexPair, typename MI >
◆ strainTag
template<auto strainIndexPair, typename MI >
◆ stressAcceptsVoigt
template<auto strainIndexPair, typename MI >
◆ stressTag
template<auto strainIndexPair, typename MI >
◆ stressToVoigt
template<auto strainIndexPair, typename MI >
◆ tangentModuliTag
template<auto strainIndexPair, typename MI >
The documentation for this struct was generated from the following file: