www.mooseframework.org
PorousFlowDesorpedMassTimeDerivative.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "TimeDerivative.h"
13 #include "PorousFlowDictator.h"
14 
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 
PorousFlowDesorpedMassTimeDerivative::computeQpResidual
virtual Real computeQpResidual() override
Definition: PorousFlowDesorpedMassTimeDerivative.C:47
PorousFlowDictator.h
PorousFlowDesorpedMassTimeDerivative::_conc_old
const VariableValue & _conc_old
Old value of the concentration variable.
Definition: PorousFlowDesorpedMassTimeDerivative.h:44
validParams< PorousFlowDesorpedMassTimeDerivative >
InputParameters validParams< PorousFlowDesorpedMassTimeDerivative >()
Definition: PorousFlowDesorpedMassTimeDerivative.C:20
PorousFlowDesorpedMassTimeDerivative::computeQpJac
Real computeQpJac(unsigned int jvar) const
Derivative of residual with respect to variable number jvar This is used by both computeQpJacobian an...
Definition: PorousFlowDesorpedMassTimeDerivative.C:67
PorousFlowDesorpedMassTimeDerivative::computeQpJacobian
virtual Real computeQpJacobian() override
Definition: PorousFlowDesorpedMassTimeDerivative.C:55
PorousFlowDesorpedMassTimeDerivative::_porosity
const MaterialProperty< Real > & _porosity
Porosity at the qps.
Definition: PorousFlowDesorpedMassTimeDerivative.h:47
PorousFlowDesorpedMassTimeDerivative::_dictator
const PorousFlowDictator & _dictator
PorousFlowDictator UserObject.
Definition: PorousFlowDesorpedMassTimeDerivative.h:35
PorousFlowDictator
This holds maps between the nonlinear variables used in a PorousFlow simulation and the variable numb...
Definition: PorousFlowDictator.h:71
PorousFlowDesorpedMassTimeDerivative
Kernel = (desorped_mass - desorped_mass_old)/dt It is NOT lumped to the nodes.
Definition: PorousFlowDesorpedMassTimeDerivative.h:24
PorousFlowDesorpedMassTimeDerivative::PorousFlowDesorpedMassTimeDerivative
PorousFlowDesorpedMassTimeDerivative(const InputParameters &parameters)
Definition: PorousFlowDesorpedMassTimeDerivative.C:31
PorousFlowDesorpedMassTimeDerivative::_conc_var_number
const unsigned int _conc_var_number
The MOOSE variable number of the concentration variable.
Definition: PorousFlowDesorpedMassTimeDerivative.h:38
PorousFlowDesorpedMassTimeDerivative::_dporosity_dvar
const MaterialProperty< std::vector< Real > > & _dporosity_dvar
d(porosity)/d(PorousFlow variable) - these derivatives will be wrt variables at the qps
Definition: PorousFlowDesorpedMassTimeDerivative.h:53
PorousFlowDesorpedMassTimeDerivative::_porosity_old
const MaterialProperty< Real > & _porosity_old
Old value of porosity.
Definition: PorousFlowDesorpedMassTimeDerivative.h:50
PorousFlowDesorpedMassTimeDerivative::_conc
const VariableValue & _conc
The concentration variable.
Definition: PorousFlowDesorpedMassTimeDerivative.h:41
PorousFlowDesorpedMassTimeDerivative::_dporosity_dgradvar
const MaterialProperty< std::vector< RealGradient > > & _dporosity_dgradvar
d(porosity)/d(grad PorousFlow variable) - these derivatives will be wrt grad(vars) at qps
Definition: PorousFlowDesorpedMassTimeDerivative.h:56
PorousFlowDesorpedMassTimeDerivative::computeQpOffDiagJacobian
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override
Definition: PorousFlowDesorpedMassTimeDerivative.C:61