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

Computes a component of the Darcy velocity: -k_ij * krel /mu (nabla_j P - w_j) where k_ij is the permeability tensor, krel is the relative permeaility, mu is the fluid viscosity, P is the fluid pressure and w_j is the fluid weight This is measured in m^3 . More...

#include <PorousFlowDarcyVelocityComponent.h>

Inheritance diagram for PorousFlowDarcyVelocityComponent:
[legend]

Public Member Functions

 PorousFlowDarcyVelocityComponent (const InputParameters &parameters)
 

Protected Member Functions

virtual Real computeValue ()
 

Protected Attributes

const MaterialProperty< std::vector< Real > > & _relative_permeability
 Relative permeability of each phase. More...
 
const MaterialProperty< std::vector< Real > > & _fluid_viscosity
 Viscosity of each component in each phase. More...
 
const MaterialProperty< RealTensorValue > & _permeability
 Permeability of porous material. More...
 
const MaterialProperty< std::vector< RealGradient > > & _grad_p
 Gradient of the pore pressure in each phase. More...
 
const MaterialProperty< std::vector< Real > > & _fluid_density_qp
 Fluid density for each phase (at the qp) More...
 
const PorousFlowDictator_dictator
 PorousFlowDicatator UserObject. More...
 
const unsigned int _ph
 Index of the fluid phase. More...
 
unsigned int _component
 Desired spatial component. More...
 
const RealVectorValue _gravity
 Gravitational acceleration. More...
 

Detailed Description

Computes a component of the Darcy velocity: -k_ij * krel /mu (nabla_j P - w_j) where k_ij is the permeability tensor, krel is the relative permeaility, mu is the fluid viscosity, P is the fluid pressure and w_j is the fluid weight This is measured in m^3 .

s^-1 . m^-2

Definition at line 31 of file PorousFlowDarcyVelocityComponent.h.

Constructor & Destructor Documentation

◆ PorousFlowDarcyVelocityComponent()

PorousFlowDarcyVelocityComponent::PorousFlowDarcyVelocityComponent ( const InputParameters &  parameters)

Definition at line 34 of file PorousFlowDarcyVelocityComponent.C.

36  : AuxKernel(parameters),
38  getMaterialProperty<std::vector<Real>>("PorousFlow_relative_permeability_qp")),
39  _fluid_viscosity(getMaterialProperty<std::vector<Real>>("PorousFlow_viscosity_qp")),
40  _permeability(getMaterialProperty<RealTensorValue>("PorousFlow_permeability_qp")),
41  _grad_p(getMaterialProperty<std::vector<RealGradient>>("PorousFlow_grad_porepressure_qp")),
42  _fluid_density_qp(getMaterialProperty<std::vector<Real>>("PorousFlow_fluid_phase_density_qp")),
43  _dictator(getUserObject<PorousFlowDictator>("PorousFlowDictator")),
44  _ph(getParam<unsigned int>("fluid_phase")),
45  _component(getParam<MooseEnum>("component")),
46  _gravity(getParam<RealVectorValue>("gravity"))
47 {
48  if (_ph >= _dictator.numPhases())
49  paramError("fluid_phase",
50  "The Dictator proclaims that the maximum phase index in this simulation is ",
51  _dictator.numPhases() - 1,
52  " whereas you have used ",
53  _ph,
54  ". Remember that indexing starts at 0. The Dictator is watching you, to "
55  "ensure your wellbeing.");
56 }
const MaterialProperty< RealTensorValue > & _permeability
Permeability of porous material.
unsigned int numPhases() const
The number of fluid phases.
const MaterialProperty< std::vector< RealGradient > > & _grad_p
Gradient of the pore pressure in each phase.
const MaterialProperty< std::vector< Real > > & _relative_permeability
Relative permeability of each phase.
const RealVectorValue _gravity
Gravitational acceleration.
unsigned int _component
Desired spatial component.
const PorousFlowDictator & _dictator
PorousFlowDicatator UserObject.
const MaterialProperty< std::vector< Real > > & _fluid_viscosity
Viscosity of each component in each phase.
const unsigned int _ph
Index of the fluid phase.
const MaterialProperty< std::vector< Real > > & _fluid_density_qp
Fluid density for each phase (at the qp)

Member Function Documentation

◆ computeValue()

Real PorousFlowDarcyVelocityComponent::computeValue ( )
protectedvirtual

Reimplemented in PorousFlowDarcyVelocityComponentLowerDimensional.

Definition at line 59 of file PorousFlowDarcyVelocityComponent.C.

60 {
61  return -(_permeability[_qp] * (_grad_p[_qp][_ph] - _fluid_density_qp[_qp][_ph] * _gravity) *
63 }
const MaterialProperty< RealTensorValue > & _permeability
Permeability of porous material.
const MaterialProperty< std::vector< RealGradient > > & _grad_p
Gradient of the pore pressure in each phase.
const MaterialProperty< std::vector< Real > > & _relative_permeability
Relative permeability of each phase.
const RealVectorValue _gravity
Gravitational acceleration.
unsigned int _component
Desired spatial component.
const MaterialProperty< std::vector< Real > > & _fluid_viscosity
Viscosity of each component in each phase.
const unsigned int _ph
Index of the fluid phase.
const MaterialProperty< std::vector< Real > > & _fluid_density_qp
Fluid density for each phase (at the qp)

Member Data Documentation

◆ _component

unsigned int PorousFlowDarcyVelocityComponent::_component
protected

Desired spatial component.

Definition at line 61 of file PorousFlowDarcyVelocityComponent.h.

Referenced by computeValue(), and PorousFlowDarcyVelocityComponentLowerDimensional::computeValue().

◆ _dictator

const PorousFlowDictator& PorousFlowDarcyVelocityComponent::_dictator
protected

PorousFlowDicatator UserObject.

Definition at line 55 of file PorousFlowDarcyVelocityComponent.h.

Referenced by PorousFlowDarcyVelocityComponent().

◆ _fluid_density_qp

const MaterialProperty<std::vector<Real> >& PorousFlowDarcyVelocityComponent::_fluid_density_qp
protected

Fluid density for each phase (at the qp)

Definition at line 52 of file PorousFlowDarcyVelocityComponent.h.

Referenced by computeValue(), and PorousFlowDarcyVelocityComponentLowerDimensional::computeValue().

◆ _fluid_viscosity

const MaterialProperty<std::vector<Real> >& PorousFlowDarcyVelocityComponent::_fluid_viscosity
protected

Viscosity of each component in each phase.

Definition at line 43 of file PorousFlowDarcyVelocityComponent.h.

Referenced by computeValue(), and PorousFlowDarcyVelocityComponentLowerDimensional::computeValue().

◆ _grad_p

const MaterialProperty<std::vector<RealGradient> >& PorousFlowDarcyVelocityComponent::_grad_p
protected

Gradient of the pore pressure in each phase.

Definition at line 49 of file PorousFlowDarcyVelocityComponent.h.

Referenced by computeValue(), and PorousFlowDarcyVelocityComponentLowerDimensional::computeValue().

◆ _gravity

const RealVectorValue PorousFlowDarcyVelocityComponent::_gravity
protected

Gravitational acceleration.

Definition at line 64 of file PorousFlowDarcyVelocityComponent.h.

Referenced by computeValue(), and PorousFlowDarcyVelocityComponentLowerDimensional::computeValue().

◆ _permeability

const MaterialProperty<RealTensorValue>& PorousFlowDarcyVelocityComponent::_permeability
protected

Permeability of porous material.

Definition at line 46 of file PorousFlowDarcyVelocityComponent.h.

Referenced by computeValue(), and PorousFlowDarcyVelocityComponentLowerDimensional::computeValue().

◆ _ph

const unsigned int PorousFlowDarcyVelocityComponent::_ph
protected

◆ _relative_permeability

const MaterialProperty<std::vector<Real> >& PorousFlowDarcyVelocityComponent::_relative_permeability
protected

Relative permeability of each phase.

Definition at line 40 of file PorousFlowDarcyVelocityComponent.h.

Referenced by computeValue(), and PorousFlowDarcyVelocityComponentLowerDimensional::computeValue().


The documentation for this class was generated from the following files: