www.mooseframework.org
PorousFlow2PhasePS.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 POROUSFLOW2PHASEPS_H
9 #define POROUSFLOW2PHASEPS_H
10 
11 #include "PorousFlowVariableBase.h"
12 
13 // Forward Declarations
15 class PorousFlow2PhasePS;
16 
17 template <>
18 InputParameters validParams<PorousFlow2PhasePS>();
19 
25 {
26 public:
27  PorousFlow2PhasePS(const InputParameters & parameters);
28 
29 protected:
34  void buildQpPPSS();
35 
41  virtual Real effectiveSaturation(Real saturation) const;
42 
51  virtual Real capillaryPressure(Real saturation) const;
52 
60  virtual Real dCapillaryPressure_dS(Real seff) const;
61 
69  virtual Real d2CapillaryPressure_dS2(Real saturation) const;
70 
71  virtual void initQpStatefulProperties() override;
72  virtual void computeQpProperties() override;
73 
75  const VariableValue & _phase0_porepressure;
77  const VariableGradient & _phase0_gradp_qp;
79  const unsigned int _phase0_porepressure_varnum;
81  const unsigned int _pvar;
83  const VariableValue & _phase1_saturation;
85  const VariableGradient & _phase1_grads_qp;
87  const unsigned int _phase1_saturation_varnum;
89  const unsigned int _svar;
91  const Real _sat_lr;
93  const Real _dseff_ds;
98 };
99 
100 #endif // POROUSFLOW2PHASEPS_H
const unsigned int _pvar
PorousFlow variable number of the phase0 porepressure.
PorousFlow2PhasePS(const InputParameters &parameters)
void buildQpPPSS()
Assemble std::vectors of porepressure and saturation at the nodes and quadpoints. ...
Material designed to calculate fluid-phase porepressures and saturations at nodes and qps using a spe...
const VariableGradient & _phase0_gradp_qp
Gradient(phase0_porepressure) at the qps.
const VariableValue & _phase0_porepressure
Nodal or quadpoint value of porepressure of the zero phase (eg, the gas phase)
const unsigned int _phase0_porepressure_varnum
Moose variable number of the phase0 porepressure.
virtual void computeQpProperties() override
Base class for capillary pressure for multiphase flow in porous media.
virtual Real effectiveSaturation(Real saturation) const
Effective saturation of liquid phase.
const Real _sat_lr
Liquid residual saturation.
const VariableValue & _phase1_saturation
Nodal or quadpoint value of saturation of the one phase (eg, the water phase)
const unsigned int _svar
PorousFlow variable number of the phase1 saturation.
const unsigned int _phase1_saturation_varnum
Moose variable number of the phase1 saturation.
virtual Real capillaryPressure(Real saturation) const
Capillary pressure as a function of saturation.
const VariableGradient & _phase1_grads_qp
Gradient(phase1_saturation) at the qps.
virtual Real d2CapillaryPressure_dS2(Real saturation) const
Second derivative of capillary pressure wrt to saturation.
const PorousFlowCapillaryPressure * _pc_uo
Capillary pressure UserObject Note: This pointer can be replaced with a reference once the deprecated...
void FORTRAN_CALL() saturation(double &P, double &T, int &N, int &nerr)
virtual void initQpStatefulProperties() override
virtual Real dCapillaryPressure_dS(Real seff) const
Derivative of capillary pressure wrt to saturation.
const Real _dseff_ds
Derivative of effective saturation with respect to saturation.
Base class for thermophysical variable materials, which assemble materials for primary variables such...
InputParameters validParams< PorousFlow2PhasePS >()