MooneyRivlin class final
Compressible Mooney-Rivlin hyperelastic law.
Parameterized by material constants and bulk modulus .
Base classes
-
template<class Derived>class HyperElasticLaw<MooneyRivlin>
- CRTP base class for hyperelastic constitutive laws.
Public types
- struct Cache
- Precomputed cache for the Mooney-Rivlin law.
Constructors, destructors, conversion operators
- MooneyRivlin(Real c1, Real c2, Real kappa)
- Constructs a Mooney-Rivlin law.
- MooneyRivlin(const MooneyRivlin& other) defaulted
- Copy constructor.
- MooneyRivlin(MooneyRivlin&& other) defaulted
- Move constructor.
Public functions
- auto getMaterialConstantC1() const -> Real
- Gets .
- auto getMaterialConstantC2() const -> Real
- Gets .
- auto getBulkModulus() const -> Real
- Gets the bulk modulus .
- void setCache(Cache& cache, const ConstitutivePoint& cp) const
- Populates the invariant cache at a constitutive point.
- auto getStrainEnergyDensity(const Cache& cache, const ConstitutivePoint& cp) const -> Real
- Returns the stored strain-energy density.
-
void getFirstPiolaKirchhoffStress(Math::
SpatialMatrix<Real>& P, const Cache& cache, const ConstitutivePoint& cp) const - Computes the first Piola-Kirchhoff stress.
-
void getMaterialTangent(Math::
SpatialMatrix<Real>& dP, const Cache& cache, const ConstitutivePoint& cp, const Math:: SpatialMatrix<Real>& dF) const - Computes the material tangent action.
Function documentation
Rodin:: Solid:: MooneyRivlin:: MooneyRivlin(Real c1,
Real c2,
Real kappa)
Constructs a Mooney-Rivlin law.
| Parameters | |
|---|---|
| c1 | First material constant |
| c2 | Second material constant |
| kappa | Bulk modulus |
Rodin:: Solid:: MooneyRivlin:: MooneyRivlin(const MooneyRivlin& other) defaulted
Copy constructor.
| Parameters | |
|---|---|
| other | Object to copy from. |
Rodin:: Solid:: MooneyRivlin:: MooneyRivlin(MooneyRivlin&& other) defaulted
Move constructor.
| Parameters | |
|---|---|
| other | Object to move from. |
Real Rodin:: Solid:: MooneyRivlin:: getBulkModulus() const
Gets the bulk modulus .
| Returns | The bulk modulus . |
|---|
void Rodin:: Solid:: MooneyRivlin:: setCache(Cache& cache,
const ConstitutivePoint& cp) const
Populates the invariant cache at a constitutive point.
| Parameters | |
|---|---|
| cache | Storage for the constitutive invariant cache. |
| cp | Constitutive evaluation point. |
Real Rodin:: Solid:: MooneyRivlin:: getStrainEnergyDensity(const Cache& cache,
const ConstitutivePoint& cp) const
Returns the stored strain-energy density.
| Parameters | |
|---|---|
| cache | Constitutive invariant cache populated by setCache(). |
| cp | Constitutive evaluation point. |
| Returns | The stored strain-energy density. |
void Rodin:: Solid:: MooneyRivlin:: getFirstPiolaKirchhoffStress(Math:: SpatialMatrix<Real>& P,
const Cache& cache,
const ConstitutivePoint& cp) const
Computes the first Piola-Kirchhoff stress.
| Parameters | |
|---|---|
| P | Storage for the first Piola-Kirchhoff stress. |
| cache | Constitutive invariant cache populated by setCache(). |
| cp | Constitutive evaluation point. |
void Rodin:: Solid:: MooneyRivlin:: getMaterialTangent(Math:: SpatialMatrix<Real>& dP,
const Cache& cache,
const ConstitutivePoint& cp,
const Math:: SpatialMatrix<Real>& dF) const
Computes the material tangent action.
| Parameters | |
|---|---|
| dP | Storage for the resulting stress increment. |
| cache | Constitutive invariant cache populated by setCache(). |
| cp | Constitutive evaluation point. |
| dF | Increment of the deformation gradient. |