version 3.8
Dumux::BoxFVElementGeometry< GG, true > Class Template Reference

specialization in case the FVElementGeometries are stored

#include <dumux/discretization/box/fvelementgeometry.hh>

Public Types

using Element = typename GridView::template Codim< 0 >::Entity
 export the element type More...
 
using SubControlVolume = typename GG::SubControlVolume
 export type of subcontrol volume More...
 
using SubControlVolumeFace = typename GG::SubControlVolumeFace
 export type of subcontrol volume face More...
 
using GridGeometry = GG
 export type of finite volume grid geometry More...
 

Public Member Functions

 BoxFVElementGeometry (const GGCache &ggCache)
 Constructor. More...
 
const SubControlVolumescv (LocalIndexType scvIdx) const
 Get a sub control volume with a local scv index. More...
 
const SubControlVolumeFacescvf (LocalIndexType scvfIdx) const
 Get a sub control volume face with a local scvf index. More...
 
const FeLocalBasis & feLocalBasis () const
 Get a local finite element basis. More...
 
std::size_t numScv () const
 The total number of sub control volumes. More...
 
std::size_t numScvf () const
 The total number of sub control volume faces. More...
 
BoxFVElementGeometry bind (const Element &element) &&
 bind the local view (r-value overload) This overload is called when an instance of this class is a temporary in the usage context This allows a usage like this: const auto view = localView(...).bind(element); More...
 
void bind (const Element &element) &
 
BoxFVElementGeometry bindElement (const Element &element) &&
 bind the local view (r-value overload) This overload is called when an instance of this class is a temporary in the usage context This allows a usage like this: const auto view = localView(...).bindElement(element); More...
 
void bindElement (const Element &element) &
 
bool isBound () const
 Returns true if bind/bindElement has already been called. More...
 
const Elementelement () const
 The bound element. More...
 
GridIndexType elementIndex () const
 The bound element's index in the grid view. More...
 
const GridGeometrygridGeometry () const
 The grid geometry we are a restriction of. More...
 
bool hasBoundaryScvf () const
 Returns whether one of the geometry's scvfs lies on a boundary. More...
 
SubControlVolume::Traits::Geometry geometry (const SubControlVolume &scv) const
 Geometry of a sub control volume. More...
 
SubControlVolumeFace::Traits::Geometry geometry (const SubControlVolumeFace &scvf) const
 Geometry of a sub control volume face. More...
 

Static Public Attributes

static constexpr std::size_t maxNumElementScvs = (1<<dim)
 the maximum number of scvs per element (2^dim for cubes) More...
 

Member Typedef Documentation

◆ Element

template<class GG >
using Dumux::BoxFVElementGeometry< GG, true >::Element = typename GridView::template Codim<0>::Entity

◆ GridGeometry

template<class GG >
using Dumux::BoxFVElementGeometry< GG, true >::GridGeometry = GG

◆ SubControlVolume

template<class GG >
using Dumux::BoxFVElementGeometry< GG, true >::SubControlVolume = typename GG::SubControlVolume

◆ SubControlVolumeFace

template<class GG >
using Dumux::BoxFVElementGeometry< GG, true >::SubControlVolumeFace = typename GG::SubControlVolumeFace

Constructor & Destructor Documentation

◆ BoxFVElementGeometry()

template<class GG >
Dumux::BoxFVElementGeometry< GG, true >::BoxFVElementGeometry ( const GGCache &  ggCache)
inline
Note
Never use this directly and always construct this class via localView(gridGeometry)

Member Function Documentation

◆ bind() [1/2]

template<class GG >
void Dumux::BoxFVElementGeometry< GG, true >::bind ( const Element element) &
inline

this function is for compatibility reasons with cc methods The box stencil is always element-local so bind and bindElement are identical.

◆ bind() [2/2]

template<class GG >
BoxFVElementGeometry Dumux::BoxFVElementGeometry< GG, true >::bind ( const Element element) &&
inline

◆ bindElement() [1/2]

template<class GG >
void Dumux::BoxFVElementGeometry< GG, true >::bindElement ( const Element element) &
inline

Binding of an element, has to be called before using the fvgeometries Prepares all the volume variables within the element For compatibility reasons with the FVGeometry cache being disabled

◆ bindElement() [2/2]

template<class GG >
BoxFVElementGeometry Dumux::BoxFVElementGeometry< GG, true >::bindElement ( const Element element) &&
inline

◆ element()

template<class GG >
const Element & Dumux::BoxFVElementGeometry< GG, true >::element ( ) const
inline

◆ elementIndex()

template<class GG >
GridIndexType Dumux::BoxFVElementGeometry< GG, true >::elementIndex ( ) const
inline

◆ feLocalBasis()

template<class GG >
const FeLocalBasis & Dumux::BoxFVElementGeometry< GG, true >::feLocalBasis ( ) const
inline

◆ geometry() [1/2]

template<class GG >
SubControlVolume::Traits::Geometry Dumux::BoxFVElementGeometry< GG, true >::geometry ( const SubControlVolume scv) const
inline

◆ geometry() [2/2]

template<class GG >
SubControlVolumeFace::Traits::Geometry Dumux::BoxFVElementGeometry< GG, true >::geometry ( const SubControlVolumeFace scvf) const
inline

◆ gridGeometry()

template<class GG >
const GridGeometry & Dumux::BoxFVElementGeometry< GG, true >::gridGeometry ( ) const
inline

◆ hasBoundaryScvf()

template<class GG >
bool Dumux::BoxFVElementGeometry< GG, true >::hasBoundaryScvf ( ) const
inline

◆ isBound()

template<class GG >
bool Dumux::BoxFVElementGeometry< GG, true >::isBound ( ) const
inline

◆ numScv()

template<class GG >
std::size_t Dumux::BoxFVElementGeometry< GG, true >::numScv ( ) const
inline

◆ numScvf()

template<class GG >
std::size_t Dumux::BoxFVElementGeometry< GG, true >::numScvf ( ) const
inline

◆ scv()

template<class GG >
const SubControlVolume & Dumux::BoxFVElementGeometry< GG, true >::scv ( LocalIndexType  scvIdx) const
inline

◆ scvf()

template<class GG >
const SubControlVolumeFace & Dumux::BoxFVElementGeometry< GG, true >::scvf ( LocalIndexType  scvfIdx) const
inline

Member Data Documentation

◆ maxNumElementScvs

template<class GG >
constexpr std::size_t Dumux::BoxFVElementGeometry< GG, true >::maxNumElementScvs = (1<<dim)
staticconstexpr

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