Rodin::Solid::FiberKinematics class

Preferred-direction kinematics at a constitutive point.

Public static functions

static auto direction(const ConstitutivePoint& cp) -> Math::SpatialVector<Real>
Reads and normalizes the fiber direction from a constitutive point.
static auto dyad(const Math::SpatialVector<Real>& a) -> Math::SpatialMatrix<Real>
Returns the dyadic tensor $a \otimes a$ .
static auto normalize(Math::SpatialVector<Real> a) -> Math::SpatialVector<Real>
Returns a normalized copy of a when its norm is nonzero.

Constructors, destructors, conversion operators

FiberKinematics()
Constructs default fiber kinematics with zero strain.
FiberKinematics(const KinematicState& state, const Math::SpatialVector<Real>& direction)
Constructs fiber kinematics from a state and reference direction.
FiberKinematics(const ConstitutivePoint& cp) explicit
Constructs fiber kinematics from a constitutive point.

Public functions

auto direction() const -> const Math::SpatialVector<Real>&
Returns the normalized reference fiber direction.
auto tensor() const -> const Math::SpatialMatrix<Real>&
Returns the structural tensor $a_0 \otimes a_0$ .
auto current() const -> const Math::SpatialVector<Real>&
Returns the current fiber direction $F a_0$ .
auto I4() const -> Real
Returns the fiber invariant $I_4 = a_0 \cdot C a_0$ .
auto strain() const -> Real
Returns the Green-Lagrange fiber strain.
auto dStrain(const Math::SpatialMatrix<Real>& dF) const -> Real
Returns the directional derivative of fiber strain.

Function documentation

static Math::SpatialVector<Real> Rodin::Solid::FiberKinematics::direction(const ConstitutivePoint& cp)

Reads and normalizes the fiber direction from a constitutive point.

Parameters
cp Constitutive evaluation point.
Returns Normalized fiber direction, defaulting to the first coordinate axis.

static Math::SpatialMatrix<Real> Rodin::Solid::FiberKinematics::dyad(const Math::SpatialVector<Real>& a)

Returns the dyadic tensor $a \otimes a$ .

Parameters
a Left operand.
Returns The dyadic tensor $a \otimes a$ .

static Math::SpatialVector<Real> Rodin::Solid::FiberKinematics::normalize(Math::SpatialVector<Real> a)

Returns a normalized copy of a when its norm is nonzero.

Parameters
a Left operand.
Returns A normalized copy of a when its norm is nonzero.

Rodin::Solid::FiberKinematics::FiberKinematics(const KinematicState& state, const Math::SpatialVector<Real>& direction)

Constructs fiber kinematics from a state and reference direction.

Parameters
state Kinematic state used to compute the fiber deformation.
direction Reference fiber direction.

Rodin::Solid::FiberKinematics::FiberKinematics(const ConstitutivePoint& cp) explicit

Constructs fiber kinematics from a constitutive point.

Parameters
cp Constitutive evaluation point.

const Math::SpatialVector<Real>& Rodin::Solid::FiberKinematics::direction() const

Returns the normalized reference fiber direction.

Returns The normalized reference fiber direction.

const Math::SpatialMatrix<Real>& Rodin::Solid::FiberKinematics::tensor() const

Returns the structural tensor $a_0 \otimes a_0$ .

Returns The structural tensor $a_0 \otimes a_0$ .

const Math::SpatialVector<Real>& Rodin::Solid::FiberKinematics::current() const

Returns the current fiber direction $F a_0$ .

Returns The current fiber direction $F a_0$ .

Real Rodin::Solid::FiberKinematics::I4() const

Returns the fiber invariant $I_4 = a_0 \cdot C a_0$ .

Returns The fiber invariant $I_4 = a_0 \cdot C a_0$ .

Real Rodin::Solid::FiberKinematics::strain() const

Returns the Green-Lagrange fiber strain.

Returns The Green-Lagrange fiber strain.

Real Rodin::Solid::FiberKinematics::dStrain(const Math::SpatialMatrix<Real>& dF) const

Returns the directional derivative of fiber strain.

Parameters
dF Increment of the deformation gradient.
Returns The directional derivative of fiber strain.