OGS
ProcessLib::TH2M::ConstitutiveRelations::SolidMechanicsModel< DisplacementDim > Struct Template Reference

Detailed Description

template<int DisplacementDim>
struct ProcessLib::TH2M::ConstitutiveRelations::SolidMechanicsModel< DisplacementDim >

Definition at line 29 of file TH2M/ConstitutiveRelations/SolidMechanics.h.

#include <SolidMechanics.h>

Public Member Functions

 SolidMechanicsModel (SolidConstitutiveRelation< DisplacementDim > const &solid_material)
void eval (const SpaceTimeData &x_t, TemperatureData const &T_data, MechanicalStrainData< DisplacementDim > const &mechanical_strain_data, PrevState< MechanicalStrainData< DisplacementDim > > const &mechanical_strain_prev_data, PrevState< ProcessLib::ConstitutiveRelations::EffectiveStressData< DisplacementDim > > const &eff_stress_prev_data, ProcessLib::ConstitutiveRelations::EffectiveStressData< DisplacementDim > &eff_stress_data, MaterialStateData< DisplacementDim > &mat_state, SolidMechanicsDataStateless< DisplacementDim > &out, EquivalentPlasticStrainData &equivalent_plastic_strain) const
auto getInternalVariables () const

Private Attributes

SolidConstitutiveRelation< DisplacementDim > const & solid_material_

Constructor & Destructor Documentation

◆ SolidMechanicsModel()

template<int DisplacementDim>
ProcessLib::TH2M::ConstitutiveRelations::SolidMechanicsModel< DisplacementDim >::SolidMechanicsModel ( SolidConstitutiveRelation< DisplacementDim > const & solid_material)
inlineexplicit

Member Function Documentation

◆ eval()

template<int DisplacementDim>
void ProcessLib::TH2M::ConstitutiveRelations::SolidMechanicsModel< DisplacementDim >::eval ( const SpaceTimeData & x_t,
TemperatureData const & T_data,
MechanicalStrainData< DisplacementDim > const & mechanical_strain_data,
PrevState< MechanicalStrainData< DisplacementDim > > const & mechanical_strain_prev_data,
PrevState< ProcessLib::ConstitutiveRelations::EffectiveStressData< DisplacementDim > > const & eff_stress_prev_data,
ProcessLib::ConstitutiveRelations::EffectiveStressData< DisplacementDim > & eff_stress_data,
MaterialStateData< DisplacementDim > & mat_state,
SolidMechanicsDataStateless< DisplacementDim > & out,
EquivalentPlasticStrainData & equivalent_plastic_strain ) const

Definition at line 11 of file TH2M/ConstitutiveRelations/SolidMechanics.cpp.

24{
25 namespace MPL = MaterialPropertyLib;
27
28 variables.mechanical_strain.emplace<KelvinVector<DisplacementDim>>(
30 variables.temperature = T_data.T;
31
34 eff_stress_prev_data->sigma_eff);
35 variables_prev.mechanical_strain.emplace<KelvinVector<DisplacementDim>>(
37 variables_prev.temperature = T_data.T_prev;
38
39 auto solution = solid_material_.integrateStress(
41 *mat_state.material_state_variables);
42
43 if (!solution)
44 {
45 OGS_FATAL("Computation of local constitutive relation failed.");
46 }
47
48 std::tie(eff_stress_data.sigma_eff, mat_state.material_state_variables,
49 out.stiffness_tensor) = std::move(*solution);
50
52 mat_state.material_state_variables->getEquivalentPlasticStrain();
53}
#define OGS_FATAL(...)
Definition Error.h:19

References ProcessLib::ConstitutiveRelations::SpaceTimeData::dt, ProcessLib::ConstitutiveRelations::MechanicalStrainData< DisplacementDim >::eps_m, ProcessLib::TH2M::ConstitutiveRelations::MaterialStateData< DisplacementDim >::material_state_variables, MaterialPropertyLib::VariableArray::mechanical_strain, OGS_FATAL, ProcessLib::ConstitutiveRelations::EffectiveStressData< DisplacementDim >::sigma_eff, solid_material_, ProcessLib::TH2M::ConstitutiveRelations::SolidMechanicsDataStateless< DisplacementDim >::stiffness_tensor, MaterialPropertyLib::VariableArray::stress, ProcessLib::TH2M::ConstitutiveRelations::TemperatureData::T, ProcessLib::ConstitutiveRelations::SpaceTimeData::t, ProcessLib::TH2M::ConstitutiveRelations::TemperatureData::T_prev, MaterialPropertyLib::VariableArray::temperature, and ProcessLib::ConstitutiveRelations::SpaceTimeData::x.

◆ getInternalVariables()

template<int DisplacementDim>
auto ProcessLib::TH2M::ConstitutiveRelations::SolidMechanicsModel< DisplacementDim >::getInternalVariables ( ) const
inline

Definition at line 51 of file TH2M/ConstitutiveRelations/SolidMechanics.h.

52 {
53 return solid_material_.getInternalVariables();
54 }

References solid_material_.

Member Data Documentation

◆ solid_material_

template<int DisplacementDim>
SolidConstitutiveRelation<DisplacementDim> const& ProcessLib::TH2M::ConstitutiveRelations::SolidMechanicsModel< DisplacementDim >::solid_material_
private

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