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

Stencil-local finite volume geometry (scvs and scvfs) for cell-centered TPFA models Specialization for grid caching enabled. More...

#include <dumux/discretization/cellcentered/tpfa/fvelementgeometry.hh>

Inheritance diagram for Dumux::CCTpfaFVElementGeometry< GG, true >:
Inheritance graph

Description

template<class GG>
class Dumux::CCTpfaFVElementGeometry< GG, true >

Stencil-local finite volume geometry (scvs and scvfs) for cell-centered TPFA models Specialization for grid caching enabled.

Note
The finite volume geometries are stored in the corresponding GridGeometry

Public Types

using SubControlVolume = typename GG::SubControlVolume
 export type of subcontrol volume
using SubControlVolumeFace = typename GG::SubControlVolumeFace
 export type of subcontrol volume face
using GridGeometry = GG
 export type of finite volume grid geometry

Public Member Functions

 CCTpfaFVElementGeometry (const GridGeometry &gridGeometry)
 Constructor.
const SubControlVolumescv (GridIndexType scvIdx) const
const SubControlVolumeFacescvf (GridIndexType scvfIdx) const
const SubControlVolumeFaceflipScvf (GridIndexType scvfIdx, unsigned int outsideScvIdx=0) const
std::size_t numScv () const
 number of sub control volumes in this fv element geometry
std::size_t numScvf () const
 number of sub control volumes in this fv element geometry
void bind (const Element &element)
 Binding of an element, called by the local jacobian to prepare element assembly.
void bindElement (const Element &element)
 Bind only element-local.
const GridGeometrygridGeometry () const
 The global finite volume geometry we are a restriction of.
bool hasBoundaryScvf () const
 Returns whether one of the geometry's scvfs lies on a boundary.

Static Public Attributes

static constexpr std::size_t maxNumElementScvs = 1
 the maximum number of scvs per element
static constexpr std::size_t maxNumElementScvfs = 2*GridView::dimension
 the maximum number of scvfs per element (use cubes for maximum)

Member Typedef Documentation

◆ GridGeometry

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

export type of finite volume grid geometry

◆ SubControlVolume

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

export type of subcontrol volume

◆ SubControlVolumeFace

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

export type of subcontrol volume face

Constructor & Destructor Documentation

◆ CCTpfaFVElementGeometry()

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

Constructor.

Member Function Documentation

◆ bind()

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

Binding of an element, called by the local jacobian to prepare element assembly.

◆ bindElement()

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

Bind only element-local.

◆ flipScvf()

template<class GG>
const SubControlVolumeFace & Dumux::CCTpfaFVElementGeometry< GG, true >::flipScvf ( GridIndexType scvfIdx,
unsigned int outsideScvIdx = 0 ) const
inline

Get the scvf on the same face but from the other side Note that e.g. the normals might be different in the case of surface grids

◆ gridGeometry()

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

The global finite volume geometry we are a restriction of.

◆ hasBoundaryScvf()

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

Returns whether one of the geometry's scvfs lies on a boundary.

◆ numScv()

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

number of sub control volumes in this fv element geometry

◆ numScvf()

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

number of sub control volumes in this fv element geometry

◆ scv()

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

Get an elment sub control volume with a global scv index We separate element and neighbor scvs to speed up mapping

◆ scvf()

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

Get an element sub control volume face with a global scvf index We separate element and neighbor scvfs to speed up mapping

Member Data Documentation

◆ maxNumElementScvfs

template<class GG>
std::size_t Dumux::CCTpfaFVElementGeometry< GG, true >::maxNumElementScvfs = 2*GridView::dimension
staticconstexpr

the maximum number of scvfs per element (use cubes for maximum)

◆ maxNumElementScvs

template<class GG>
std::size_t Dumux::CCTpfaFVElementGeometry< GG, true >::maxNumElementScvs = 1
staticconstexpr

the maximum number of scvs per element


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