CauchyStress

Computes the Cauchy stress from a constitutive law.

Defined in Rodin/Solid/Fields/CauchyStress.h

template <
  class LawDerived>
class CauchyStress;

Usage

NeoHookean law(lambda, mu);
KinematicState state(d);
state.setDisplacementGradient(gradU);
ConstitutivePoint point(state);
law.setConstitutivePoint(point);

CauchyStress<NeoHookean> cauchy(law);
Math::SpatialMatrix<Real> sigma;
cauchy.getCauchyStress(sigma);

Public types

using LawType = LawDerived
Constitutive law type.

Constructors, destructors, conversion operators

CauchyStress(const LawType& law)
Constructs the Cauchy stress evaluator.
CauchyStress(const CauchyStress& other) defaulted
Copy constructor.
CauchyStress(CauchyStress&& other) defaulted
Move constructor.

Public functions

void getCauchyStress(Math::SpatialMatrix<Real>& sigma) const
Computes $ \boldsymbol{\sigma} = \tfrac{1}{J} \mathbf{P} \mathbf{F}^T $ .
auto getLaw() const -> const LawType&
Gets the constitutive law.

Function documentation

CauchyStress(const LawType& law)

Constructs the Cauchy stress evaluator.

Parameters
law Reference to a prepared constitutive law

CauchyStress(const CauchyStress& other) defaulted

Copy constructor.

Parameters
other Object to copy from.

CauchyStress(CauchyStress&& other) defaulted

Move constructor.

Parameters
other Object to move from.

void getCauchyStress(Math::SpatialMatrix<Real>& sigma) const

Computes $ \boldsymbol{\sigma} = \tfrac{1}{J} \mathbf{P} \mathbf{F}^T $ .

Parameters
sigma out Output Cauchy stress tensor

const LawType& getLaw() const

Gets the constitutive law.

Returns The constitutive law.