version 3.9-dev
Dumux::TracerVolumeVariables< Traits > Class Template Reference

Contains the quantities which are constant within a finite volume for the tracer model.

#include <dumux/porousmediumflow/tracer/volumevariables.hh>

Inheritance diagram for Dumux::TracerVolumeVariables< Traits >:

Public Types

using FluidSystem = typename Traits::FluidSystem
 Export the fluid system type. More...
 
using SolidState = typename Traits::SolidState
 Export the solid state type. More...
 
using Indices = typename Traits::ModelTraits::Indices
 Export the indices. 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...
 
Scalar density (int phaseIdx=0) const
 Returns the density \(\mathrm{[kg/m^3]}\) the of the fluid phase. More...
 
Scalar averageMolarMass (int phaseIdx=0) const
 Returns the average molar mass \(\mathrm{[kg/mol]}\) of the fluid phase. More...
 
const SolidStatesolidState () const
 Returns the phase state for the control volume. More...
 
Scalar saturation (int phaseIdx=0) const
 Returns the saturation. More...
 
Scalar mobility (int phaseIdx=0) const
 Returns the mobility. More...
 
Scalar molarDensity (int phaseIdx=0) const
 Returns the molar density \(\mathrm{[mol/m^3]}\) the of the fluid phase. 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 \(\mathrm{[kg/kg]}\) of a component in the phase. More...
 
Scalar molarity (int phaseIdx, int compIdx) const
 Returns the concentration \(\mathrm{[mol/m^3]}\) of a component in the phase. 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 porosity () const
 Return the average porosity \(\mathrm{[-]}\) within the control volume. 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 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

SolidState solidState_
 
Scalar fluidDensity_
 
Scalar fluidMolarMass_
 
Scalar fluidSaturation_ = 1.0
 
std::array< Scalar, numFluidComps > diffCoeff_
 
std::array< Scalar, numFluidComps > effectiveDiffCoeff_
 
std::array< Scalar, numFluidComps > moleOrMassFraction_
 

Member Typedef Documentation

◆ FluidSystem

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

◆ Indices

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

◆ PrimaryVariables

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

◆ SolidState

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

Member Function Documentation

◆ averageMolarMass()

template<class Traits >
Scalar Dumux::TracerVolumeVariables< Traits >::averageMolarMass ( int  phaseIdx = 0) const
inline
Parameters
phaseIdxThe phase index

◆ density()

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

We always forward to the fluid state with the phaseIdx property (see class description).

Parameters
phaseIdxThe phase index

◆ diffusionCoefficient()

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

◆ effectiveDiffusionCoefficient()

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

◆ extrusionFactor()

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

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.

◆ massFraction()

template<class Traits >
Scalar Dumux::TracerVolumeVariables< Traits >::massFraction ( int  phaseIdx,
int  compIdx 
) const
inline
Parameters
phaseIdxThe phase index
compIdxThe index of the component

◆ mobility()

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

This method is here for compatibility reasons with other models. The mobility is always 1 for one-phasic models where the velocity field is given

Parameters
phaseIdxThe phase index

◆ molarDensity()

template<class Traits >
Scalar Dumux::TracerVolumeVariables< Traits >::molarDensity ( int  phaseIdx = 0) const
inline
Parameters
phaseIdxThe phase index

◆ molarity()

template<class Traits >
Scalar Dumux::TracerVolumeVariables< Traits >::molarity ( int  phaseIdx,
int  compIdx 
) const
inline
Parameters
phaseIdxThe phase index
compIdxThe index of the component

◆ moleFraction()

template<class Traits >
Scalar Dumux::TracerVolumeVariables< Traits >::moleFraction ( int  phaseIdx,
int  compIdx 
) const
inline
Parameters
phaseIdxThe phase index
compIdxThe index of the component

◆ numFluidComponents()

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

◆ numFluidPhases()

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

◆ porosity()

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

◆ priVar()

template<class Traits >
Scalar Dumux::PorousMediumFlowVolumeVariables< Traits >::priVar ( const int  pvIdx) const
inlineinherited
Parameters
pvIdxThe index of the primary variable of interest

◆ priVars()

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

◆ saturation()

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

This method is here for compatibility reasons with other models. The saturation is always 1.0 in a one-phasic context, if two-phases or richards are considered, the spatialParams serve as way to pass the saturation from the main-file to the volVars and then to the localresidual for the tracer model.

Parameters
phaseIdxThe phase index

◆ solidState()

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

◆ update()

template<class Traits >
template<class ElemSol , class Problem , class Element , class Scv >
void Dumux::TracerVolumeVariables< Traits >::update ( const ElemSol &  elemSol,
const Problem &  problem,
const Element &  element,
const Scv &  scv 
)
inline
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

Member Data Documentation

◆ diffCoeff_

template<class Traits >
std::array<Scalar, numFluidComps> Dumux::TracerVolumeVariables< Traits >::diffCoeff_
protected

◆ effectiveDiffCoeff_

template<class Traits >
std::array<Scalar, numFluidComps> Dumux::TracerVolumeVariables< Traits >::effectiveDiffCoeff_
protected

◆ fluidDensity_

template<class Traits >
Scalar Dumux::TracerVolumeVariables< Traits >::fluidDensity_
protected

◆ fluidMolarMass_

template<class Traits >
Scalar Dumux::TracerVolumeVariables< Traits >::fluidMolarMass_
protected

◆ fluidSaturation_

template<class Traits >
Scalar Dumux::TracerVolumeVariables< Traits >::fluidSaturation_ = 1.0
protected

◆ moleOrMassFraction_

template<class Traits >
std::array<Scalar, numFluidComps> Dumux::TracerVolumeVariables< Traits >::moleOrMassFraction_
protected

◆ solidState_

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

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