Skip to content
Snippets Groups Projects
Verified Commit 3802f79d authored by AlirezaBGE's avatar AlirezaBGE Committed by Lars Bilke
Browse files

MPa changes in gas perm

parent d6329c82
No related branches found
No related tags found
No related merge requests found
...@@ -62,10 +62,11 @@ PropertyDataType GasPressureDependentPermeability<DisplacementDim>::value( ...@@ -62,10 +62,11 @@ PropertyDataType GasPressureDependentPermeability<DisplacementDim>::value(
auto k_data = k0_(t, pos); auto k_data = k0_(t, pos);
double const factor = (gas_pressure <= pressure_threshold_) double const factor =
? (1.0 + a1_ * gas_pressure) (gas_pressure <= pressure_threshold_)
: (a2_ * (gas_pressure - pressure_threshold_) + ? (1.0 + a1_ * gas_pressure / 1.0e6)
1.0 + a1_ * pressure_threshold_); : (a2_ * (gas_pressure - pressure_threshold_) / 1.0e6 + 1.0 +
a1_ * pressure_threshold_ / 1.0e6);
for (auto& k_i : k_data) for (auto& k_i : k_data)
{ {
......
...@@ -41,6 +41,10 @@ namespace MaterialPropertyLib ...@@ -41,6 +41,10 @@ namespace MaterialPropertyLib
* where \f$\mathbf{k}\f$ is the permeability, \f$\mathbf{k}_0\f$ is the * where \f$\mathbf{k}\f$ is the permeability, \f$\mathbf{k}_0\f$ is the
* initial intrinsic permeability, \f$p_g\f$ is the gas pressure, \f$a_1\f$, * initial intrinsic permeability, \f$p_g\f$ is the gas pressure, \f$a_1\f$,
* \f$a_2\f$ and \f$p_\text{thr}\f$ are three parameters. * \f$a_2\f$ and \f$p_\text{thr}\f$ are three parameters.
* The threshold pressure and gas pressure, \f$p_g\f$ , \f$p_\text{thr}\f$, are
* in Pascal, and the \f$a_1\f$ and \f$a_2\f$ are dimensionless, representing
* the values reported in \cite xu2013coupled, and
* permeabilities,\f$\mathbf{k}\f$ and \f$\mathbf{k}_0\f$ are in \f$m^2\f$.
* *
*/ */
template <int DisplacementDim> template <int DisplacementDim>
......
...@@ -27,7 +27,7 @@ TEST(MaterialPropertyLib, GasPressureDependentPermeability) ...@@ -27,7 +27,7 @@ TEST(MaterialPropertyLib, GasPressureDependentPermeability)
ParameterLib::ConstantParameter<double> const k0("k0", 1.e-20); ParameterLib::ConstantParameter<double> const k0("k0", 1.e-20);
double const a1 = 0.125; double const a1 = 0.125;
double const a2 = 152.0; double const a2 = 152.0;
double const pressure_threshold = 3.2; double const pressure_threshold = 3.2e6;
double const min_permeability = 1.e-22; double const min_permeability = 1.e-22;
double const max_permeability = 1.e-10; double const max_permeability = 1.e-10;
...@@ -42,7 +42,7 @@ TEST(MaterialPropertyLib, GasPressureDependentPermeability) ...@@ -42,7 +42,7 @@ TEST(MaterialPropertyLib, GasPressureDependentPermeability)
/// For gas pressure smaller than threshold value. /// For gas pressure smaller than threshold value.
{ {
double const p_gas = 2.5; double const p_gas = 2.5e6;
vars[static_cast<int>(MPL::Variable::phase_pressure)] = p_gas; vars[static_cast<int>(MPL::Variable::phase_pressure)] = p_gas;
auto const k = MPL::formEigenTensor<3>(k_model.value(vars, pos, t, dt)); auto const k = MPL::formEigenTensor<3>(k_model.value(vars, pos, t, dt));
...@@ -58,7 +58,7 @@ TEST(MaterialPropertyLib, GasPressureDependentPermeability) ...@@ -58,7 +58,7 @@ TEST(MaterialPropertyLib, GasPressureDependentPermeability)
} }
/// For gas pressure bigger than threshold value. /// For gas pressure bigger than threshold value.
{ {
double const p_gas = 4.5; double const p_gas = 4.5e6;
vars[static_cast<int>(MPL::Variable::phase_pressure)] = p_gas; vars[static_cast<int>(MPL::Variable::phase_pressure)] = p_gas;
auto const k = MPL::formEigenTensor<3>(k_model.value(vars, pos, t, dt)); auto const k = MPL::formEigenTensor<3>(k_model.value(vars, pos, t, dt));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment