www.mooseframework.org
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PorousFlowSinkPTDefiner Class Reference

Provides either a porepressure or a temperature to derived classes, depending on _involves_fluid defined in PorousFlowSink. More...

#include <PorousFlowSinkPTDefiner.h>

Inheritance diagram for PorousFlowSinkPTDefiner:
[legend]

Public Member Functions

 PorousFlowSinkPTDefiner (const InputParameters &parameters)
 

Protected Member Functions

virtual Real ptVar () const
 Provides the variable value (either porepressure, or temperature, depending on _involves_fluid) More...
 
virtual Real dptVar (unsigned pvar) const
 Provides the d(variable)/(d PorousFlow Variable pvar) More...
 
virtual Real computeQpResidual () override
 
virtual Real computeQpJacobian () override
 
virtual Real computeQpOffDiagJacobian (unsigned int jvar) override
 
Real jac (unsigned int jvar) const
 Derivative of residual with respect to the jvar variable. More...
 
virtual Real multiplier () const
 The flux gets multiplied by this quantity. More...
 
virtual Real dmultiplier_dvar (unsigned int pvar) const
 d(multiplier)/d(Porous flow variable pvar) More...
 

Protected Attributes

const MaterialProperty< std::vector< Real > > *const _pp
 Nodal pore pressure in each phase. More...
 
const MaterialProperty< std::vector< std::vector< Real > > > *const _dpp_dvar
 d(Nodal pore pressure in each phase)/d(PorousFlow variable) More...
 
const MaterialProperty< Real > *const _temp
 Nodal temperature. More...
 
const MaterialProperty< std::vector< Real > > *const _dtemp_dvar
 d(Nodal temperature)/d(PorousFlow variable) More...
 
const VariableValue & _pt_shift
 Subtract this from porepressure or temperature before evaluating PiecewiseLinearSink, HalfCubicSink, etc. More...
 
const PorousFlowDictator_dictator
 PorousFlowDictator UserObject. More...
 
const bool _involves_fluid
 Whether this BC involves fluid (whether the user has supplied a fluid phase number) More...
 
const unsigned int _ph
 The phase number. More...
 
const bool _use_mass_fraction
 Whether the flux will be multiplied by the mass fraction. More...
 
const bool _has_mass_fraction
 Whether there is a "mass_fraction" Material. This is just for error checking. More...
 
const unsigned int _sp
 The component number (only used if _use_mass_fraction==true) More...
 
const bool _use_mobility
 Whether to multiply the sink flux by permeability*density/viscosity. More...
 
const bool _has_mobility
 Whether there are Materials that can form "mobility". This is just for error checking. More...
 
const bool _use_relperm
 Whether to multiply the sink flux by relative permeability. More...
 
const bool _has_relperm
 Whether there is a "relperm" Material. This is just for error checking. More...
 
const bool _use_enthalpy
 Whether to multiply the sink flux by enthalpy. More...
 
const bool _has_enthalpy
 Whether there is an "enthalpy" Material. This is just for error checking. More...
 
const bool _use_internal_energy
 Whether to multiply the sink flux by internal_energy. More...
 
const bool _has_internal_energy
 Whether there is an "internal_energy" Material. This is just for error checking. More...
 
const bool _use_thermal_conductivity
 Whether to multiply the sink flux by thermal_conductivity. More...
 
const bool _has_thermal_conductivity
 Whether there is an "thermal_conductivity" Material. This is just for error checking. More...
 
const Function & _m_func
 The flux. More...
 
const MaterialProperty< RealTensorValue > *const _permeability
 Permeability of porous material. More...
 
const MaterialProperty< std::vector< RealTensorValue > > *const _dpermeability_dvar
 d(Permeability)/d(PorousFlow variable) More...
 
const MaterialProperty< std::vector< std::vector< RealTensorValue > > > *const _dpermeability_dgradvar
 d(Permeability)/d(grad(PorousFlow variable)) More...
 
const MaterialProperty< std::vector< Real > > *const _fluid_density_node
 Fluid density for each phase (at the node) More...
 
const MaterialProperty< std::vector< std::vector< Real > > > *const _dfluid_density_node_dvar
 d(Fluid density for each phase (at the node))/d(PorousFlow variable) More...
 
const MaterialProperty< std::vector< Real > > *const _fluid_viscosity
 Viscosity of each component in each phase. More...
 
const MaterialProperty< std::vector< std::vector< Real > > > *const _dfluid_viscosity_dvar
 d(Viscosity of each component in each phase)/d(PorousFlow variable) More...
 
const MaterialProperty< std::vector< Real > > *const _relative_permeability
 Relative permeability of each phase. More...
 
const MaterialProperty< std::vector< std::vector< Real > > > *const _drelative_permeability_dvar
 d(Relative permeability of each phase)/d(PorousFlow variable) More...
 
const MaterialProperty< std::vector< std::vector< Real > > > *const _mass_fractions
 Mass fraction of each component in each phase. More...
 
const MaterialProperty< std::vector< std::vector< std::vector< Real > > > > *const _dmass_fractions_dvar
 d(Mass fraction of each component in each phase)/d(PorousFlow variable) More...
 
const MaterialProperty< std::vector< Real > > *const _enthalpy
 Enthalpy of each phase. More...
 
const MaterialProperty< std::vector< std::vector< Real > > > *const _denthalpy_dvar
 d(enthalpy of each phase)/d(PorousFlow variable) More...
 
const MaterialProperty< std::vector< Real > > *const _internal_energy
 Internal_Energy of each phase. More...
 
const MaterialProperty< std::vector< std::vector< Real > > > *const _dinternal_energy_dvar
 d(internal_energy of each phase)/d(PorousFlow variable) More...
 
const MaterialProperty< RealTensorValue > *const _thermal_conductivity
 Thermal_Conductivity of porous material. More...
 
const MaterialProperty< std::vector< RealTensorValue > > *const _dthermal_conductivity_dvar
 d(Thermal_Conductivity)/d(PorousFlow variable) More...
 
const bool _perm_derivs
 Flag to check whether permeabiity derivatives are non-zero. More...
 

Detailed Description

Provides either a porepressure or a temperature to derived classes, depending on _involves_fluid defined in PorousFlowSink.

Definition at line 24 of file PorousFlowSinkPTDefiner.h.

Constructor & Destructor Documentation

◆ PorousFlowSinkPTDefiner()

PorousFlowSinkPTDefiner::PorousFlowSinkPTDefiner ( const InputParameters &  parameters)

Definition at line 27 of file PorousFlowSinkPTDefiner.C.

28  : PorousFlowSink(parameters),
29  _pp(_involves_fluid ? &getMaterialProperty<std::vector<Real>>("PorousFlow_porepressure_nodal")
30  : nullptr),
31  _dpp_dvar(_involves_fluid ? &getMaterialProperty<std::vector<std::vector<Real>>>(
32  "dPorousFlow_porepressure_nodal_dvar")
33  : nullptr),
34  _temp(!_involves_fluid ? &getMaterialProperty<Real>("PorousFlow_temperature_nodal") : nullptr),
36  ? &getMaterialProperty<std::vector<Real>>("dPorousFlow_temperature_nodal_dvar")
37  : nullptr),
38  _pt_shift(coupledDofValues("PT_shift"))
39 {
40  if (_involves_fluid && (_pp == nullptr || _dpp_dvar == nullptr))
41  mooseError("PorousFlowSink: There is no porepressure Material");
42  if (!_involves_fluid && (_temp == nullptr || _dtemp_dvar == nullptr))
43  mooseError("PorousFlowSink: There is no temperature Material");
44 }

Member Function Documentation

◆ computeQpJacobian()

Real PorousFlowSink::computeQpJacobian ( )
overrideprotectedvirtualinherited

Definition at line 250 of file PorousFlowSink.C.

251 {
252  return jac(_var.number());
253 }

◆ computeQpOffDiagJacobian()

Real PorousFlowSink::computeQpOffDiagJacobian ( unsigned int  jvar)
overrideprotectedvirtualinherited

Definition at line 256 of file PorousFlowSink.C.

257 {
258  return jac(jvar);
259 }

◆ computeQpResidual()

Real PorousFlowSink::computeQpResidual ( )
overrideprotectedvirtualinherited

Definition at line 225 of file PorousFlowSink.C.

226 {
227  Real flux = _test[_i][_qp] * multiplier();
228  if (_use_mobility)
229  {
230  const Real k =
231  ((*_permeability)[_qp] * _normals[_qp]) * _normals[_qp]; // do not upwind permeability
232  flux *= (*_fluid_density_node)[_i][_ph] * k / (*_fluid_viscosity)[_i][_ph];
233  }
234  if (_use_relperm)
235  flux *= (*_relative_permeability)[_i][_ph];
236  if (_use_mass_fraction)
237  flux *= (*_mass_fractions)[_i][_ph][_sp];
238  if (_use_enthalpy)
239  flux *= (*_enthalpy)[_i][_ph];
241  flux *= (*_internal_energy)[_i][_ph];
243  flux *= ((*_thermal_conductivity)[_qp] * _normals[_qp]) *
244  _normals[_qp]; // do not upwind thermal_conductivity
245 
246  return flux;
247 }

◆ dmultiplier_dvar()

Real PorousFlowSink::dmultiplier_dvar ( unsigned int  pvar) const
protectedvirtualinherited

◆ dptVar()

Real PorousFlowSinkPTDefiner::dptVar ( unsigned  pvar) const
protectedvirtual

Provides the d(variable)/(d PorousFlow Variable pvar)

Definition at line 55 of file PorousFlowSinkPTDefiner.C.

56 {
57  if (_involves_fluid)
58  return (*_dpp_dvar)[_i][_ph][pvar];
59  return (*_dtemp_dvar)[_i][pvar];
60 }

Referenced by PorousFlowPiecewiseLinearSink::dmultiplier_dvar(), PorousFlowHalfGaussianSink::dmultiplier_dvar(), and PorousFlowHalfCubicSink::dmultiplier_dvar().

◆ jac()

Real PorousFlowSink::jac ( unsigned int  jvar) const
protectedinherited

Derivative of residual with respect to the jvar variable.

Definition at line 262 of file PorousFlowSink.C.

263 {
265  return 0.0;
266  const unsigned int pvar = _dictator.porousFlowVariableNum(jvar);
267 
268  // For _i != _j, note:
269  // since the only non-upwinded contribution to the residual is
270  // from the permeability and thermal_conductivity, the only contribution
271  // of the residual at node _i from changing jvar at node _j is through
272  // the derivative of permeability or thermal_conductivity
273 
274  Real flux = _test[_i][_qp] * multiplier();
275  Real deriv = _test[_i][_qp] * (_i != _j ? 0.0 : dmultiplier_dvar(pvar));
276 
277  if (_use_mobility)
278  {
279  const Real k = ((*_permeability)[_qp] * _normals[_qp]) * _normals[_qp];
280  const Real mob = (*_fluid_density_node)[_i][_ph] * k / (*_fluid_viscosity)[_i][_ph];
281 
282  Real mobprime = 0.0;
283  if (_perm_derivs)
284  {
285  RealTensorValue ktprime = (*_dpermeability_dvar)[_qp][pvar] * _phi[_j][_qp];
286  for (unsigned int i = 0; i < LIBMESH_DIM; ++i)
287  ktprime += (*_dpermeability_dgradvar)[_qp][i][pvar] * _grad_phi[_j][_qp](i);
288  const Real kprime = (ktprime * _normals[_qp]) * _normals[_qp];
289 
290  mobprime += (*_fluid_density_node)[_i][_ph] * kprime / (*_fluid_viscosity)[_i][_ph];
291  }
292 
293  mobprime +=
294  (_i != _j
295  ? 0.0
296  : (*_dfluid_density_node_dvar)[_i][_ph][pvar] * k / (*_fluid_viscosity)[_i][_ph] -
297  (*_fluid_density_node)[_i][_ph] * k * (*_dfluid_viscosity_dvar)[_i][_ph][pvar] /
298  std::pow((*_fluid_viscosity)[_i][_ph], 2));
299  deriv = mob * deriv + mobprime * flux;
300  flux *= mob;
301  }
302  if (_use_relperm)
303  {
304  const Real relperm_prime = (_i != _j ? 0.0 : (*_drelative_permeability_dvar)[_i][_ph][pvar]);
305  deriv = (*_relative_permeability)[_i][_ph] * deriv + relperm_prime * flux;
306  flux *= (*_relative_permeability)[_i][_ph];
307  }
308  if (_use_mass_fraction)
309  {
310  const Real mf_prime = (_i != _j ? 0.0 : (*_dmass_fractions_dvar)[_i][_ph][_sp][pvar]);
311  deriv = (*_mass_fractions)[_i][_ph][_sp] * deriv + mf_prime * flux;
312  flux *= (*_mass_fractions)[_i][_ph][_sp];
313  }
314  if (_use_enthalpy)
315  {
316  const Real en_prime = (_i != _j ? 0.0 : (*_denthalpy_dvar)[_i][_ph][pvar]);
317  deriv = (*_enthalpy)[_i][_ph] * deriv + en_prime * flux;
318  flux *= (*_enthalpy)[_i][_ph];
319  }
321  {
322  const Real ie_prime = (_i != _j ? 0.0 : (*_dinternal_energy_dvar)[_i][_ph][pvar]);
323  deriv = (*_internal_energy)[_i][_ph] * deriv + ie_prime * flux;
324  flux *= (*_internal_energy)[_i][_ph];
325  }
327  {
328  const Real tc = ((*_thermal_conductivity)[_qp] * _normals[_qp]) * _normals[_qp];
329  const RealTensorValue tctprime = (*_dthermal_conductivity_dvar)[_qp][pvar] * _phi[_j][_qp];
330  const Real tcprime = (tctprime * _normals[_qp]) * _normals[_qp];
331  deriv = tc * deriv + tcprime * flux;
332  // don't need this: flux *= tc;
333  }
334  return deriv;
335 }

Referenced by PorousFlowSink::computeQpJacobian(), and PorousFlowSink::computeQpOffDiagJacobian().

◆ multiplier()

Real PorousFlowSink::multiplier ( ) const
protectedvirtualinherited

◆ ptVar()

Real PorousFlowSinkPTDefiner::ptVar ( ) const
protectedvirtual

Provides the variable value (either porepressure, or temperature, depending on _involves_fluid)

Definition at line 47 of file PorousFlowSinkPTDefiner.C.

48 {
49  if (_involves_fluid)
50  return (*_pp)[_i][_ph] - _pt_shift[_i];
51  return (*_temp)[_i] - _pt_shift[_i];
52 }

Referenced by PorousFlowPiecewiseLinearSink::dmultiplier_dvar(), PorousFlowHalfGaussianSink::dmultiplier_dvar(), PorousFlowHalfCubicSink::dmultiplier_dvar(), PorousFlowPiecewiseLinearSink::multiplier(), PorousFlowHalfGaussianSink::multiplier(), and PorousFlowHalfCubicSink::multiplier().

Member Data Documentation

◆ _denthalpy_dvar

const MaterialProperty<std::vector<std::vector<Real> > >* const PorousFlowSink::_denthalpy_dvar
protectedinherited

d(enthalpy of each phase)/d(PorousFlow variable)

Definition at line 132 of file PorousFlowSink.h.

◆ _dfluid_density_node_dvar

const MaterialProperty<std::vector<std::vector<Real> > >* const PorousFlowSink::_dfluid_density_node_dvar
protectedinherited

d(Fluid density for each phase (at the node))/d(PorousFlow variable)

Definition at line 108 of file PorousFlowSink.h.

◆ _dfluid_viscosity_dvar

const MaterialProperty<std::vector<std::vector<Real> > >* const PorousFlowSink::_dfluid_viscosity_dvar
protectedinherited

d(Viscosity of each component in each phase)/d(PorousFlow variable)

Definition at line 114 of file PorousFlowSink.h.

◆ _dictator

const PorousFlowDictator& PorousFlowSink::_dictator
protectedinherited

PorousFlowDictator UserObject.

Definition at line 45 of file PorousFlowSink.h.

Referenced by PorousFlowSink::jac(), and PorousFlowSink::PorousFlowSink().

◆ _dinternal_energy_dvar

const MaterialProperty<std::vector<std::vector<Real> > >* const PorousFlowSink::_dinternal_energy_dvar
protectedinherited

d(internal_energy of each phase)/d(PorousFlow variable)

Definition at line 138 of file PorousFlowSink.h.

◆ _dmass_fractions_dvar

const MaterialProperty<std::vector<std::vector<std::vector<Real> > > >* const PorousFlowSink::_dmass_fractions_dvar
protectedinherited

d(Mass fraction of each component in each phase)/d(PorousFlow variable)

Definition at line 126 of file PorousFlowSink.h.

◆ _dpermeability_dgradvar

const MaterialProperty<std::vector<std::vector<RealTensorValue> > >* const PorousFlowSink::_dpermeability_dgradvar
protectedinherited

d(Permeability)/d(grad(PorousFlow variable))

Definition at line 102 of file PorousFlowSink.h.

Referenced by PorousFlowSink::jac().

◆ _dpermeability_dvar

const MaterialProperty<std::vector<RealTensorValue> >* const PorousFlowSink::_dpermeability_dvar
protectedinherited

d(Permeability)/d(PorousFlow variable)

Definition at line 99 of file PorousFlowSink.h.

◆ _dpp_dvar

const MaterialProperty<std::vector<std::vector<Real> > >* const PorousFlowSinkPTDefiner::_dpp_dvar
protected

d(Nodal pore pressure in each phase)/d(PorousFlow variable)

Definition at line 34 of file PorousFlowSinkPTDefiner.h.

Referenced by dptVar(), and PorousFlowSinkPTDefiner().

◆ _drelative_permeability_dvar

const MaterialProperty<std::vector<std::vector<Real> > >* const PorousFlowSink::_drelative_permeability_dvar
protectedinherited

d(Relative permeability of each phase)/d(PorousFlow variable)

Definition at line 120 of file PorousFlowSink.h.

◆ _dtemp_dvar

const MaterialProperty<std::vector<Real> >* const PorousFlowSinkPTDefiner::_dtemp_dvar
protected

d(Nodal temperature)/d(PorousFlow variable)

Definition at line 40 of file PorousFlowSinkPTDefiner.h.

Referenced by dptVar(), and PorousFlowSinkPTDefiner().

◆ _dthermal_conductivity_dvar

const MaterialProperty<std::vector<RealTensorValue> >* const PorousFlowSink::_dthermal_conductivity_dvar
protectedinherited

d(Thermal_Conductivity)/d(PorousFlow variable)

Definition at line 144 of file PorousFlowSink.h.

◆ _enthalpy

const MaterialProperty<std::vector<Real> >* const PorousFlowSink::_enthalpy
protectedinherited

Enthalpy of each phase.

Definition at line 129 of file PorousFlowSink.h.

◆ _fluid_density_node

const MaterialProperty<std::vector<Real> >* const PorousFlowSink::_fluid_density_node
protectedinherited

Fluid density for each phase (at the node)

Definition at line 105 of file PorousFlowSink.h.

◆ _fluid_viscosity

const MaterialProperty<std::vector<Real> >* const PorousFlowSink::_fluid_viscosity
protectedinherited

Viscosity of each component in each phase.

Definition at line 111 of file PorousFlowSink.h.

Referenced by PorousFlowSink::jac().

◆ _has_enthalpy

const bool PorousFlowSink::_has_enthalpy
protectedinherited

Whether there is an "enthalpy" Material. This is just for error checking.

Definition at line 78 of file PorousFlowSink.h.

Referenced by PorousFlowSink::PorousFlowSink().

◆ _has_internal_energy

const bool PorousFlowSink::_has_internal_energy
protectedinherited

Whether there is an "internal_energy" Material. This is just for error checking.

Definition at line 84 of file PorousFlowSink.h.

Referenced by PorousFlowSink::PorousFlowSink().

◆ _has_mass_fraction

const bool PorousFlowSink::_has_mass_fraction
protectedinherited

Whether there is a "mass_fraction" Material. This is just for error checking.

Definition at line 57 of file PorousFlowSink.h.

Referenced by PorousFlowSink::PorousFlowSink().

◆ _has_mobility

const bool PorousFlowSink::_has_mobility
protectedinherited

Whether there are Materials that can form "mobility". This is just for error checking.

Definition at line 66 of file PorousFlowSink.h.

Referenced by PorousFlowSink::PorousFlowSink().

◆ _has_relperm

const bool PorousFlowSink::_has_relperm
protectedinherited

Whether there is a "relperm" Material. This is just for error checking.

Definition at line 72 of file PorousFlowSink.h.

Referenced by PorousFlowSink::PorousFlowSink().

◆ _has_thermal_conductivity

const bool PorousFlowSink::_has_thermal_conductivity
protectedinherited

Whether there is an "thermal_conductivity" Material. This is just for error checking.

Definition at line 90 of file PorousFlowSink.h.

Referenced by PorousFlowSink::PorousFlowSink().

◆ _internal_energy

const MaterialProperty<std::vector<Real> >* const PorousFlowSink::_internal_energy
protectedinherited

Internal_Energy of each phase.

Definition at line 135 of file PorousFlowSink.h.

◆ _involves_fluid

const bool PorousFlowSink::_involves_fluid
protectedinherited

Whether this BC involves fluid (whether the user has supplied a fluid phase number)

Definition at line 48 of file PorousFlowSink.h.

Referenced by dptVar(), PorousFlowSink::PorousFlowSink(), PorousFlowSinkPTDefiner(), and ptVar().

◆ _m_func

const Function& PorousFlowSink::_m_func
protectedinherited

The flux.

Definition at line 93 of file PorousFlowSink.h.

Referenced by PorousFlowSink::multiplier().

◆ _mass_fractions

const MaterialProperty<std::vector<std::vector<Real> > >* const PorousFlowSink::_mass_fractions
protectedinherited

Mass fraction of each component in each phase.

Definition at line 123 of file PorousFlowSink.h.

◆ _perm_derivs

const bool PorousFlowSink::_perm_derivs
protectedinherited

Flag to check whether permeabiity derivatives are non-zero.

Definition at line 156 of file PorousFlowSink.h.

Referenced by PorousFlowSink::jac().

◆ _permeability

const MaterialProperty<RealTensorValue>* const PorousFlowSink::_permeability
protectedinherited

Permeability of porous material.

Definition at line 96 of file PorousFlowSink.h.

◆ _ph

const unsigned int PorousFlowSink::_ph
protectedinherited

◆ _pp

const MaterialProperty<std::vector<Real> >* const PorousFlowSinkPTDefiner::_pp
protected

Nodal pore pressure in each phase.

Definition at line 31 of file PorousFlowSinkPTDefiner.h.

Referenced by PorousFlowSinkPTDefiner(), and ptVar().

◆ _pt_shift

const VariableValue& PorousFlowSinkPTDefiner::_pt_shift
protected

Subtract this from porepressure or temperature before evaluating PiecewiseLinearSink, HalfCubicSink, etc.

Definition at line 43 of file PorousFlowSinkPTDefiner.h.

Referenced by ptVar().

◆ _relative_permeability

const MaterialProperty<std::vector<Real> >* const PorousFlowSink::_relative_permeability
protectedinherited

Relative permeability of each phase.

Definition at line 117 of file PorousFlowSink.h.

◆ _sp

const unsigned int PorousFlowSink::_sp
protectedinherited

The component number (only used if _use_mass_fraction==true)

Definition at line 60 of file PorousFlowSink.h.

Referenced by PorousFlowSink::computeQpResidual(), PorousFlowSink::jac(), and PorousFlowSink::PorousFlowSink().

◆ _temp

const MaterialProperty<Real>* const PorousFlowSinkPTDefiner::_temp
protected

Nodal temperature.

Definition at line 37 of file PorousFlowSinkPTDefiner.h.

Referenced by PorousFlowSinkPTDefiner(), and ptVar().

◆ _thermal_conductivity

const MaterialProperty<RealTensorValue>* const PorousFlowSink::_thermal_conductivity
protectedinherited

Thermal_Conductivity of porous material.

Definition at line 141 of file PorousFlowSink.h.

◆ _use_enthalpy

const bool PorousFlowSink::_use_enthalpy
protectedinherited

Whether to multiply the sink flux by enthalpy.

Definition at line 75 of file PorousFlowSink.h.

Referenced by PorousFlowSink::computeQpResidual(), PorousFlowSink::jac(), and PorousFlowSink::PorousFlowSink().

◆ _use_internal_energy

const bool PorousFlowSink::_use_internal_energy
protectedinherited

Whether to multiply the sink flux by internal_energy.

Definition at line 81 of file PorousFlowSink.h.

Referenced by PorousFlowSink::computeQpResidual(), PorousFlowSink::jac(), and PorousFlowSink::PorousFlowSink().

◆ _use_mass_fraction

const bool PorousFlowSink::_use_mass_fraction
protectedinherited

Whether the flux will be multiplied by the mass fraction.

Definition at line 54 of file PorousFlowSink.h.

Referenced by PorousFlowSink::computeQpResidual(), PorousFlowSink::jac(), and PorousFlowSink::PorousFlowSink().

◆ _use_mobility

const bool PorousFlowSink::_use_mobility
protectedinherited

Whether to multiply the sink flux by permeability*density/viscosity.

Definition at line 63 of file PorousFlowSink.h.

Referenced by PorousFlowSink::computeQpResidual(), PorousFlowSink::jac(), and PorousFlowSink::PorousFlowSink().

◆ _use_relperm

const bool PorousFlowSink::_use_relperm
protectedinherited

Whether to multiply the sink flux by relative permeability.

Definition at line 69 of file PorousFlowSink.h.

Referenced by PorousFlowSink::computeQpResidual(), PorousFlowSink::jac(), and PorousFlowSink::PorousFlowSink().

◆ _use_thermal_conductivity

const bool PorousFlowSink::_use_thermal_conductivity
protectedinherited

Whether to multiply the sink flux by thermal_conductivity.

Definition at line 87 of file PorousFlowSink.h.

Referenced by PorousFlowSink::computeQpResidual(), PorousFlowSink::jac(), and PorousFlowSink::PorousFlowSink().


The documentation for this class was generated from the following files:
PorousFlowSink::_use_mass_fraction
const bool _use_mass_fraction
Whether the flux will be multiplied by the mass fraction.
Definition: PorousFlowSink.h:54
PorousFlowSink::_dictator
const PorousFlowDictator & _dictator
PorousFlowDictator UserObject.
Definition: PorousFlowSink.h:45
pow
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
Definition: ExpressionBuilder.h:673
PorousFlowDictator::notPorousFlowVariable
bool notPorousFlowVariable(unsigned int moose_var_num) const
Returns true if moose_var_num is not a porous flow variabe.
Definition: PorousFlowDictator.C:161
PorousFlowSink::PorousFlowSink
PorousFlowSink(const InputParameters &parameters)
Definition: PorousFlowSink.C:80
PorousFlowSink::_m_func
const Function & _m_func
The flux.
Definition: PorousFlowSink.h:93
PorousFlowSinkPTDefiner::_pp
const MaterialProperty< std::vector< Real > > *const _pp
Nodal pore pressure in each phase.
Definition: PorousFlowSinkPTDefiner.h:31
PorousFlowSink::_use_relperm
const bool _use_relperm
Whether to multiply the sink flux by relative permeability.
Definition: PorousFlowSink.h:69
PorousFlowSinkPTDefiner::_pt_shift
const VariableValue & _pt_shift
Subtract this from porepressure or temperature before evaluating PiecewiseLinearSink,...
Definition: PorousFlowSinkPTDefiner.h:43
PorousFlowSink::_fluid_viscosity
const MaterialProperty< std::vector< Real > > *const _fluid_viscosity
Viscosity of each component in each phase.
Definition: PorousFlowSink.h:111
PorousFlowSink::_involves_fluid
const bool _involves_fluid
Whether this BC involves fluid (whether the user has supplied a fluid phase number)
Definition: PorousFlowSink.h:48
PorousFlowDictator::porousFlowVariableNum
unsigned int porousFlowVariableNum(unsigned int moose_var_num) const
The PorousFlow variable number.
Definition: PorousFlowDictator.C:135
PorousFlowSinkPTDefiner::_temp
const MaterialProperty< Real > *const _temp
Nodal temperature.
Definition: PorousFlowSinkPTDefiner.h:37
PorousFlowSink::dmultiplier_dvar
virtual Real dmultiplier_dvar(unsigned int pvar) const
d(multiplier)/d(Porous flow variable pvar)
Definition: PorousFlowSink.C:344
PorousFlowSink::_use_mobility
const bool _use_mobility
Whether to multiply the sink flux by permeability*density/viscosity.
Definition: PorousFlowSink.h:63
PorousFlowSink::_perm_derivs
const bool _perm_derivs
Flag to check whether permeabiity derivatives are non-zero.
Definition: PorousFlowSink.h:156
PorousFlowSink::multiplier
virtual Real multiplier() const
The flux gets multiplied by this quantity.
Definition: PorousFlowSink.C:338
PorousFlowSink::_use_enthalpy
const bool _use_enthalpy
Whether to multiply the sink flux by enthalpy.
Definition: PorousFlowSink.h:75
PorousFlowSink::jac
Real jac(unsigned int jvar) const
Derivative of residual with respect to the jvar variable.
Definition: PorousFlowSink.C:262
PorousFlowSink::_dpermeability_dgradvar
const MaterialProperty< std::vector< std::vector< RealTensorValue > > > *const _dpermeability_dgradvar
d(Permeability)/d(grad(PorousFlow variable))
Definition: PorousFlowSink.h:102
PorousFlowSinkPTDefiner::_dtemp_dvar
const MaterialProperty< std::vector< Real > > *const _dtemp_dvar
d(Nodal temperature)/d(PorousFlow variable)
Definition: PorousFlowSinkPTDefiner.h:40
PorousFlowSink::_sp
const unsigned int _sp
The component number (only used if _use_mass_fraction==true)
Definition: PorousFlowSink.h:60
PorousFlowSinkPTDefiner::_dpp_dvar
const MaterialProperty< std::vector< std::vector< Real > > > *const _dpp_dvar
d(Nodal pore pressure in each phase)/d(PorousFlow variable)
Definition: PorousFlowSinkPTDefiner.h:34
PorousFlowSink::_ph
const unsigned int _ph
The phase number.
Definition: PorousFlowSink.h:51
PorousFlowSink::_use_internal_energy
const bool _use_internal_energy
Whether to multiply the sink flux by internal_energy.
Definition: PorousFlowSink.h:81
PorousFlowSink::_use_thermal_conductivity
const bool _use_thermal_conductivity
Whether to multiply the sink flux by thermal_conductivity.
Definition: PorousFlowSink.h:87