18 params.
addCoupledVar(
"log_k", 0.0,
"The equilibrium constant of the dissolution reaction");
20 "The stoichiometric coefficients of reactant species");
21 params.
addParam<
Real>(
"r_area", 0.1,
"Specific reactive surface area in m^2/L solution");
22 params.
addParam<
Real>(
"ref_kconst", 6.456542e-8,
"Kinetic rate constant in mol/m^2 s");
23 params.
addParam<
Real>(
"e_act", 2.91e4,
"Activation energy, J/mol");
24 params.
addParam<
Real>(
"gas_const", 8.31434,
"Gas constant, in J/mol K");
25 params.
addParam<
Real>(
"ref_temp", 298.15,
"Reference temperature, K");
26 params.
addCoupledVar(
"sys_temp", 298.15,
"System temperature, K");
34 _log_k(coupledValue(
"log_k")),
35 _r_area(getParam<
Real>(
"r_area")),
36 _ref_kconst(getParam<
Real>(
"ref_kconst")),
37 _e_act(getParam<
Real>(
"e_act")),
38 _gas_const(getParam<
Real>(
"gas_const")),
39 _ref_temp(getParam<
Real>(
"ref_temp")),
40 _sys_temp(coupledValue(
"sys_temp")),
41 _sto_v(getParam<
std::vector<
Real>>(
"sto_v")),
42 _vals(coupledValues(
"v"))
48 "The number of stoichiometric coefficients in sto_v is not equal to the number of reactant " 62 for (
unsigned int i = 0; i <
_vals.size(); ++i)
72 Real kinetic_rate =
_r_area * kconst * (1.0 - saturation_SI);
74 if (std::abs(kinetic_rate) <= 1.0e-12)
static InputParameters validParams()
registerMooseObject("ChemicalReactionsApp", KineticDisPreRateAux)
const VariableValue & _log_k
Equilibrium constant at reference temperature.
Calculate the kinetic mineral species kinetic rate according to transient state theory rate law...
const Real _ref_temp
Reference temperature.
const Real _ref_kconst
Reference kinetic rate constant.
const std::vector< Real > _sto_v
Stoichiometric coefficients for involved primary species.
const VariableValue & _sys_temp
Actual system temperature.
const Real _r_area
Specific reactive surface area, m^2/L solution.
const Real _gas_const
Gas constant, 8.314 J/mol/K.
KineticDisPreRateAux(const InputParameters ¶meters)
unsigned int coupledComponents(const std::string &var_name) const
virtual Real computeValue() override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const
const std::vector< const VariableValue * > _vals
Coupled primary species concentrations.
static InputParameters validParams()
const Real _e_act
Activation energy.
MooseUnits pow(const MooseUnits &, int)