www.mooseframework.org
CoupledDiffusionReactionSub.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 COUPLEDDIFFUSIONREACTIONSUB_H
8 #define COUPLEDDIFFUSIONREACTIONSUB_H
9 
10 #include "Kernel.h"
11 
12 // Forward Declarations
14 
15 template <>
17 
22 class CoupledDiffusionReactionSub : public Kernel
23 {
24 public:
25  CoupledDiffusionReactionSub(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 MaterialProperty<Real> & _diffusivity;
35 
37  const Real _weight;
38 
40  const Real _log_k;
41 
43  const Real _sto_u;
44 
46  const std::vector<Real> _sto_v;
47 
49  std::vector<unsigned int> _vars;
50 
52  std::vector<const VariableValue *> _vals;
53 
55  std::vector<const VariableGradient *> _grad_vals;
56 };
57 
58 #endif // COUPLEDDIFFUSIONREACTIONSUB_H
std::vector< const VariableGradient * > _grad_vals
Coupled gradients of primary species concentrations.
const Real _weight
Weight of the equilibrium species concentration in the total primary species concentration.
CoupledDiffusionReactionSub(const InputParameters &parameters)
virtual Real computeQpResidual() override
Define the Kernel for a CoupledBEEquilibriumSub operator that looks like: grad (diff * grad (weight *...
InputParameters validParams< CoupledDiffusionReactionSub >()
std::vector< const VariableValue * > _vals
Coupled primary species concentrations.
virtual Real computeQpJacobian() override
const std::vector< Real > _sto_v
Stoichiometric coefficients of the coupled primary species.
const Real _sto_u
Stoichiometric coefficient of the primary species.
const Real _log_k
Equilibrium constant for the equilibrium species in association form.
const MaterialProperty< Real > & _diffusivity
Material property of dispersion-diffusion coefficient.
std::vector< unsigned int > _vars
Coupled primary species variable numbers.
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override