OGS
ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::ConstitutiveSetting< DisplacementDim > Struct Template Reference

Detailed Description

template<int DisplacementDim>
struct ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::ConstitutiveSetting< DisplacementDim >

Definition at line 21 of file ThermoRichardsMechanics/ConstitutiveStress_StrainTemperature/ConstitutiveSetting.h.

#include <ConstitutiveSetting.h>

Public Member Functions

void init (ConstitutiveModels< DisplacementDim > &models, double const t, double const dt, ParameterLib::SpatialPosition const &x_position, MediaData const &media_data, TemperatureData< DisplacementDim > const &T_data, StatefulData< DisplacementDim > &state, StatefulDataPrev< DisplacementDim > &prev_state) const
void eval (ConstitutiveModels< DisplacementDim > &models, double const t, double const dt, ParameterLib::SpatialPosition const &x_position, MaterialPropertyLib::Medium const &medium, TemperatureData< DisplacementDim > const &T_data, CapillaryPressureData< DisplacementDim > const &p_cap_data, KelvinVector< DisplacementDim > const &eps_arg, StatefulData< DisplacementDim > &state, StatefulDataPrev< DisplacementDim > const &prev_state, MaterialStateData< DisplacementDim > &mat_state, ConstitutiveTempData< DisplacementDim > &tmp, OutputData< DisplacementDim > &out, ConstitutiveData< DisplacementDim > &cd) const
 Evaluate the constitutive setting.

Static Public Member Functions

static KelvinVector< DisplacementDim > const & statefulStress (StatefulData< DisplacementDim > const &state)
static KelvinVector< DisplacementDim > & statefulStress (StatefulData< DisplacementDim > &state)
static void convertInitialStressType (StatefulData< DisplacementDim > &state, StatefulDataPrev< DisplacementDim > &prev_state, KelvinVector< DisplacementDim > const &pore_pressure_part)

Member Function Documentation

◆ convertInitialStressType()

template<int DisplacementDim>
void ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::ConstitutiveSetting< DisplacementDim >::convertInitialStressType ( StatefulData< DisplacementDim > & state,
StatefulDataPrev< DisplacementDim > & prev_state,
KelvinVector< DisplacementDim > const & pore_pressure_part )
inlinestatic

◆ eval()

template<int DisplacementDim>
void ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::ConstitutiveSetting< DisplacementDim >::eval ( ConstitutiveModels< DisplacementDim > & models,
double const t,
double const dt,
ParameterLib::SpatialPosition const & x_position,
MaterialPropertyLib::Medium const & medium,
TemperatureData< DisplacementDim > const & T_data,
CapillaryPressureData< DisplacementDim > const & p_cap_data,
KelvinVector< DisplacementDim > const & eps_arg,
StatefulData< DisplacementDim > & state,
StatefulDataPrev< DisplacementDim > const & prev_state,
MaterialStateData< DisplacementDim > & mat_state,
ConstitutiveTempData< DisplacementDim > & tmp,
OutputData< DisplacementDim > & out,
ConstitutiveData< DisplacementDim > & cd ) const

Evaluate the constitutive setting.

Definition at line 81 of file ThermoRichardsMechanics/ConstitutiveStress_StrainTemperature/ConstitutiveSetting.cpp.

94{
97
99
100 // TODO will eps lag one iteration behind? (since it's not updated after
101 // solving the global equation system)
103
106
107 // TODO why not ordinary state tracking for BishopsPrevModel?
108
109 {
110 auto const& biot_data = std::get<BiotData>(tmp);
112
113 if (biot_data() < poro_data.phi)
114 {
115 OGS_FATAL(
116 "ThermoRichardsMechanics: Biot-coefficient {} is smaller than "
117 "porosity {} in element {}.",
118 biot_data(), poro_data.phi, *x_position.getElementID());
119 }
120 }
121}
#define OGS_FATAL(...)
Definition Error.h:26
void evalAllInOrder(Functions &fs, Tuples &... ts)
Definition Apply.h:294

References ProcessLib::Graph::evalAllInOrder(), ParameterLib::SpatialPosition::getElementID(), and OGS_FATAL.

Referenced by init().

◆ init()

template<int DisplacementDim>
void ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::ConstitutiveSetting< DisplacementDim >::init ( ConstitutiveModels< DisplacementDim > & models,
double const t,
double const dt,
ParameterLib::SpatialPosition const & x_position,
MediaData const & media_data,
TemperatureData< DisplacementDim > const & T_data,
StatefulData< DisplacementDim > & state,
StatefulDataPrev< DisplacementDim > & prev_state ) const

Definition at line 52 of file ThermoRichardsMechanics/ConstitutiveStress_StrainTemperature/ConstitutiveSetting.cpp.

58{
59 [[maybe_unused]] static const bool model_order_correct =
61
62 // Set eps_m_prev from potentially non-zero eps and sigma_sw from
63 // restart.
68
70 auto const& sigma_sw =
73 ->eps_m.noalias() =
74 media_data.solid.hasProperty(
76 ? eps + C_el_data.C_el.inverse() * sigma_sw
77 : eps;
78}
void eval(ConstitutiveModels< DisplacementDim > &models, double const t, double const dt, ParameterLib::SpatialPosition const &x_position, MaterialPropertyLib::Medium const &medium, TemperatureData< DisplacementDim > const &T_data, CapillaryPressureData< DisplacementDim > const &p_cap_data, KelvinVector< DisplacementDim > const &eps_arg, StatefulData< DisplacementDim > &state, StatefulDataPrev< DisplacementDim > const &prev_state, MaterialStateData< DisplacementDim > &mat_state, ConstitutiveTempData< DisplacementDim > &tmp, OutputData< DisplacementDim > &out, ConstitutiveData< DisplacementDim > &cd) const
Evaluate the constitutive setting.

References ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::ElasticTangentStiffnessData< DisplacementDim >::C_el, ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::checkCorrectModelEvalOrder(), eval(), MaterialPropertyLib::Phase::hasProperty(), ProcessLib::ThermoRichardsMechanics::MediaData::solid, and MaterialPropertyLib::swelling_stress_rate.

◆ statefulStress() [1/2]

template<int DisplacementDim>
KelvinVector< DisplacementDim > & ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::ConstitutiveSetting< DisplacementDim >::statefulStress ( StatefulData< DisplacementDim > & state)
inlinestatic

◆ statefulStress() [2/2]

template<int DisplacementDim>
KelvinVector< DisplacementDim > const & ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::ConstitutiveSetting< DisplacementDim >::statefulStress ( StatefulData< DisplacementDim > const & state)
inlinestatic

The documentation for this struct was generated from the following files: