www.mooseframework.org
Q2PPiecewiseLinearSinkFlux.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 "SideIntegralPostprocessor.h"
13 #include "LinearInterpolation.h"
14 #include "RichardsDensity.h"
15 #include "RichardsRelPerm.h"
16 
17 class Function;
18 
19 // Forward Declarations
21 
22 template <>
24 
34 class Q2PPiecewiseLinearSinkFlux : public SideIntegralPostprocessor
35 {
36 public:
37  Q2PPiecewiseLinearSinkFlux(const InputParameters & parameters);
38 
39 protected:
40  virtual Real computeQpIntegral();
41 
43  LinearInterpolation _sink_func;
44 
46  const Function & _m_func;
47 
49  const VariableValue & _pp;
50 
53 
56 
59 
61  Real _viscosity;
62 
65 
67  const VariableValue & _sat;
68 
70  const MaterialProperty<RealTensorValue> & _permeability;
71 };
Q2PPiecewiseLinearSinkFlux::_sink_func
LinearInterpolation _sink_func
the sink function, which is a piecewise linear function of porepressure values
Definition: Q2PPiecewiseLinearSinkFlux.h:43
RichardsRelPerm
Base class for Richards relative permeability classes that provide relative permeability as a functio...
Definition: RichardsRelPerm.h:23
Q2PPiecewiseLinearSinkFlux::_use_relperm
bool _use_relperm
whether to include relative permeability in the flux
Definition: Q2PPiecewiseLinearSinkFlux.h:55
Q2PPiecewiseLinearSinkFlux
This postprocessor computes the fluid flux to a Q2PPiecewiseLinearSink.
Definition: Q2PPiecewiseLinearSinkFlux.h:34
Q2PPiecewiseLinearSinkFlux::_relperm
const RichardsRelPerm * _relperm
fluid relative permeaility, optional
Definition: Q2PPiecewiseLinearSinkFlux.h:64
Q2PPiecewiseLinearSinkFlux::_viscosity
Real _viscosity
fluid viscosity, optional
Definition: Q2PPiecewiseLinearSinkFlux.h:61
validParams< Q2PPiecewiseLinearSinkFlux >
InputParameters validParams< Q2PPiecewiseLinearSinkFlux >()
Definition: Q2PPiecewiseLinearSinkFlux.C:19
Q2PPiecewiseLinearSinkFlux::_m_func
const Function & _m_func
the multiplier function
Definition: Q2PPiecewiseLinearSinkFlux.h:46
Q2PPiecewiseLinearSinkFlux::_pp
const VariableValue & _pp
the porepressure variable
Definition: Q2PPiecewiseLinearSinkFlux.h:49
Q2PPiecewiseLinearSinkFlux::Q2PPiecewiseLinearSinkFlux
Q2PPiecewiseLinearSinkFlux(const InputParameters &parameters)
Definition: Q2PPiecewiseLinearSinkFlux.C:59
RichardsDensity
Base class for fluid density as a function of porepressure The functions density, ddensity and d2dens...
Definition: RichardsDensity.h:24
Q2PPiecewiseLinearSinkFlux::_density
const RichardsDensity * _density
fluid density, optional
Definition: Q2PPiecewiseLinearSinkFlux.h:58
RichardsRelPerm.h
Q2PPiecewiseLinearSinkFlux::_permeability
const MaterialProperty< RealTensorValue > & _permeability
medium permeability
Definition: Q2PPiecewiseLinearSinkFlux.h:70
RichardsDensity.h
Q2PPiecewiseLinearSinkFlux::_use_mobility
bool _use_mobility
whether to include density*permeability_nn/viscosity in the flux
Definition: Q2PPiecewiseLinearSinkFlux.h:52
Q2PPiecewiseLinearSinkFlux::computeQpIntegral
virtual Real computeQpIntegral()
Definition: Q2PPiecewiseLinearSinkFlux.C:86
Q2PPiecewiseLinearSinkFlux::_sat
const VariableValue & _sat
saturation variable, optional
Definition: Q2PPiecewiseLinearSinkFlux.h:67