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 14 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 74 of file ThermoRichardsMechanics/ConstitutiveStress_StrainTemperature/ConstitutiveSetting.cpp.

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

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 45 of file ThermoRichardsMechanics/ConstitutiveStress_StrainTemperature/ConstitutiveSetting.cpp.

51{
52 [[maybe_unused]] static const bool model_order_correct =
54
55 // Set eps_m_prev from potentially non-zero eps and sigma_sw from
56 // restart.
61
63 auto const& sigma_sw =
66 ->eps_m.noalias() =
67 media_data.solid.hasProperty(
69 ? eps + C_el_data.C_el.inverse() * sigma_sw
70 : eps;
71}
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: