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

Forward declaration of the facet coupling MPFA-O interaction volume. More...

#include <dumux/multidomain/facet/cellcentered/mpfa/interactionvolume.hh>

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

Description

template<class Traits>
class Dumux::CCMpfaOFacetCouplingInteractionVolume< Traits >

Forward declaration of the facet coupling MPFA-O interaction volume.

Class for the interaction volume of the mpfa-o scheme in the context of models involving coupling to a lower-dimensional domain across the element facets.

Classes

class  InteriorBoundaryData
 Define data structure to store which scvfs lie on interior boundaries. More...

Public Types

using DirichletData = typename CCMpfaOInteractionVolume<Traits>::DirichletData
 Reuse standard o-scheme's Dirichlet Data class.
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
const std::vector< InteriorBoundaryData > & interiorBoundaryData () const
 returns a reference to the data container on interior boundaries
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

◆ DirichletData

template<class Traits>
using Dumux::CCMpfaOFacetCouplingInteractionVolume< Traits >::DirichletData = typename CCMpfaOInteractionVolume<Traits>::DirichletData

Reuse standard o-scheme's Dirichlet Data class.

◆ 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::CCMpfaOFacetCouplingInteractionVolume< 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::CCMpfaOFacetCouplingInteractionVolume< 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::CCMpfaOFacetCouplingInteractionVolume< 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::CCMpfaOFacetCouplingInteractionVolume< 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::CCMpfaOFacetCouplingInteractionVolume< Traits >::getScvGeometry ( LocalIndexType ivLocalScvIdx,
const FVElementGeometry & fvGeometry ) const
inline

returns the geometry of the i-th local scv

◆ interiorBoundaryData()

template<class Traits>
const std::vector< InteriorBoundaryData > & Dumux::CCMpfaOFacetCouplingInteractionVolume< Traits >::interiorBoundaryData ( ) const
inline

returns a reference to the data container on interior boundaries

◆ localFaceData()

template<class Traits>
const std::vector< LocalFaceData > & Dumux::CCMpfaOFacetCouplingInteractionVolume< 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::CCMpfaOFacetCouplingInteractionVolume< 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::CCMpfaOFacetCouplingInteractionVolume< 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::CCMpfaOFacetCouplingInteractionVolume< 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::CCMpfaOFacetCouplingInteractionVolume< Traits >::numIVAtVertex ( const NI & nodalIndexSet)
inlinestaticconstexpr

returns the number of interaction volumes living around a vertex

◆ numKnowns()

template<class Traits>
std::size_t Dumux::CCMpfaOFacetCouplingInteractionVolume< 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::CCMpfaOFacetCouplingInteractionVolume< Traits >::numScvs ( ) const
inline

returns the number of scvs embedded in this interaction volume

◆ numUnknowns()

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

returns the number of intermediate unknowns within this interaction volume

◆ stencil()

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

returns the cell-stencil of this interaction volume

Member Data Documentation

◆ MpfaMethod

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


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