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::StaggeredElementVolumeVariables< GVV, false > Class Template Reference

Class for the element volume variables vector for the staggered model. Specialization in case the volume variables are not stored globally. More...

#include <dumux/discretization/staggered/freeflow/elementvolumevariables.hh>

Description

template<class GVV>
class Dumux::StaggeredElementVolumeVariables< GVV, false >

Class for the element volume variables vector for the staggered model. Specialization in case the volume variables are not stored globally.

Public Types

using GridVolumeVariables = GVV
 export type of the grid volume variables More...
 
using VolumeVariables = typename GridVolumeVariables::VolumeVariables
 export type of the volume variables More...
 

Public Member Functions

 StaggeredElementVolumeVariables (const GridVolumeVariables &gridVolVars)
 Constructor. More...
 
template<class FVElementGeometry , class SolutionVector , typename std::enable_if_t< isMultiTypeBlockVector< SolutionVector >{}(), int > = 0>
void bind (const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const SolutionVector &sol)
 
template<class FVElementGeometry , class SolutionVector , typename std::enable_if_t<!isMultiTypeBlockVector< SolutionVector >{}(), int > = 0>
void bind (const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const SolutionVector &sol)
 
template<class FVElementGeometry , class SolutionVector , typename std::enable_if_t< isMultiTypeBlockVector< SolutionVector >{}(), int > = 0>
void bindElement (const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const SolutionVector &sol)
 
template<class FVElementGeometry , class SolutionVector , typename std::enable_if_t<!isMultiTypeBlockVector< SolutionVector >{}(), int > = 0>
void bindElement (const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &element, const FVElementGeometry &fvGeometry, const SolutionVector &sol)
 
template<class SubControlVolume , typename std::enable_if_t<!std::is_integral< SubControlVolume >::value, int > = 0>
const VolumeVariablesoperator[] (const SubControlVolume &scv) const
 const operator for the access with an scv More...
 
template<class SubControlVolume , typename std::enable_if_t<!std::is_integral< SubControlVolume >::value, int > = 0>
VolumeVariablesoperator[] (const SubControlVolume &scv)
 operator for the access with an scv More...
 
const VolumeVariablesoperator[] (std::size_t scvIdx) const
 const operator for the access with an index More...
 
VolumeVariablesoperator[] (std::size_t scvIdx)
 operator for the access with an index More...
 
const GridVolumeVariablesgridVolVars () const
 The global volume variables object we are a restriction of. More...
 

Member Typedef Documentation

◆ GridVolumeVariables

template<class GVV >
using Dumux::StaggeredElementVolumeVariables< GVV, false >::GridVolumeVariables = GVV

export type of the grid volume variables

◆ VolumeVariables

template<class GVV >
using Dumux::StaggeredElementVolumeVariables< GVV, false >::VolumeVariables = typename GridVolumeVariables::VolumeVariables

export type of the volume variables

Constructor & Destructor Documentation

◆ StaggeredElementVolumeVariables()

template<class GVV >
Dumux::StaggeredElementVolumeVariables< GVV, false >::StaggeredElementVolumeVariables ( const GridVolumeVariables gridVolVars)
inline

Constructor.

Member Function Documentation

◆ bind() [1/2]

template<class GVV >
template<class FVElementGeometry , class SolutionVector , typename std::enable_if_t< isMultiTypeBlockVector< SolutionVector >{}(), int > = 0>
void Dumux::StaggeredElementVolumeVariables< GVV, false >::bind ( const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &  element,
const FVElementGeometry &  fvGeometry,
const SolutionVector &  sol 
)
inline

Binding of an element, prepares the volume variables within the element stencil called by the local jacobian to prepare element assembly. Specialization callable with MultiTypeBlockVector.

◆ bind() [2/2]

template<class GVV >
template<class FVElementGeometry , class SolutionVector , typename std::enable_if_t<!isMultiTypeBlockVector< SolutionVector >{}(), int > = 0>
void Dumux::StaggeredElementVolumeVariables< GVV, false >::bind ( const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &  element,
const FVElementGeometry &  fvGeometry,
const SolutionVector &  sol 
)
inline

Binding of an element, prepares the volume variables within the element stencil called by the local jacobian to prepare element assembly

◆ bindElement() [1/2]

template<class GVV >
template<class FVElementGeometry , class SolutionVector , typename std::enable_if_t< isMultiTypeBlockVector< SolutionVector >{}(), int > = 0>
void Dumux::StaggeredElementVolumeVariables< GVV, false >::bindElement ( const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &  element,
const FVElementGeometry &  fvGeometry,
const SolutionVector &  sol 
)
inline

Binding of an element, prepares the volume variables within the element stencil called by the local jacobian to prepare element assembly. Specialization callable with MultiTypeBlockVector.

◆ bindElement() [2/2]

template<class GVV >
template<class FVElementGeometry , class SolutionVector , typename std::enable_if_t<!isMultiTypeBlockVector< SolutionVector >{}(), int > = 0>
void Dumux::StaggeredElementVolumeVariables< GVV, false >::bindElement ( const typename FVElementGeometry::GridGeometry::GridView::template Codim< 0 >::Entity &  element,
const FVElementGeometry &  fvGeometry,
const SolutionVector &  sol 
)
inline

Binding of an element, prepares only the volume variables of the element. Specialization for Staggered models

◆ gridVolVars()

template<class GVV >
const GridVolumeVariables & Dumux::StaggeredElementVolumeVariables< GVV, false >::gridVolVars ( ) const
inline

The global volume variables object we are a restriction of.

◆ operator[]() [1/4]

template<class GVV >
template<class SubControlVolume , typename std::enable_if_t<!std::is_integral< SubControlVolume >::value, int > = 0>
VolumeVariables & Dumux::StaggeredElementVolumeVariables< GVV, false >::operator[] ( const SubControlVolume &  scv)
inline

operator for the access with an scv

◆ operator[]() [2/4]

template<class GVV >
template<class SubControlVolume , typename std::enable_if_t<!std::is_integral< SubControlVolume >::value, int > = 0>
const VolumeVariables & Dumux::StaggeredElementVolumeVariables< GVV, false >::operator[] ( const SubControlVolume &  scv) const
inline

const operator for the access with an scv

◆ operator[]() [3/4]

template<class GVV >
VolumeVariables & Dumux::StaggeredElementVolumeVariables< GVV, false >::operator[] ( std::size_t  scvIdx)
inline

operator for the access with an index

◆ operator[]() [4/4]

template<class GVV >
const VolumeVariables & Dumux::StaggeredElementVolumeVariables< GVV, false >::operator[] ( std::size_t  scvIdx) const
inline

const operator for the access with an index


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