www.mooseframework.org
PorousFlowDesorpedMassTimeDerivative.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 
8 #ifndef POROUSFLOWDESORPEDMASSTIMEDERIVATIVE_H
9 #define POROUSFLOWDESORPEDMASSTIMEDERIVATIVE_H
10 
11 #include "TimeDerivative.h"
12 #include "PorousFlowDictator.h"
13 
14 // Forward Declarations
16 
17 template <>
19 
24 class PorousFlowDesorpedMassTimeDerivative : public TimeKernel
25 {
26 public:
27  PorousFlowDesorpedMassTimeDerivative(const InputParameters & parameters);
28 
29 protected:
30  virtual Real computeQpResidual() override;
31  virtual Real computeQpJacobian() override;
32  virtual Real computeQpOffDiagJacobian(unsigned int jvar) override;
33 
36 
38  const unsigned int _conc_var_number;
39 
41  const VariableValue & _conc;
42 
44  const VariableValue & _conc_old;
45 
47  const MaterialProperty<Real> & _porosity;
48 
50  const MaterialProperty<Real> & _porosity_old;
51 
53  const MaterialProperty<std::vector<Real>> & _dporosity_dvar;
54 
56  const MaterialProperty<std::vector<RealGradient>> & _dporosity_dgradvar;
57 
63  Real computeQpJac(unsigned int jvar) const;
64 };
65 
66 #endif // POROUSFLOWDESORPEDMASSTIMEDERIVATIVE_H
const VariableValue & _conc_old
Old value of the concentration variable.
const MaterialProperty< std::vector< RealGradient > > & _dporosity_dgradvar
d(porosity)/d(grad porous-flow variable) - these derivatives will be wrt grad(vars) at qps ...
InputParameters validParams< PorousFlowDesorpedMassTimeDerivative >()
Kernel = (desorped_mass - desorped_mass_old)/dt It is NOT lumped to the nodes.
const MaterialProperty< Real > & _porosity_old
old value of porosity
const MaterialProperty< std::vector< Real > > & _dporosity_dvar
d(porosity)/d(porous-flow variable) - these derivatives will be wrt variables at the qps ...
Real computeQpJac(unsigned int jvar) const
Derivative of residual with respect to variable number jvar This is used by both computeQpJacobian an...
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override
const VariableValue & _conc
The concentration variable.
This holds maps between the nonlinear variables used in a PorousFlow simulation and the variable numb...
const PorousFlowDictator & _dictator
holds info on the PorousFlow variables
const unsigned int _conc_var_number
The MOOSE variable number of the concentration variable.
const MaterialProperty< Real > & _porosity
porosity at the qps
PorousFlowDesorpedMassTimeDerivative(const InputParameters &parameters)