version 3.11-dev
Loading...
Searching...
No Matches

Pressure local residual for the mixed u–p hyperelastic model. More...

#include <dumux/solidmechanics/hyperelastic_voliso/localresidual.hh>

Inheritance diagram for Dumux::HyperelasticVolIsoPressureLocalResidual< TypeTag >:

Description

template<class TypeTag>
class Dumux::HyperelasticVolIsoPressureLocalResidual< TypeTag >

Enforces the algebraic pressure constraint

\[ p_s^{\mathrm{eq}}(J) - p_s = 0 \]

averaged over each SCV. The equilibrium pressure \( p_s^{\mathrm{eq}}(J) \) is supplied by the pressure problem via problem.volumetricPressure(J).

Public Types

using ElementResidualVector = typename ParentType::ElementResidualVector

Public Member Functions

NumEqVector computeStorage (const Problem &, const auto &, const auto &) const
NumEqVector storageIntegral (const ElementDiscretization &, const ElementVariables &, const auto &, bool) const
NumEqVector fluxIntegral (const ElementDiscretization &, const ElementVariables &, const auto &) const
template<class SubControlVolume_>
NumEqVector sourceIntegral (const ElementDiscretization &elemDisc, const ElementVariables &elemVars, const SubControlVolume_ &scv) const
 Pressure constraint integrated over an SCV.
void addToElementFluxAndSourceResidual (ElementResidualVector &residual, const Problem &problem, const auto &element, const ElementDiscretization &elemDisc, const ElementVariables &elemVars) const
 FE contributions for non-CV DOFs.

Member Typedef Documentation

◆ ElementResidualVector

template<class TypeTag>
using Dumux::HyperelasticVolIsoPressureLocalResidual< TypeTag >::ElementResidualVector = typename ParentType::ElementResidualVector

Member Function Documentation

◆ addToElementFluxAndSourceResidual()

template<class TypeTag>
void Dumux::HyperelasticVolIsoPressureLocalResidual< TypeTag >::addToElementFluxAndSourceResidual ( ElementResidualVector & residual,
const Problem & problem,
const auto & element,
const ElementDiscretization & elemDisc,
const ElementVariables & elemVars ) const
inline

◆ computeStorage()

template<class TypeTag>
NumEqVector Dumux::HyperelasticVolIsoPressureLocalResidual< TypeTag >::computeStorage ( const Problem & ,
const auto & ,
const auto &  ) const
inline

◆ fluxIntegral()

template<class TypeTag>
NumEqVector Dumux::HyperelasticVolIsoPressureLocalResidual< TypeTag >::fluxIntegral ( const ElementDiscretization & ,
const ElementVariables & ,
const auto &  ) const
inline

◆ sourceIntegral()

template<class TypeTag>
template<class SubControlVolume_>
NumEqVector Dumux::HyperelasticVolIsoPressureLocalResidual< TypeTag >::sourceIntegral ( const ElementDiscretization & elemDisc,
const ElementVariables & elemVars,
const SubControlVolume_ & scv ) const
inline

Returns \( -(p_s^{\mathrm{eq}}(\bar J) - p_s) \) (negated because evalSource subtracts the source, so the residual contribution is \( p_s^{\mathrm{eq}} - p_s = 0 \) at equilibrium).

◆ storageIntegral()

template<class TypeTag>
NumEqVector Dumux::HyperelasticVolIsoPressureLocalResidual< TypeTag >::storageIntegral ( const ElementDiscretization & ,
const ElementVariables & ,
const auto & ,
bool  ) const
inline

The documentation for this class was generated from the following file: