www.mooseframework.org
Functions
Q2PPiecewiseLinearSink.C File Reference

Go to the source code of this file.

Functions

 registerMooseObject ("RichardsApp", Q2PPiecewiseLinearSink)
 
template<>
InputParameters validParams< Q2PPiecewiseLinearSink > ()
 

Function Documentation

◆ registerMooseObject()

registerMooseObject ( "RichardsApp"  ,
Q2PPiecewiseLinearSink   
)

◆ validParams< Q2PPiecewiseLinearSink >()

template<>
InputParameters validParams< Q2PPiecewiseLinearSink > ( )

Definition at line 22 of file Q2PPiecewiseLinearSink.C.

23 {
24  InputParameters params = validParams<IntegratedBC>();
25  params.addRequiredParam<bool>(
26  "use_mobility",
27  "If true, then fluxes are multiplied by (density*permeability_nn/viscosity), "
28  "where the '_nn' indicates the component normal to the boundary. In this "
29  "case bare_flux is measured in Pa.s^-1. This can be used in conjunction "
30  "with use_relperm.");
31  params.addRequiredParam<bool>("use_relperm",
32  "If true, then fluxes are multiplied by relative "
33  "permeability. This can be used in conjunction "
34  "with use_mobility");
35  params.addRequiredParam<std::vector<Real>>(
36  "pressures", "Tuple of pressure values. Must be monotonically increasing.");
37  params.addRequiredParam<std::vector<Real>>(
38  "bare_fluxes",
39  "Tuple of flux values (measured in kg.m^-2.s^-1 for use_mobility=false, and "
40  "in Pa.s^-1 if use_mobility=true). This flux is OUT of the medium: hence "
41  "positive values of flux means this will be a SINK, while negative values "
42  "indicate this flux will be a SOURCE. A piecewise-linear fit is performed to "
43  "the (pressure,bare_fluxes) pairs to obtain the flux at any arbitrary "
44  "pressure, and the first or last bare_flux values are used if the quad-point "
45  "pressure falls outside this range.");
46  params.addParam<FunctionName>("multiplying_fcn",
47  1.0,
48  "If this function is provided, the flux "
49  "will be multiplied by this function. "
50  "This is useful for spatially or "
51  "temporally varying sinks");
52  params.addRequiredParam<UserObjectName>(
53  "fluid_density",
54  "A RichardsDensity UserObject that defines the fluid density as a function of pressure.");
55  params.addRequiredParam<UserObjectName>(
56  "fluid_relperm",
57  "A RichardsRelPerm UserObject (eg RichardsRelPermPower) that defines the "
58  "fluid relative permeability as a function of the saturation Variable.");
59  params.addRequiredCoupledVar("other_var",
60  "The other variable in the 2-phase system. If "
61  "Variable=porepressure, the other_var=saturation, and "
62  "vice-versa.");
63  params.addRequiredParam<bool>("var_is_porepressure",
64  "This flag is needed to correctly calculate the Jacobian entries. "
65  "If set to true, this Sink will extract fluid from the phase with "
66  "porepressure as its Variable (usually the liquid phase). If set "
67  "to false, this Sink will extract fluid from the phase with "
68  "saturation as its variable (usually the gas phase)");
69  params.addRequiredParam<Real>("fluid_viscosity", "The fluid dynamic viscosity");
70  params.addClassDescription("Sink of fluid, controlled by (pressure, bare_fluxes) interpolation. "
71  "This is for use in Q2P models");
72  return params;
73 }