3.1-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Public Types | Public Member Functions | List of all members
Dumux::StaggeredElementFluxVariablesCache< GFVC, false > Class Template Reference

Class for the stencil local flux variables cache for the staggered model. Specialization for the case of not storing the fluxvars cache globally. More...

#include <dumux/discretization/staggered/elementfluxvariablescache.hh>

Description

template<class GFVC>
class Dumux::StaggeredElementFluxVariablesCache< GFVC, false >

Class for the stencil local flux variables cache for the staggered model. Specialization for the case of not storing the fluxvars cache globally.

Public Types

using GridFluxVariablesCache = GFVC
 export the type of the grid flux variables cache More...
 
using FluxVariablesCache = typename GFVC::FluxVariablesCache
 export the type of the flux variables cache More...
 

Public Member Functions

 StaggeredElementFluxVariablesCache (const GridFluxVariablesCache &global)
 
template<class FVElementGeometry , class ElementVolumeVariables >
void bindElement (const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars)
 Prepares the transmissibilities of the scv faces in an element. More...
 
template<class FVElementGeometry , class ElementVolumeVariables >
void bind (const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars)
 Prepares the transmissibilities of the scv faces in the stencil of an element. More...
 
template<class FVElementGeometry , class ElementVolumeVariables >
void bindScvf (const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const typename FVElementGeometry::SubControlVolumeFace &scvf)
 Prepares the transmissibilities of a single scv face. More...
 
template<class FVElementGeometry , class ElementVolumeVariables >
void update (const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars)
 Update the transmissibilities if the volume variables have changed. More...
 
template<class SubControlVolumeFace >
const FluxVariablesCacheoperator[] (const SubControlVolumeFace &scvf) const
 access operators in the case of no caching More...
 
template<class SubControlVolumeFace >
FluxVariablesCacheoperator[] (const SubControlVolumeFace &scvf)
 
const GridFluxVariablesCachegridFluxVarsCache () const
 The global object we are a restriction of. More...
 

Member Typedef Documentation

◆ FluxVariablesCache

template<class GFVC >
using Dumux::StaggeredElementFluxVariablesCache< GFVC, false >::FluxVariablesCache = typename GFVC::FluxVariablesCache

export the type of the flux variables cache

◆ GridFluxVariablesCache

template<class GFVC >
using Dumux::StaggeredElementFluxVariablesCache< GFVC, false >::GridFluxVariablesCache = GFVC

export the type of the grid flux variables cache

Constructor & Destructor Documentation

◆ StaggeredElementFluxVariablesCache()

template<class GFVC >
Dumux::StaggeredElementFluxVariablesCache< GFVC, false >::StaggeredElementFluxVariablesCache ( const GridFluxVariablesCache global)
inline

Member Function Documentation

◆ bind()

template<class GFVC >
template<class FVElementGeometry , class ElementVolumeVariables >
void Dumux::StaggeredElementFluxVariablesCache< GFVC, false >::bind ( const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars 
)
inline

Prepares the transmissibilities of the scv faces in the stencil of an element.

Note
the fvGeometry is assumed to be bound to the same element
this function has to be called prior to flux calculations on the element.

◆ bindElement()

template<class GFVC >
template<class FVElementGeometry , class ElementVolumeVariables >
void Dumux::StaggeredElementFluxVariablesCache< GFVC, false >::bindElement ( const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars 
)
inline

Prepares the transmissibilities of the scv faces in an element.

Note
the fvGeometry is assumed to be bound to the same element
this function has to be called prior to flux calculations on the element.

◆ bindScvf()

template<class GFVC >
template<class FVElementGeometry , class ElementVolumeVariables >
void Dumux::StaggeredElementFluxVariablesCache< GFVC, false >::bindScvf ( const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const typename FVElementGeometry::SubControlVolumeFace &  scvf 
)
inline

Prepares the transmissibilities of a single scv face.

Note
the fvGeometry is assumed to be bound to the same element
this function has to be called prior to flux calculations on the element.

◆ gridFluxVarsCache()

template<class GFVC >
const GridFluxVariablesCache & Dumux::StaggeredElementFluxVariablesCache< GFVC, false >::gridFluxVarsCache ( ) const
inline

The global object we are a restriction of.

◆ operator[]() [1/2]

template<class GFVC >
template<class SubControlVolumeFace >
FluxVariablesCache & Dumux::StaggeredElementFluxVariablesCache< GFVC, false >::operator[] ( const SubControlVolumeFace &  scvf)
inline

◆ operator[]() [2/2]

template<class GFVC >
template<class SubControlVolumeFace >
const FluxVariablesCache & Dumux::StaggeredElementFluxVariablesCache< GFVC, false >::operator[] ( const SubControlVolumeFace &  scvf) const
inline

access operators in the case of no caching

◆ update()

template<class GFVC >
template<class FVElementGeometry , class ElementVolumeVariables >
void Dumux::StaggeredElementFluxVariablesCache< GFVC, false >::update ( const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars 
)
inline

Update the transmissibilities if the volume variables have changed.

Note
Results in undefined behaviour if called before bind() or with a different element

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