www.mooseframework.org
PorousFlowRelativePermeabilityBase.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 POROUSFLOWRELATIVEPERMEABILITYBASE_H
9 #define POROUSFLOWRELATIVEPERMEABILITYBASE_H
10 
11 #include "PorousFlowMaterialBase.h"
12 
14 
15 template <>
17 
24 {
25 public:
26  PorousFlowRelativePermeabilityBase(const InputParameters & parameters);
27 
28 protected:
29  virtual void computeQpProperties() override;
30 
36  virtual Real effectiveSaturation(Real saturation) const;
37 
43  virtual Real relativePermeability(Real seff) const = 0;
44 
50  virtual Real dRelativePermeability(Real seff) const = 0;
51 
53  const Real _scaling;
54 
57 
59  const MaterialProperty<std::vector<Real>> & _saturation;
60 
62  MaterialProperty<Real> & _relative_permeability;
63 
65  MaterialProperty<Real> & _drelative_permeability_ds;
66 
68  const Real _s_res;
69 
71  const Real _sum_s_res;
72 
74  const Real _dseff_ds;
75 };
76 
77 #endif // POROUSFLOWRELATIVEPERMEABILITYBASE_H
const Real _scaling
Relative permeability is multiplied by this quantity.
MaterialProperty< Real > & _relative_permeability
Relative permeability material property.
virtual Real dRelativePermeability(Real seff) const =0
Derivative of relative permeability with respect to effective saturation.
const Real _dseff_ds
Derivative of effective saturation with respect to saturation.
PorousFlowRelativePermeabilityBase(const InputParameters &parameters)
const MaterialProperty< std::vector< Real > > & _saturation
Saturation material property.
VariableName _saturation_variable_name
Name of (dummy) saturation primary variable.
Base class for all PorousFlow materials that provide phase-dependent properties.
Base class for PorousFlow relative permeability materials.
virtual Real effectiveSaturation(Real saturation) const
Effective saturation of fluid phase.
MaterialProperty< Real > & _drelative_permeability_ds
Derivative of relative permeability wrt phase saturation.
InputParameters validParams< PorousFlowRelativePermeabilityBase >()
virtual Real relativePermeability(Real seff) const =0
Relative permeability equation (must be overriden in derived class)
const Real _sum_s_res
Sum of residual saturations over all phases.
const Real _s_res
Residual saturation of specified phase.
void FORTRAN_CALL() saturation(double &P, double &T, int &N, int &nerr)