https://mooseframework.inl.gov
PorousFlowPreDis.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
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 
21 {
22 public:
24 
26 
27 protected:
28  virtual Real computeQpResidual() override;
29  virtual Real computeQpJacobian() override;
30  virtual Real computeQpOffDiagJacobian(unsigned int jvar) override;
31 
33  const std::vector<Real> _mineral_density;
34 
37 
39  const unsigned int _aq_ph;
40 
43 
46 
49 
52 
55 
57  const std::vector<Real> _stoichiometry;
58 
64  Real computeQpJac(unsigned int pvar);
65 };
const std::vector< Real > _stoichiometry
Stoichiometric coefficients.
const MaterialProperty< Real > & _porosity_old
Old value of porosity.
const MaterialProperty< std::vector< Real > > & _saturation
Saturation.
const PorousFlowDictator & _dictator
PorousFlowDictator UserObject.
const std::vector< Real > _mineral_density
Density of the mineral species.
PorousFlowPreDis(const InputParameters &parameters)
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override
virtual Real computeQpJacobian() override
Real computeQpJac(unsigned int pvar)
Derivative of residual with respect to PorousFlow variable number pvar This is used by both computeQp...
static InputParameters validParams()
const unsigned int _aq_ph
Aqueous phase number.
const MaterialProperty< std::vector< Real > > & _reaction_rate
Reaction rate of the yielding the secondary species.
const MaterialProperty< std::vector< std::vector< Real > > > & _dsaturation_dvar
d(saturation)/d(PorousFlow var)
Kernel = sum (stoichiometry * density * porosity_old * saturation * reaction_rate) where the sum is o...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
This holds maps between the nonlinear variables used in a PorousFlow simulation and the variable numb...
const MaterialProperty< std::vector< std::vector< Real > > > & _dreaction_rate_dvar
d(reaction rate)/d(porflow variable)
const InputParameters & parameters() const
virtual Real computeQpResidual() override