11 #include "libmesh/utility.h"
19 InputParameters params = validParams<Material>();
21 params.addRequiredCoupledVar(
22 "one_over_desorption_time_const",
23 "Time constant for Langmuir desorption (gas moving from matrix to porespace). Units [s]");
24 params.addRequiredCoupledVar(
25 "one_over_adsorption_time_const",
26 "Time constant for Langmuir adsorption (gas moving from porespace to matrix). Units [s].");
27 params.addRequiredParam<Real>(
"langmuir_density",
28 "This is (Langmuir volume)*(density of gas at standard temp and "
29 "pressure). Langmuir volume is measured in (gas volume)/(matrix "
30 "volume). (Methane density(101kPa, 20degC) = 0.655kg/m^3. "
31 "Methane density(101kPa, 0degC) = 0.715kg/m^3.) Units [kg/m^3]");
32 params.addRequiredParam<Real>(
"langmuir_pressure",
"Langmuir pressure. Units Pa");
33 params.addRequiredCoupledVar(
"conc_var",
"The concentration of gas variable");
34 params.addRequiredCoupledVar(
"pressure_var",
"The gas porepressure variable");
35 params.addClassDescription(
"Material type that holds info regarding Langmuir desorption from "
36 "matrix to porespace and viceversa");
41 : Material(parameters),
44 _one_over_de_time_const(&coupledValue(
"one_over_desorption_time_const")),
45 _one_over_ad_time_const(&coupledValue(
"one_over_adsorption_time_const")),
47 _langmuir_dens(getParam<Real>(
"langmuir_density")),
48 _langmuir_p(getParam<Real>(
"langmuir_pressure")),
50 _conc(&coupledValue(
"conc_var")),
51 _pressure(&coupledValue(
"pressure_var")),
53 _mass_rate_from_matrix(declareProperty<Real>(
"mass_rate_from_matrix")),
54 _dmass_rate_from_matrix_dC(declareProperty<Real>(
"dmass_rate_from_matrix_dC")),
55 _dmass_rate_from_matrix_dp(declareProperty<Real>(
"dmass_rate_from_matrix_dp"))
63 Real dequilib_conc_dp =
73 if ((*
_conc)[_qp] > equilib_conc)