3.2-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Loading...
Searching...
No Matches
Dumux::CCMpfaOInteractionVolume< Traits > Class Template Reference

Forward declaration of the o-method's interaction volume. More...

#include <dumux/discretization/cellcentered/mpfa/omethod/interactionvolume.hh>

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

Description

template<class Traits>
class Dumux::CCMpfaOInteractionVolume< Traits >

Forward declaration of the o-method's interaction volume.

Class for the interaction volume of the mpfa-o method. This implementation creates dynamic objects of the local geometries and can be used at boundaries and on unstructured grids.

Classes

class  DirichletData

Public Types

using Traits
 state the traits type publicly

Public Member Functions

template<class Problem, class FVElementGeometry>
void bind (const IndexSet &indexSet, const Problem &problem, const FVElementGeometry &fvGeometry)
 Sets up the local scope for a given iv index set.
std::size_t numFaces () const
 returns the number of primary scvfs of this interaction volume
std::size_t numUnknowns () const
 returns the number of intermediate unknowns within this interaction volume
std::size_t numKnowns () const
 returns the number of (in this context) known solution values within this interaction volume
std::size_t numScvs () const
 returns the number of scvs embedded in this interaction volume
const Stencil & stencil () const
 returns the cell-stencil of this interaction volume
const Element & element (LocalIndexType ivLocalScvIdx) const
 returns the grid element corresponding to a given iv-local scv idx
const LocalScvfType & localScvf (LocalIndexType ivLocalScvfIdx) const
 returns the local scvf entity corresponding to a given iv-local scvf idx
const LocalScvType & localScv (LocalIndexType ivLocalScvIdx) const
 returns the local scv entity corresponding to a given iv-local scv idx
const std::vector< LocalFaceData > & localFaceData () const
 returns a reference to the container with the local face data
const std::vector< DirichletData > & dirichletData () const
 returns a reference to the information container on Dirichlet BCs within this iv
template<class FVElementGeometry>
auto getScvGeometry (LocalIndexType ivLocalScvIdx, const FVElementGeometry &fvGeometry) const
 returns the geometry of the i-th local scv
void bind (const typename Traits::IndexSet &indexSet, const Problem &problem, const FVElementGeometry &fvGeometry)
 Prepares everything for the assembly.
ScvGeometry computeScvGeometry (LocalIndexType ivLocalScvIdx, const FVElementGeometry &fvGeometry)
 returns the geometry of the i-th local scv
const LocalScvfType & localScvf (LocalIndexType ivLocalScvfIdx) const
 returns the local scvf entity corresponding to a given iv-local scvf idx
const LocalScvType & localScv (LocalIndexType ivLocalScvIdx) const
 returns the local scv entity corresponding to a given iv-local scv idx
const Element & element (LocalIndexType ivLocalScvIdx) const
 returns the element in which the scv with the given local idx is embedded in

Static Public Member Functions

template<class NI>
static constexpr std::size_t numIVAtVertex (const NI &nodalIndexSet)
 returns the number of interaction volumes living around a vertex
template<class IvIndexSetContainer, class ScvfIndexMap, class NodalIndexSet, class FlipScvfIndexSet>
static void addIVIndexSets (IvIndexSetContainer &ivIndexSetContainer, ScvfIndexMap &scvfIndexMap, const NodalIndexSet &nodalIndexSet, const FlipScvfIndexSet &flipScvfIndexSet)
static std::size_t numIVAtVertex (const NodalIndexSet &nodalIndexSet)
 returns the number of interaction volumes living around a vertex

Static Public Attributes

static constexpr MpfaMethods MpfaMethod = MpfaMethods::oMethod
 publicly state the mpfa-scheme this interaction volume is associated with

Member Typedef Documentation

◆ Traits

using Dumux::CCMpfaInteractionVolumeBase< Traits >::Traits
inherited

state the traits type publicly

Member Function Documentation

◆ addIVIndexSets()

template<class Traits>
template<class IvIndexSetContainer, class ScvfIndexMap, class NodalIndexSet, class FlipScvfIndexSet>
void Dumux::CCMpfaOInteractionVolume< Traits >::addIVIndexSets ( IvIndexSetContainer & ivIndexSetContainer,
ScvfIndexMap & scvfIndexMap,
const NodalIndexSet & nodalIndexSet,
const FlipScvfIndexSet & flipScvfIndexSet )
inlinestatic

adds the iv index sets living around a vertex to a given container and stores the the corresponding index in a map for each scvf

◆ bind() [1/2]

void Dumux::CCMpfaInteractionVolumeBase< Traits >::bind ( const typename Traits::IndexSet & indexSet,
const Problem & problem,
const FVElementGeometry & fvGeometry )
inlineinherited

Prepares everything for the assembly.

◆ bind() [2/2]

template<class Traits>
template<class Problem, class FVElementGeometry>
void Dumux::CCMpfaOInteractionVolume< Traits >::bind ( const IndexSet & indexSet,
const Problem & problem,
const FVElementGeometry & fvGeometry )
inline

Sets up the local scope for a given iv index set.

◆ computeScvGeometry()

ScvGeometry Dumux::CCMpfaInteractionVolumeBase< Traits >::computeScvGeometry ( LocalIndexType ivLocalScvIdx,
const FVElementGeometry & fvGeometry )
inlineinherited

returns the geometry of the i-th local scv

◆ dirichletData()

template<class Traits>
const std::vector< DirichletData > & Dumux::CCMpfaOInteractionVolume< Traits >::dirichletData ( ) const
inline

returns a reference to the information container on Dirichlet BCs within this iv

◆ element() [1/2]

const Element & Dumux::CCMpfaInteractionVolumeBase< Traits >::element ( LocalIndexType ivLocalScvIdx) const
inlineinherited

returns the element in which the scv with the given local idx is embedded in

◆ element() [2/2]

template<class Traits>
const Element & Dumux::CCMpfaOInteractionVolume< Traits >::element ( LocalIndexType ivLocalScvIdx) const
inline

returns the grid element corresponding to a given iv-local scv idx

◆ getScvGeometry()

template<class Traits>
template<class FVElementGeometry>
auto Dumux::CCMpfaOInteractionVolume< Traits >::getScvGeometry ( LocalIndexType ivLocalScvIdx,
const FVElementGeometry & fvGeometry ) const
inline

returns the geometry of the i-th local scv

◆ localFaceData()

template<class Traits>
const std::vector< LocalFaceData > & Dumux::CCMpfaOInteractionVolume< Traits >::localFaceData ( ) const
inline

returns a reference to the container with the local face data

◆ localScv() [1/2]

const LocalScvType & Dumux::CCMpfaInteractionVolumeBase< Traits >::localScv ( LocalIndexType ivLocalScvIdx) const
inlineinherited

returns the local scv entity corresponding to a given iv-local scv idx

◆ localScv() [2/2]

template<class Traits>
const LocalScvType & Dumux::CCMpfaOInteractionVolume< Traits >::localScv ( LocalIndexType ivLocalScvIdx) const
inline

returns the local scv entity corresponding to a given iv-local scv idx

◆ localScvf() [1/2]

const LocalScvfType & Dumux::CCMpfaInteractionVolumeBase< Traits >::localScvf ( LocalIndexType ivLocalScvfIdx) const
inlineinherited

returns the local scvf entity corresponding to a given iv-local scvf idx

◆ localScvf() [2/2]

template<class Traits>
const LocalScvfType & Dumux::CCMpfaOInteractionVolume< Traits >::localScvf ( LocalIndexType ivLocalScvfIdx) const
inline

returns the local scvf entity corresponding to a given iv-local scvf idx

◆ numFaces()

template<class Traits>
std::size_t Dumux::CCMpfaOInteractionVolume< Traits >::numFaces ( ) const
inline

returns the number of primary scvfs of this interaction volume

◆ numIVAtVertex() [1/2]

std::size_t Dumux::CCMpfaInteractionVolumeBase< Traits >::numIVAtVertex ( const NodalIndexSet & nodalIndexSet)
inlinestaticinherited

returns the number of interaction volumes living around a vertex

◆ numIVAtVertex() [2/2]

template<class Traits>
template<class NI>
constexpr std::size_t Dumux::CCMpfaOInteractionVolume< Traits >::numIVAtVertex ( const NI & nodalIndexSet)
inlinestaticconstexpr

returns the number of interaction volumes living around a vertex

◆ numKnowns()

template<class Traits>
std::size_t Dumux::CCMpfaOInteractionVolume< Traits >::numKnowns ( ) const
inline

returns the number of (in this context) known solution values within this interaction volume

◆ numScvs()

template<class Traits>
std::size_t Dumux::CCMpfaOInteractionVolume< Traits >::numScvs ( ) const
inline

returns the number of scvs embedded in this interaction volume

◆ numUnknowns()

template<class Traits>
std::size_t Dumux::CCMpfaOInteractionVolume< Traits >::numUnknowns ( ) const
inline

returns the number of intermediate unknowns within this interaction volume

◆ stencil()

template<class Traits>
const Stencil & Dumux::CCMpfaOInteractionVolume< Traits >::stencil ( ) const
inline

returns the cell-stencil of this interaction volume

Member Data Documentation

◆ MpfaMethod

template<class Traits>
MpfaMethods Dumux::CCMpfaOInteractionVolume< Traits >::MpfaMethod = MpfaMethods::oMethod
staticconstexpr

publicly state the mpfa-scheme this interaction volume is associated with


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