www.mooseframework.org
CoupledBEEquilibriumSub.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 #ifndef COUPLEDBEEQUILIBRIUMSUB_H
8 #define COUPLEDBEEQUILIBRIUMSUB_H
9 
10 #include "Kernel.h"
11 
12 // Forward Declarations
14 
15 template <>
16 InputParameters validParams<CoupledBEEquilibriumSub>();
17 
22 class CoupledBEEquilibriumSub : public Kernel
23 {
24 public:
25  CoupledBEEquilibriumSub(const InputParameters & parameters);
26 
27 protected:
28  virtual Real computeQpResidual() override;
29  virtual Real computeQpJacobian() override;
30  virtual Real computeQpOffDiagJacobian(unsigned int jvar) override;
31 
32 private:
34  const Real _weight;
35 
37  const Real _log_k;
38 
40  const Real _sto_u;
41 
43  const std::vector<Real> _sto_v;
44 
46  const MaterialProperty<Real> & _porosity;
47 
49  std::vector<unsigned int> _vars;
50 
52  std::vector<const VariableValue *> _v_vals;
53 
55  std::vector<const VariableValue *> _v_vals_old;
56 
58  const VariableValue & _u_old;
59 };
60 
61 #endif // COUPLEDBEEQUILIBRIUMSUB_H
CoupledBEEquilibriumSub(const InputParameters &parameters)
InputParameters validParams< CoupledBEEquilibriumSub >()
virtual Real computeQpJacobian() override
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override
std::vector< unsigned int > _vars
Coupled primary species variable numbers.
std::vector< const VariableValue * > _v_vals
Coupled primary species concentrations.
const MaterialProperty< Real > & _porosity
Material property of porosity.
const Real _log_k
Equilibrium constant for the equilibrium species in association form.
const Real _sto_u
Stoichiometric coefficient of the primary species.
virtual Real computeQpResidual() override
const std::vector< Real > _sto_v
Stoichiometric coefficients of the coupled primary species.
const VariableValue & _u_old
The old values of the primary species concentration.
std::vector< const VariableValue * > _v_vals_old
Coupled old values of primary species concentrations.
const Real _weight
Weight of the equilibrium species concentration in the total primary species concentration.
Define the Kernel for a CoupledBEEquilibriumSub operator that looks like: delta (weight * 10^log_k * ...