Loading [MathJax]/extensions/tex2jax.js
OGS
ProcessLib::TH2M::ConstitutiveRelations::TransportPorosityModel< DisplacementDim > Struct Template Reference

Detailed Description

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

Definition at line 47 of file TransportPorosity.h.

#include <TransportPorosity.h>

Public Member Functions

void eval (SpaceTimeData const &x_t, MediaData const &media_data, SaturationData const &S_L_data, PrevState< SaturationData > const &S_L_prev_data, CapillaryPressureData const &p_cap, GasPressureData const &p_GR, BishopsData const &chi_S_L, PrevState< BishopsData > const &chi_S_L_prev, SolidCompressibilityData const &solid_compressibility, MechanicalStrainData< DisplacementDim > const &eps_m_data, PrevState< MechanicalStrainData< DisplacementDim > > const &eps_m_prev_data, PrevState< TransportPorosityData > const &transport_porosity_prev_data, PorosityData const &poro_data, TransportPorosityData &transport_porosity_data) const
 
void dEval (SpaceTimeData const &x_t, MediaData const &media_data, SaturationData const &S_L_data, PrevState< SaturationData > const &S_L_prev_data, CapillaryPressureData const &p_cap, GasPressureData const &p_GR, BishopsData const &chi_S_L, PrevState< BishopsData > const &chi_S_L_prev, SolidCompressibilityData const &solid_compressibility, MechanicalStrainData< DisplacementDim > const &eps_m_data, PrevState< MechanicalStrainData< DisplacementDim > > const &eps_m_prev_data, PrevState< TransportPorosityData > const &transport_porosity_prev_data, PorosityData const &poro_data, TransportPorosityDerivativeData &transport_porosity_d_data) const
 

Member Function Documentation

◆ dEval()

template<int DisplacementDim>
void ProcessLib::TH2M::ConstitutiveRelations::TransportPorosityModel< DisplacementDim >::dEval ( SpaceTimeData const & x_t,
MediaData const & media_data,
SaturationData const & S_L_data,
PrevState< SaturationData > const & S_L_prev_data,
CapillaryPressureData const & p_cap,
GasPressureData const & p_GR,
BishopsData const & chi_S_L,
PrevState< BishopsData > const & chi_S_L_prev,
SolidCompressibilityData const & solid_compressibility,
MechanicalStrainData< DisplacementDim > const & eps_m_data,
PrevState< MechanicalStrainData< DisplacementDim > > const & eps_m_prev_data,
PrevState< TransportPorosityData > const & transport_porosity_prev_data,
PorosityData const & poro_data,
TransportPorosityDerivativeData & transport_porosity_d_data ) const

Definition at line 68 of file TransportPorosity.cpp.

80{
81 static int const KelvinVectorSize =
84
87
88 variables.grain_compressibility = solid_compressibility();
89
90 variables.liquid_saturation = S_L_data.S_L;
91 variables_prev.liquid_saturation = S_L_prev_data->S_L;
92
93 variables.effective_pore_pressure =
94 (1 - chi_S_L.chi_S_L) * p_GR.pG +
95 chi_S_L.chi_S_L * (p_GR.pG - p_cap.pCap);
96
97 // Used in MaterialLib/MPL/Properties/PorosityFromMassBalance.cpp
98 // and MaterialLib/MPL/Properties/TransportPorosityFromMassBalance.cpp
99 variables_prev.effective_pore_pressure =
100 (1 - chi_S_L_prev->chi_S_L) * p_GR.pG_prev +
101 chi_S_L_prev->chi_S_L * (p_GR.pG_prev - p_cap.pCap_prev);
102
104 Invariants::trace(eps_m_data.eps_m);
105 variables_prev.volumetric_mechanical_strain =
106 Invariants::trace(eps_m_prev_data->eps_m);
107
108 variables_prev.transport_porosity = transport_porosity_prev_data->phi;
109 variables.porosity = poro_data.phi;
110
111 auto const& mpl_transport_porosity =
112 media_data
114
115 transport_porosity_d_data.dphi_dT =
116 mpl_transport_porosity.template dValue<double>(
117 variables, variables_prev,
118 MaterialPropertyLib::Variable::temperature, x_t.x, x_t.t, x_t.dt);
119
120 transport_porosity_d_data.dphi_L_dp_cap =
121 mpl_transport_porosity.template dValue<double>(
122 variables, variables_prev,
124 x_t.dt);
125}
constexpr int kelvin_vector_dimensions(int const displacement_dim)
Kelvin vector dimensions for given displacement dimension.

References MaterialPropertyLib::capillary_pressure, ProcessLib::TH2M::ConstitutiveRelations::BishopsData::chi_S_L, ProcessLib::TH2M::ConstitutiveRelations::TransportPorosityDerivativeData::dphi_dT, ProcessLib::TH2M::ConstitutiveRelations::TransportPorosityDerivativeData::dphi_L_dp_cap, ProcessLib::ConstitutiveRelations::SpaceTimeData::dt, MaterialPropertyLib::VariableArray::effective_pore_pressure, ProcessLib::ConstitutiveRelations::MechanicalStrainData< DisplacementDim >::eps_m, MaterialPropertyLib::VariableArray::grain_compressibility, MathLib::KelvinVector::kelvin_vector_dimensions(), MaterialPropertyLib::VariableArray::liquid_saturation, ProcessLib::TH2M::ConstitutiveRelations::MediaData::medium, ProcessLib::TH2M::ConstitutiveRelations::CapillaryPressureData::pCap, ProcessLib::TH2M::ConstitutiveRelations::CapillaryPressureData::pCap_prev, ProcessLib::TH2M::ConstitutiveRelations::GasPressureData::pG, ProcessLib::TH2M::ConstitutiveRelations::GasPressureData::pG_prev, ProcessLib::TH2M::ConstitutiveRelations::PorosityData::phi, MaterialPropertyLib::VariableArray::porosity, ProcessLib::TH2M::ConstitutiveRelations::SaturationData::S_L, ProcessLib::ConstitutiveRelations::SpaceTimeData::t, MaterialPropertyLib::temperature, MaterialPropertyLib::transport_porosity, MaterialPropertyLib::VariableArray::transport_porosity, MaterialPropertyLib::VariableArray::volumetric_mechanical_strain, and ProcessLib::ConstitutiveRelations::SpaceTimeData::x.

◆ eval()

template<int DisplacementDim>
void ProcessLib::TH2M::ConstitutiveRelations::TransportPorosityModel< DisplacementDim >::eval ( SpaceTimeData const & x_t,
MediaData const & media_data,
SaturationData const & S_L_data,
PrevState< SaturationData > const & S_L_prev_data,
CapillaryPressureData const & p_cap,
GasPressureData const & p_GR,
BishopsData const & chi_S_L,
PrevState< BishopsData > const & chi_S_L_prev,
SolidCompressibilityData const & solid_compressibility,
MechanicalStrainData< DisplacementDim > const & eps_m_data,
PrevState< MechanicalStrainData< DisplacementDim > > const & eps_m_prev_data,
PrevState< TransportPorosityData > const & transport_porosity_prev_data,
PorosityData const & poro_data,
TransportPorosityData & transport_porosity_data ) const

Definition at line 18 of file TransportPorosity.cpp.

30{
31 static int const KelvinVectorSize =
34
37
38 variables.grain_compressibility = solid_compressibility();
39
40 variables.liquid_saturation = S_L_data.S_L;
41 variables_prev.liquid_saturation = S_L_prev_data->S_L;
42
43 variables.effective_pore_pressure =
44 (1 - chi_S_L.chi_S_L) * p_GR.pG +
45 chi_S_L.chi_S_L * (p_GR.pG - p_cap.pCap);
46
47 // Used in MaterialLib/MPL/Properties/PorosityFromMassBalance.cpp
48 // and MaterialLib/MPL/Properties/TransportPorosityFromMassBalance.cpp
49 variables_prev.effective_pore_pressure =
50 (1 - chi_S_L_prev->chi_S_L) * p_GR.pG_prev +
51 chi_S_L_prev->chi_S_L * (p_GR.pG_prev - p_cap.pCap_prev);
52
54 Invariants::trace(eps_m_data.eps_m);
55 variables_prev.volumetric_mechanical_strain =
56 Invariants::trace(eps_m_prev_data->eps_m);
57
58 variables_prev.transport_porosity = transport_porosity_prev_data->phi;
59 variables.porosity = poro_data.phi;
60 transport_porosity_data.phi =
61 media_data.medium
63 .template value<double>(variables, variables_prev, x_t.x, x_t.t,
64 x_t.dt);
65}

References ProcessLib::TH2M::ConstitutiveRelations::BishopsData::chi_S_L, ProcessLib::ConstitutiveRelations::SpaceTimeData::dt, MaterialPropertyLib::VariableArray::effective_pore_pressure, ProcessLib::ConstitutiveRelations::MechanicalStrainData< DisplacementDim >::eps_m, MaterialPropertyLib::VariableArray::grain_compressibility, MathLib::KelvinVector::kelvin_vector_dimensions(), MaterialPropertyLib::VariableArray::liquid_saturation, ProcessLib::TH2M::ConstitutiveRelations::MediaData::medium, ProcessLib::TH2M::ConstitutiveRelations::CapillaryPressureData::pCap, ProcessLib::TH2M::ConstitutiveRelations::CapillaryPressureData::pCap_prev, ProcessLib::TH2M::ConstitutiveRelations::GasPressureData::pG, ProcessLib::TH2M::ConstitutiveRelations::GasPressureData::pG_prev, ProcessLib::TH2M::ConstitutiveRelations::PorosityData::phi, ProcessLib::TH2M::ConstitutiveRelations::TransportPorosityData::phi, MaterialPropertyLib::VariableArray::porosity, MaterialPropertyLib::Medium::property(), ProcessLib::TH2M::ConstitutiveRelations::SaturationData::S_L, ProcessLib::ConstitutiveRelations::SpaceTimeData::t, MaterialPropertyLib::transport_porosity, MaterialPropertyLib::VariableArray::transport_porosity, MaterialPropertyLib::VariableArray::volumetric_mechanical_strain, and ProcessLib::ConstitutiveRelations::SpaceTimeData::x.


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