NeoHookean final

Compressible Neo-Hookean hyperelastic law.

Defined in Rodin/Solid/Constitutive/NeoHookean.h

class NeoHookean final;
Direct inheritance by class family
↓
NeoHookean

Inherits from

Base classResponsibility
HyperElasticLaw<NeoHookean>public
Full type
HyperElasticLaw< NeoHookean >
CRTP base class for hyperelastic constitutive laws.

Inherited interface

Declared inMembers
HyperElasticLaw
4 members

Constructors, destructors, conversion operators

NeoHookean(Real lambda, Real mu)
Constructs a Neo-Hookean law with the given Lamé parameters.
NeoHookean(const NeoHookean& other) defaulted
Copy constructor.
NeoHookean(NeoHookean&& other) defaulted
Move constructor.

Public functions

auto getLameFirstParameter() const -> Real
Gets the first Lamé parameter.
auto getShearModulus() const -> Real
Gets the shear modulus.
auto setConstitutivePoint(const ConstitutivePoint& cp) -> NeoHookean&
Binds owned evaluation data, reusing unchanged constitutive inputs.
auto getKinematicState() const -> const KinematicState&
Returns the owned kinematics of the prepared point.
auto getStrainEnergyDensity() const -> Real
Returns the strain-energy density at the prepared point.
void getFirstPiolaKirchhoffStress(Math::SpatialMatrix<Real>& P) const
Computes stress at the prepared point.
void getMaterialTangent(Math::SpatialMatrix<Real>& dP, const Math::SpatialMatrix<Real>& dF) const
Computes the tangent action at the prepared point.

Function documentation

NeoHookean(Real lambda, Real mu)

Constructs a Neo-Hookean law with the given Lamé parameters.

Parameters
lambda First Lamé parameter $ \lambda $
mu Second Lamé parameter (shear modulus) $ \mu $

NeoHookean(const NeoHookean& other) defaulted

Copy constructor.

Parameters
other Object to copy from.

NeoHookean(NeoHookean&& other) defaulted

Move constructor.

Parameters
other Object to move from.

Real getLameFirstParameter() const

Gets the first Lamé parameter.

Returns The first Lamé parameter.

Real getShearModulus() const

Gets the shear modulus.

Returns The shear modulus.

NeoHookean& setConstitutivePoint(const ConstitutivePoint& cp)

Binds owned evaluation data, reusing unchanged constitutive inputs.

Parameters
cp Constitutive point supplying kinematics and law-specific inputs.
Returns This law after successful binding.

const KinematicState& getKinematicState() const

Returns the owned kinematics of the prepared point.

Returns Prepared kinematic state.

Real getStrainEnergyDensity() const

Returns the strain-energy density at the prepared point.

Returns Stored strain-energy density.

void getFirstPiolaKirchhoffStress(Math::SpatialMatrix<Real>& P) const

Computes stress at the prepared point.

Parameters
P Output first Piola-Kirchhoff stress.

void getMaterialTangent(Math::SpatialMatrix<Real>& dP, const Math::SpatialMatrix<Real>& dF) const

Computes the tangent action at the prepared point.

Parameters
dP Output stress increment.
dF Deformation-gradient increment.