3.2-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
Dumux::OnePNCVolumeVariables< Traits > Class Template Reference

Contains the quantities which are are constant within a finite volume in the one-phase, n-component model. More...

#include <dumux/porousmediumflow/1pnc/volumevariables.hh>

Inheritance diagram for Dumux::OnePNCVolumeVariables< Traits >:
Inheritance graph

Description

template<class Traits>
class Dumux::OnePNCVolumeVariables< Traits >

Contains the quantities which are are constant within a finite volume in the one-phase, n-component model.

Note
The default value for the phase index given in the fluid property interfaces is not used, but is only here to enable calling these functions without handing in a phase index (as in a single-phasic context there is only one phase).

Public Types

using FluidState = typename Traits::FluidState
 Export fluid state type. More...
 
using FluidSystem = typename Traits::FluidSystem
 Export fluid system type. More...
 
using Indices = typename Traits::ModelTraits::Indices
 Export indices. More...
 
using SolidState = typename Traits::SolidState
 Export type of solid state. More...
 
using SolidSystem = typename Traits::SolidSystem
 Export type of solid system. More...
 
using PrimaryVariables = typename Traits::PrimaryVariables
 Export the type used for the primary variables. More...
 

Public Member Functions

template<class ElemSol , class Problem , class Element , class Scv >
void update (const ElemSol &elemSol, const Problem &problem, const Element &element, const Scv &scv)
 Updates all quantities for a given control volume. More...
 
template<class ElemSol , class Problem , class Element , class Scv >
void completeFluidState (const ElemSol &elemSol, const Problem &problem, const Element &element, const Scv &scv, FluidState &fluidState, SolidState &solidState)
 Sets complete fluid state. More...
 
const FluidStatefluidState () const
 Returns the fluid configuration at the given primary variables. More...
 
const SolidStatesolidState () const
 Returns the phase state for the control volume. More...
 
Scalar averageMolarMass (int phaseIdx=0) const
 Returns the average molar mass \(\mathrm{[kg/mol]}\) of the fluid phase. More...
 
Scalar density (int phaseIdx=0) const
 Returns density \(\mathrm{[kg/m^3]}\) the of the fluid phase. More...
 
Scalar molarDensity (int phaseIdx=0) const
 Returns molar density \(\mathrm{[mol/m^3]}\) the of the fluid phase. More...
 
Scalar saturation (int phaseIdx=0) const
 Returns the saturation. More...
 
Scalar moleFraction (int phaseIdx, int compIdx) const
 Returns the mole fraction \(\mathrm{[mol/mol]}\) of a component in the phase. More...
 
Scalar massFraction (int phaseIdx, int compIdx) const
 Returns the mass fraction of a component in the phase. More...
 
Scalar pressure (int phaseIdx=0) const
 Returns the effective pressure \(\mathrm{[Pa]}\) of a given phase within the control volume. More...
 
Scalar temperature () const
 Returns the temperature \(\mathrm{[K]}\) inside the sub-control volume. More...
 
Scalar mobility (int phaseIdx=0) const
 Returns the mobility \(\mathrm{[1/(Pa s)]}\). More...
 
Scalar viscosity (int phaseIdx=0) const
 Returns the dynamic viscosity \(\mathrm{[Pa s]}\) of the fluid within the control volume. More...
 
Scalar porosity () const
 Returns the average porosity \(\mathrm{[-]}\) within the control volume. More...
 
Scalar diffusionCoefficient (int phaseIdx, int compIdx) const
 Returns the binary diffusion coefficients for a phase in \([m^2/s]\). More...
 
Scalar diffusionCoefficient (int phaseIdx, int compIIdx, int compJIdx) const
 Returns the binary diffusion coefficients for a phase in \([m^2/s]\). More...
 
Scalar effectiveDiffusionCoefficient (int phaseIdx, int compIIdx, int compJIdx) const
 Returns the effective diffusion coefficients for a phase in \([m^2/s]\). More...
 
Scalar molarity (int compIdx) const
 Returns the molarity of a component in the phase. More...
 
Scalar massFraction (int compIdx) const
 Returns the mass fraction of a component in the phase. More...
 
const PermeabilityType & permeability () const
 Returns the permeability within the control volume in \([m^2]\). More...
 
const PrimaryVariablespriVars () const
 Returns the vector of primary variables. More...
 
Scalar priVar (const int pvIdx) const
 Returns a component of primary variable vector. More...
 
Scalar extrusionFactor () const
 Returns how much the sub-control volume is extruded. More...
 

Static Public Member Functions

static constexpr bool useMoles ()
 Returns whether moles or masses are balanced. More...
 
static constexpr int numFluidPhases ()
 Return number of phases considered by the model. More...
 
static constexpr int numFluidComponents ()
 Return number of components considered by the model. More...
 

Protected Attributes

FluidState fluidState_
 
SolidState solidState_
 

Member Typedef Documentation

◆ FluidState

template<class Traits >
using Dumux::OnePNCVolumeVariables< Traits >::FluidState = typename Traits::FluidState

Export fluid state type.

◆ FluidSystem

template<class Traits >
using Dumux::OnePNCVolumeVariables< Traits >::FluidSystem = typename Traits::FluidSystem

Export fluid system type.

◆ Indices

template<class Traits >
using Dumux::OnePNCVolumeVariables< Traits >::Indices = typename Traits::ModelTraits::Indices

Export indices.

◆ PrimaryVariables

template<class Traits >
using Dumux::PorousMediumFlowVolumeVariables< Traits >::PrimaryVariables = typename Traits::PrimaryVariables
inherited

Export the type used for the primary variables.

◆ SolidState

template<class Traits >
using Dumux::OnePNCVolumeVariables< Traits >::SolidState = typename Traits::SolidState

Export type of solid state.

◆ SolidSystem

template<class Traits >
using Dumux::OnePNCVolumeVariables< Traits >::SolidSystem = typename Traits::SolidSystem

Export type of solid system.

Member Function Documentation

◆ averageMolarMass()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::averageMolarMass ( int  phaseIdx = 0) const
inline

Returns the average molar mass \(\mathrm{[kg/mol]}\) of the fluid phase.

Parameters
phaseIdxThe phase index

◆ completeFluidState()

template<class Traits >
template<class ElemSol , class Problem , class Element , class Scv >
void Dumux::OnePNCVolumeVariables< Traits >::completeFluidState ( const ElemSol &  elemSol,
const Problem &  problem,
const Element &  element,
const Scv &  scv,
FluidState fluidState,
SolidState solidState 
)
inline

Sets complete fluid state.

Parameters
elemSolA vector containing all primary variables connected to the element
problemThe object specifying the problem which ought to be simulated
elementAn element which contains part of the control volume
scvThe sub-control volume
fluidStateA container with the current (physical) state of the fluid
solidStateA container with the current (physical) state of the solid

◆ density()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::density ( int  phaseIdx = 0) const
inline

Returns density \(\mathrm{[kg/m^3]}\) the of the fluid phase.

Note
the phase index passed to this function is for compatibility reasons with multi-phasic models.

◆ diffusionCoefficient() [1/2]

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::diffusionCoefficient ( int  phaseIdx,
int  compIdx 
) const
inline

Returns the binary diffusion coefficients for a phase in \([m^2/s]\).

◆ diffusionCoefficient() [2/2]

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::diffusionCoefficient ( int  phaseIdx,
int  compIIdx,
int  compJIdx 
) const
inline

Returns the binary diffusion coefficients for a phase in \([m^2/s]\).

◆ effectiveDiffusionCoefficient()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::effectiveDiffusionCoefficient ( int  phaseIdx,
int  compIIdx,
int  compJIdx 
) const
inline

Returns the effective diffusion coefficients for a phase in \([m^2/s]\).

◆ extrusionFactor()

template<class Traits >
Scalar Dumux::PorousMediumFlowVolumeVariables< Traits >::extrusionFactor ( ) const
inlineinherited

Returns how much the sub-control volume is extruded.

This means the factor by which a lower-dimensional (1D or 2D) entity needs to be expanded to get a full dimensional cell. The default is 1.0 which means that 1D problems are actually thought as pipes with a cross section of 1 m^2 and 2D problems are assumed to extend 1 m to the back.

◆ fluidState()

template<class Traits >
const FluidState & Dumux::OnePNCVolumeVariables< Traits >::fluidState ( ) const
inline

Returns the fluid configuration at the given primary variables.

◆ massFraction() [1/2]

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::massFraction ( int  compIdx) const
inline

Returns the mass fraction of a component in the phase.

Parameters
compIdxThe index of the component

◆ massFraction() [2/2]

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::massFraction ( int  phaseIdx,
int  compIdx 
) const
inline

Returns the mass fraction of a component in the phase.

Parameters
phaseIdxThe index of the fluid phase
compIdxThe index of the component
Note
The phase index passed to this function is for compatibility reasons with multi-phasic models.

◆ mobility()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::mobility ( int  phaseIdx = 0) const
inline

Returns the mobility \(\mathrm{[1/(Pa s)]}\).

The term mobility is usually not employed in the one phase context. The method is here for compatibility reasons with other models.

Note
The phase index passed to this function is for compatibility reasons with multi-phasic models.

◆ molarDensity()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::molarDensity ( int  phaseIdx = 0) const
inline

Returns molar density \(\mathrm{[mol/m^3]}\) the of the fluid phase.

Note
the phase index passed to this function is for compatibility reasons with multi-phasic models.

◆ molarity()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::molarity ( int  compIdx) const
inline

Returns the molarity of a component in the phase.

Parameters
compIdxThe index of the component

◆ moleFraction()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::moleFraction ( int  phaseIdx,
int  compIdx 
) const
inline

Returns the mole fraction \(\mathrm{[mol/mol]}\) of a component in the phase.

Parameters
phaseIdxThe index of the fluid phase
compIdxThe index of the component
Note
The phase index passed to this function is for compatibility reasons with multi-phasic models.

◆ numFluidComponents()

template<class Traits >
static constexpr int Dumux::PorousMediumFlowVolumeVariables< Traits >::numFluidComponents ( )
inlinestaticconstexprinherited

Return number of components considered by the model.

◆ numFluidPhases()

template<class Traits >
static constexpr int Dumux::PorousMediumFlowVolumeVariables< Traits >::numFluidPhases ( )
inlinestaticconstexprinherited

Return number of phases considered by the model.

◆ permeability()

template<class Traits >
const PermeabilityType & Dumux::OnePNCVolumeVariables< Traits >::permeability ( ) const
inline

Returns the permeability within the control volume in \([m^2]\).

◆ porosity()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::porosity ( ) const
inline

Returns the average porosity \(\mathrm{[-]}\) within the control volume.

◆ pressure()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::pressure ( int  phaseIdx = 0) const
inline

Returns the effective pressure \(\mathrm{[Pa]}\) of a given phase within the control volume.

Parameters
phaseIdxThe phase index
Note
The phase index passed to this function is for compatibility reasons with multi-phasic models.

◆ priVar()

template<class Traits >
Scalar Dumux::PorousMediumFlowVolumeVariables< Traits >::priVar ( const int  pvIdx) const
inlineinherited

Returns a component of primary variable vector.

Parameters
pvIdxThe index of the primary variable of interest

◆ priVars()

template<class Traits >
const PrimaryVariables & Dumux::PorousMediumFlowVolumeVariables< Traits >::priVars ( ) const
inlineinherited

Returns the vector of primary variables.

◆ saturation()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::saturation ( int  phaseIdx = 0) const
inline

Returns the saturation.

This method is here for compatibility reasons with other models. The saturation is always 1.0 in a one-phasic context.

◆ solidState()

template<class Traits >
const SolidState & Dumux::OnePNCVolumeVariables< Traits >::solidState ( ) const
inline

Returns the phase state for the control volume.

◆ temperature()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::temperature ( ) const
inline

Returns the temperature \(\mathrm{[K]}\) inside the sub-control volume.

Note that we assume thermodynamic equilibrium, i.e. the temperature of the rock matrix and of all fluid phases are identical.

◆ update()

template<class Traits >
template<class ElemSol , class Problem , class Element , class Scv >
void Dumux::OnePNCVolumeVariables< Traits >::update ( const ElemSol &  elemSol,
const Problem &  problem,
const Element &  element,
const Scv &  scv 
)
inline

Updates all quantities for a given control volume.

Parameters
elemSolA vector containing all primary variables connected to the element
problemThe object specifying the problem which ought to be simulated
elementAn element which contains part of the control volume
scvThe sub-control volume

◆ useMoles()

template<class Traits >
static constexpr bool Dumux::OnePNCVolumeVariables< Traits >::useMoles ( )
inlinestaticconstexpr

Returns whether moles or masses are balanced.

◆ viscosity()

template<class Traits >
Scalar Dumux::OnePNCVolumeVariables< Traits >::viscosity ( int  phaseIdx = 0) const
inline

Returns the dynamic viscosity \(\mathrm{[Pa s]}\) of the fluid within the control volume.

Note
The phase index passed to this function is for compatibility reasons with multi-phasic models.

Member Data Documentation

◆ fluidState_

template<class Traits >
FluidState Dumux::OnePNCVolumeVariables< Traits >::fluidState_
protected

◆ solidState_

template<class Traits >
SolidState Dumux::OnePNCVolumeVariables< Traits >::solidState_
protected

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