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

Volume variables for the non-isothermal free-flow models. More...

#include <dumux/freeflow/volumevariables.hh>

Inheritance diagram for Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >:

Description

template<class Traits, class Impl>
class Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >

Volume variables for the non-isothermal free-flow models.

Public Types

using PrimaryVariables = typename Traits::PrimaryVariables
 export the type used for the primary variables More...
 
using FluidSystem = typename Traits::FluidSystem
 export the underlying fluid system More...
 
using Indices = typename Traits::ModelTraits::Indices
 export the type encapsulating primary variable indices 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)
 Update all quantities for a given control volume. More...
 
Scalar internalEnergy (int phaseIdx=0) const
 Returns the total internal energy of a phase in the sub-control volume. More...
 
Scalar enthalpy (int phaseIdx=0) const
 Returns the total enthalpy of a phase in the sub-control volume. More...
 
Scalar componentEnthalpy (unsigned int compIdx) const
 Returns the component enthalpy \(\mathrm{[J/(kg*K)]}\) in the sub-control volume. More...
 
Scalar thermalConductivity () const
 Returns the thermal conductivity \(\mathrm{[W/(m*K)]}\) of the fluid phase in the sub-control volume. More...
 
Scalar effectiveThermalConductivity () const
 Returns the effective thermal conductivity \(\mathrm{[W/(m*K)]}\) of the fluid-flow in the sub-control volume. More...
 
Scalar heatCapacity () const
 Return the specific isobaric heat capacity \(\mathrm{[J/(kg*K)]}\) in the sub-control volume. More...
 
template<class ElementSolution , class Problem , class Element , class SubControlVolume >
void update (const ElementSolution &elemSol, const Problem &problem, const Element &element, const SubControlVolume &scv)
 Update all quantities for a given control volume. More...
 
Scalar extrusionFactor () const
 Return how much the sub-control volume is extruded. More...
 
Scalar priVar (const int pvIdx) const
 Return a component of primary variable vector. More...
 

Static Public Member Functions

template<class ElemSol , class Problem , class Element , class Scv >
static Scalar temperature (const ElemSol &elemSol, const Problem &problem, const Element &element, const Scv &scv)
 The temperature is a primary variable for non-isothermal models. More...
 
template<class FluidState , class ParameterCache >
static Scalar enthalpy (const FluidState &fluidState, const ParameterCache &paramCache)
 
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...
 
template<class ElementSolution , class Problem , class Element , class SubControlVolume >
static Scalar temperature (const ElementSolution &elemSol, const Problem &problem, const Element &element, const SubControlVolume &scv)
 The temperature is obtained from the problem as a constant for isothermal models. More...
 

Protected Member Functions

const Impl & asImp_ () const
 
Impl & asImp_ ()
 

Protected Attributes

PrimaryVariables priVars_
 
Scalar extrusionFactor_
 

Member Typedef Documentation

◆ FluidSystem

template<class Traits , class Impl >
using Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::FluidSystem = typename Traits::FluidSystem

export the underlying fluid system

◆ Indices

template<class Traits , class Impl >
using Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::Indices = typename Traits::ModelTraits::Indices

export the type encapsulating primary variable indices

◆ PrimaryVariables

template<class Traits , class Impl >
using Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::PrimaryVariables = typename Traits::PrimaryVariables

export the type used for the primary variables

Member Function Documentation

◆ asImp_() [1/2]

template<class Traits , class Impl >
Impl & Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, false >::asImp_ ( )
inlineprotectedinherited

◆ asImp_() [2/2]

template<class Traits , class Impl >
const Impl & Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, false >::asImp_ ( ) const
inlineprotectedinherited

◆ componentEnthalpy()

template<class Traits , class Impl >
Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::componentEnthalpy ( unsigned int  compIdx) const
inline

Returns the component enthalpy \(\mathrm{[J/(kg*K)]}\) in the sub-control volume.

◆ effectiveThermalConductivity()

template<class Traits , class Impl >
Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::effectiveThermalConductivity ( ) const
inline

Returns the effective thermal conductivity \(\mathrm{[W/(m*K)]}\) of the fluid-flow in the sub-control volume.

◆ enthalpy() [1/2]

template<class Traits , class Impl >
template<class FluidState , class ParameterCache >
static Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::enthalpy ( const FluidState &  fluidState,
const ParameterCache &  paramCache 
)
inlinestatic

The phase enthalpy is zero for isothermal models This is needed for completing the fluid state

◆ enthalpy() [2/2]

template<class Traits , class Impl >
Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::enthalpy ( int  phaseIdx = 0) const
inline

Returns the total enthalpy of a phase in the sub-control volume.

◆ extrusionFactor()

template<class Traits , class Impl >
Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, false >::extrusionFactor ( ) const
inlineinherited

Return 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.

◆ heatCapacity()

template<class Traits , class Impl >
Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::heatCapacity ( ) const
inline

Return the specific isobaric heat capacity \(\mathrm{[J/(kg*K)]}\) in the sub-control volume.

◆ internalEnergy()

template<class Traits , class Impl >
Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::internalEnergy ( int  phaseIdx = 0) const
inline

Returns the total internal energy of a phase in the sub-control volume.

◆ numFluidComponents()

template<class Traits , class Impl >
static constexpr int Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, false >::numFluidComponents ( )
inlinestaticconstexprinherited

return number of components considered by the model

◆ numFluidPhases()

template<class Traits , class Impl >
static constexpr int Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, false >::numFluidPhases ( )
inlinestaticconstexprinherited

return number of phases considered by the model

◆ priVar()

template<class Traits , class Impl >
Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, false >::priVar ( const int  pvIdx) const
inlineinherited

Return a component of primary variable vector.

Parameters
pvIdxThe index of the primary variable of interest

◆ temperature() [1/2]

template<class Traits , class Impl >
template<class ElementSolution , class Problem , class Element , class SubControlVolume >
static Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, false >::temperature ( const ElementSolution &  elemSol,
const Problem &  problem,
const Element &  element,
const SubControlVolume &  scv 
)
inlinestaticinherited

The temperature is obtained from the problem as a constant for isothermal models.

◆ temperature() [2/2]

template<class Traits , class Impl >
template<class ElemSol , class Problem , class Element , class Scv >
static Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::temperature ( const ElemSol &  elemSol,
const Problem &  problem,
const Element &  element,
const Scv &  scv 
)
inlinestatic

The temperature is a primary variable for non-isothermal models.

◆ thermalConductivity()

template<class Traits , class Impl >
Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, true >::thermalConductivity ( ) const
inline

Returns the thermal conductivity \(\mathrm{[W/(m*K)]}\) of the fluid phase in the sub-control volume.

◆ update() [1/2]

template<class Traits , class Impl >
template<class ElementSolution , class Problem , class Element , class SubControlVolume >
void Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, false >::update ( const ElementSolution &  elemSol,
const Problem &  problem,
const Element &  element,
const SubControlVolume &  scv 
)
inlineinherited

Update 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

◆ update() [2/2]

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

Update 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 which is inside the element

Member Data Documentation

◆ extrusionFactor_

template<class Traits , class Impl >
Scalar Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, false >::extrusionFactor_
protectedinherited

◆ priVars_

template<class Traits , class Impl >
PrimaryVariables Dumux::FreeFlowVolumeVariablesImplementation< Traits, Impl, false >::priVars_
protectedinherited

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