Rodin/Solid/Integrators/InternalVirtualWorkResidual.h file

Residual integrators for the internal virtual work in hyperelastic formulations (pure displacement and mixed displacement-pressure), written in terms of the first Piola-Kirchhoff stress.

Pure displacement:

\[ \delta W^{\text{int}}(\mathbf{v}) = \int_{\Omega_0} \mathbf{P}(\mathbf{u}) : \nabla_0 \mathbf{v} \, dX \]

Mixed u-p formulation with $ \mathbf{P} = \mathbf{P}_{\text{iso}} + p\,J\,\mathbf{F}^{-T} $ :

  • Momentum residual $ R_u $ : InternalVirtualWorkResidual(law, v, displacement, pressure)
  • Incompressibility residual $ R_p(q) = \int_{\Omega_0} (J - 1)\, q \, dX $ : InternalVirtualWorkResidualP(q, displacement)

Namespaces

namespace Rodin
The Rodin library for finite element methods and shape optimization.
namespace Rodin::Solid
Hyperelastic solid mechanics module for large-deformation problems.

Classes

template<class LawDerived, class TestFunctionType, class DisplacementType>
class Rodin::Solid::InternalVirtualWorkResidual<LawDerived, TestFunctionType, DisplacementType>
Momentum residual (pure displacement formulation).
template<class LawDerived, class TestFunctionType, class DisplacementType, class PressureType>
class Rodin::Solid::InternalVirtualWorkResidual<LawDerived, TestFunctionType, DisplacementType, PressureType>
Momentum residual of the mixed u-p formulation. Bound to the displacement test function $ \mathbf{v} $ .
template<class TestPressFunctionType, class DisplacementType>
class Rodin::Solid::InternalVirtualWorkResidualP
Incompressibility constraint residual of the mixed u-p formulation. Bound to the pressure test function $ q $ .