Loading [MathJax]/jax/output/HTML-CSS/config.js
OGS
ProcessLib::TH2M::ConstitutiveRelations::SolidDensityModel< DisplacementDim > Struct Template Reference

Detailed Description

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

Definition at line 45 of file SolidDensity.h.

#include <SolidDensity.h>

Public Member Functions

void eval (SpaceTimeData const &x_t, MediaData const &media_data, TemperatureData const &T_data, ProcessLib::ConstitutiveRelations::EffectiveStressData< DisplacementDim > const &sigma_eff_data, CapillaryPressureData const &p_cap, GasPressureData const &p_GR, BishopsData const &chi_S_L, PorosityData const &poro_data, SolidDensityData &solid_density_data) const
 
void dEval (SpaceTimeData const &x_t, MediaData const &media_data, TemperatureData const &T_data, ProcessLib::ConstitutiveRelations::EffectiveStressData< DisplacementDim > const &sigma_eff_data, CapillaryPressureData const &p_cap, GasPressureData const &p_GR, BishopsData const &chi_S_L, PorosityData const &poro_data, SolidDensityDerivativeData &solid_density_d_data) const
 

Member Function Documentation

◆ dEval()

template<int DisplacementDim>
void ProcessLib::TH2M::ConstitutiveRelations::SolidDensityModel< DisplacementDim >::dEval ( SpaceTimeData const & x_t,
MediaData const & media_data,
TemperatureData const & T_data,
ProcessLib::ConstitutiveRelations::EffectiveStressData< DisplacementDim > const & sigma_eff_data,
CapillaryPressureData const & p_cap,
GasPressureData const & p_GR,
BishopsData const & chi_S_L,
PorosityData const & poro_data,
SolidDensityDerivativeData & solid_density_d_data ) const

Definition at line 52 of file SolidDensity.cpp.

63{
65 variables.temperature = T_data.T;
66
67 double const p_FR = (1 - chi_S_L.chi_S_L) * p_GR.pG +
68 chi_S_L.chi_S_L * (p_GR.pG - p_cap.pCap);
69
70 auto const& identity2 = MathLib::KelvinVector::Invariants<
72 DisplacementDim)>::identity2;
73
74 variables.solid_grain_pressure =
75 p_FR -
76 sigma_eff_data.sigma_eff.dot(identity2) / (3 * (1 - poro_data.phi));
77
78 auto const& mpl_solid_density =
80
81 solid_density_d_data.drho_SR_dT = mpl_solid_density.template dValue<double>(
82 variables, MaterialPropertyLib::Variable::temperature, x_t.x, x_t.t,
83 x_t.dt);
84}
constexpr int kelvin_vector_dimensions(int const displacement_dim)
Kelvin vector dimensions for given displacement dimension.
MathLib::KelvinVector::KelvinVectorType< DisplacementDim > sigma_eff

References ProcessLib::TH2M::ConstitutiveRelations::BishopsData::chi_S_L, MaterialPropertyLib::density, ProcessLib::TH2M::ConstitutiveRelations::SolidDensityDerivativeData::drho_SR_dT, ProcessLib::ConstitutiveRelations::SpaceTimeData::dt, MathLib::KelvinVector::kelvin_vector_dimensions(), ProcessLib::TH2M::ConstitutiveRelations::CapillaryPressureData::pCap, ProcessLib::TH2M::ConstitutiveRelations::GasPressureData::pG, ProcessLib::TH2M::ConstitutiveRelations::PorosityData::phi, ProcessLib::TH2M::ConstitutiveRelations::MediaData::solid, MaterialPropertyLib::VariableArray::solid_grain_pressure, ProcessLib::TH2M::ConstitutiveRelations::TemperatureData::T, ProcessLib::ConstitutiveRelations::SpaceTimeData::t, MaterialPropertyLib::temperature, MaterialPropertyLib::VariableArray::temperature, and ProcessLib::ConstitutiveRelations::SpaceTimeData::x.

◆ eval()

template<int DisplacementDim>
void ProcessLib::TH2M::ConstitutiveRelations::SolidDensityModel< DisplacementDim >::eval ( SpaceTimeData const & x_t,
MediaData const & media_data,
TemperatureData const & T_data,
ProcessLib::ConstitutiveRelations::EffectiveStressData< DisplacementDim > const & sigma_eff_data,
CapillaryPressureData const & p_cap,
GasPressureData const & p_GR,
BishopsData const & chi_S_L,
PorosityData const & poro_data,
SolidDensityData & solid_density_data ) const

Definition at line 18 of file SolidDensity.cpp.

29{
31 variables.temperature = T_data.T;
32
33 double const p_FR = (1 - chi_S_L.chi_S_L) * p_GR.pG +
34 chi_S_L.chi_S_L * (p_GR.pG - p_cap.pCap);
35
36 auto const& identity2 = MathLib::KelvinVector::Invariants<
38 DisplacementDim)>::identity2;
39
40 variables.solid_grain_pressure =
41 p_FR -
42 sigma_eff_data.sigma_eff.dot(identity2) / (3 * (1 - poro_data.phi));
43
44 auto const& mpl_solid_density =
46
47 solid_density_data.rho_SR = mpl_solid_density.template value<double>(
48 variables, x_t.x, x_t.t, x_t.dt);
49}

References ProcessLib::TH2M::ConstitutiveRelations::BishopsData::chi_S_L, MaterialPropertyLib::density, ProcessLib::ConstitutiveRelations::SpaceTimeData::dt, MathLib::KelvinVector::kelvin_vector_dimensions(), ProcessLib::TH2M::ConstitutiveRelations::CapillaryPressureData::pCap, ProcessLib::TH2M::ConstitutiveRelations::GasPressureData::pG, ProcessLib::TH2M::ConstitutiveRelations::PorosityData::phi, ProcessLib::TH2M::ConstitutiveRelations::SolidDensityData::rho_SR, ProcessLib::TH2M::ConstitutiveRelations::MediaData::solid, MaterialPropertyLib::VariableArray::solid_grain_pressure, ProcessLib::TH2M::ConstitutiveRelations::TemperatureData::T, ProcessLib::ConstitutiveRelations::SpaceTimeData::t, MaterialPropertyLib::VariableArray::temperature, and ProcessLib::ConstitutiveRelations::SpaceTimeData::x.


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