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

Detailed Description

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

Definition at line 59 of file Porosity.h.

#include <Porosity.h>

Public Member Functions

void eval (SpaceTimeData const &x_t, MediaData const &media_data, BiotData const &biot, StrainData< DisplacementDim > const &strain_data, SolidThermalExpansionData< DisplacementDim > const &s_therm_exp_data, PorosityData &porosity_data) const
 
void dEval (SpaceTimeData const &x_t, MediaData const &media_data, PorosityData const &porosity_data, SaturationDataDeriv const &dS_L_dp_cap, BiotData const &biot, SolidThermalExpansionData< DisplacementDim > const &s_therm_exp_data, StrainData< DisplacementDim > const &strain_data, PorosityDerivativeData &porosity_d_data) const
 

Member Function Documentation

◆ dEval()

template<int DisplacementDim>
void ProcessLib::TH2M::ConstitutiveRelations::PorosityModelNonConstantSolidPhaseVolumeFraction< DisplacementDim >::dEval ( SpaceTimeData const & x_t,
MediaData const & media_data,
PorosityData const & porosity_data,
SaturationDataDeriv const & dS_L_dp_cap,
BiotData const & biot,
SolidThermalExpansionData< DisplacementDim > const & s_therm_exp_data,
StrainData< DisplacementDim > const & strain_data,
PorosityDerivativeData & porosity_d_data ) const

Definition at line 77 of file Porosity.cpp.

86{
88
89 auto const& mpl_porosity =
91
92 double const phi_0 =
93 mpl_porosity.template value<double>(variables, x_t.x, x_t.t, x_t.dt);
94
95 static int const KelvinVectorSize =
98 double const div_u = Invariants::trace(strain_data.eps);
99
100 auto const dphi_0_dT = mpl_porosity.template dValue<double>(
101 variables, MaterialPropertyLib::Variable::temperature, x_t.x, x_t.t,
102 x_t.dt);
103
104 porosity_d_data.dphi_dT =
105 dphi_0_dT *
106 (1. + s_therm_exp_data.thermal_volume_strain - biot() * div_u) -
107 (1. - phi_0) * s_therm_exp_data.beta_T_SR;
108
109 porosity_d_data.dphi_L_dp_cap = dS_L_dp_cap() * porosity_data.phi;
110}
constexpr int kelvin_vector_dimensions(int const displacement_dim)
Kelvin vector dimensions for given displacement dimension.

References ProcessLib::TH2M::ConstitutiveRelations::SolidThermalExpansionData< DisplacementDim >::beta_T_SR, ProcessLib::TH2M::ConstitutiveRelations::PorosityDerivativeData::dphi_dT, ProcessLib::TH2M::ConstitutiveRelations::PorosityDerivativeData::dphi_L_dp_cap, ProcessLib::ConstitutiveRelations::SpaceTimeData::dt, ProcessLib::ConstitutiveRelations::StrainData< DisplacementDim >::eps, MathLib::KelvinVector::kelvin_vector_dimensions(), ProcessLib::TH2M::ConstitutiveRelations::MediaData::medium, ProcessLib::TH2M::ConstitutiveRelations::PorosityData::phi, MaterialPropertyLib::porosity, ProcessLib::ConstitutiveRelations::SpaceTimeData::t, MaterialPropertyLib::temperature, ProcessLib::TH2M::ConstitutiveRelations::SolidThermalExpansionData< DisplacementDim >::thermal_volume_strain, and ProcessLib::ConstitutiveRelations::SpaceTimeData::x.

◆ eval()

template<int DisplacementDim>
void ProcessLib::TH2M::ConstitutiveRelations::PorosityModelNonConstantSolidPhaseVolumeFraction< DisplacementDim >::eval ( SpaceTimeData const & x_t,
MediaData const & media_data,
BiotData const & biot,
StrainData< DisplacementDim > const & strain_data,
SolidThermalExpansionData< DisplacementDim > const & s_therm_exp_data,
PorosityData & porosity_data ) const

Definition at line 48 of file Porosity.cpp.

55{
57
58 auto const& mpl_porosity =
60
61 double const phi_0 =
62 mpl_porosity.template value<double>(variables, x_t.x, x_t.t, x_t.dt);
63
64 static int const KelvinVectorSize =
67 double const div_u = Invariants::trace(strain_data.eps);
68
69 double const phi_S =
70 (1. - phi_0) *
71 (1. + s_therm_exp_data.thermal_volume_strain - biot() * div_u);
72
73 porosity_data.phi = 1. - phi_S;
74}

References ProcessLib::ConstitutiveRelations::SpaceTimeData::dt, ProcessLib::ConstitutiveRelations::StrainData< DisplacementDim >::eps, MathLib::KelvinVector::kelvin_vector_dimensions(), ProcessLib::TH2M::ConstitutiveRelations::MediaData::medium, ProcessLib::TH2M::ConstitutiveRelations::PorosityData::phi, MaterialPropertyLib::porosity, ProcessLib::ConstitutiveRelations::SpaceTimeData::t, ProcessLib::TH2M::ConstitutiveRelations::SolidThermalExpansionData< DisplacementDim >::thermal_volume_strain, and ProcessLib::ConstitutiveRelations::SpaceTimeData::x.


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