3.4
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Loading...
Searching...
No Matches
Dumux::StaggeredFVGridGeometry< GV, false, T > Class Template Reference

Base class for the finite volume geometry vector for staggered models This builds up the sub control volumes and sub control volume faces for each element. Specialization in case the FVElementGeometries are stored. More...

#include <dumux/discretization/staggered/fvgridgeometry.hh>

Inheritance diagram for Dumux::StaggeredFVGridGeometry< GV, false, T >:

Description

template<class GV, class T>
class Dumux::StaggeredFVGridGeometry< GV, false, T >

Base class for the finite volume geometry vector for staggered models This builds up the sub control volumes and sub control volume faces for each element. Specialization in case the FVElementGeometries are stored.

Public Types

using Traits = typename T::PublicTraits
 export the traits
using GeometryHelper = typename T::GeometryHelper
using LocalView = typename T::template LocalView<ThisType, false>
 export the type of the fv element geometry (the local view type)
using SubControlVolume = typename T::SubControlVolume
 export the type of sub control volume
using SubControlVolumeFace = typename T::SubControlVolumeFace
 export the type of sub control volume
using Extrusion = Extrusion_t<T>
 export the type of extrusion
using GridView = GV
 export the grid view type
using DofTypeIndices = typename T::DofTypeIndices
 export the dof type indices
using CellCenterFVGridGeometryType = CellCenterFVGridGeometry<ThisType>
using FaceFVGridGeometryType = FaceFVGridGeometry<ThisType>
using FVGridGeometryTuple = std::tuple< CellCenterFVGridGeometry<ThisType>, FaceFVGridGeometry<ThisType> >
using Grid
 export the grid type
using GlobalCoordinate
 export the global coordinate type
using ElementMapper
 export the element mapper type
using VertexMapper
 export the vertex mapper type

Public Member Functions

 StaggeredFVGridGeometry (const GridView &gridView, const std::string &paramGroup="")
 Constructor.
void update ()
 update all fvElementGeometries (do this again after grid adaption)
std::size_t numScv () const
 The total number of sub control volumes.
std::size_t numScvf () const
 The total number of sub control volume faces.
std::size_t numBoundaryScvf () const
 The total number of boundary sub control volume faces.
std::size_t numIntersections () const
 The total number of intersections.
std::size_t numDofs () const
 the total number of dofs
std::size_t numCellCenterDofs () const
std::size_t numFaceDofs () const
const std::vector< GridIndexType > & scvfIndicesOfScv (GridIndexType scvIdx) const
GridIndexType localToGlobalScvfIndex (GridIndexType eIdx, LocalIndexType localScvfIdx) const
const ConnectivityMap & connectivityMap () const
 Returns the connectivity map of which dofs have derivatives with respect to a given dof.
std::unique_ptr< CellCenterFVGridGeometry< ThisType > > cellCenterFVGridGeometryPtr () const
 Returns a pointer the cell center specific auxiliary class. Required for the multi-domain FVAssembler's ctor.
std::unique_ptr< FaceFVGridGeometry< ThisType > > faceFVGridGeometryPtr () const
 Returns a pointer the face specific auxiliary class. Required for the multi-domain FVAssembler's ctor.
CellCenterFVGridGeometry< ThisType > cellCenterFVGridGeometry () const
 Return a copy of the cell center specific auxiliary class.
FaceFVGridGeometry< ThisType > faceFVGridGeometry () const
 Return a copy of the face specific auxiliary class.
const IntersectionMapper & intersectionMapper () const
 Return a reference to the intersection mapper.
const std::vector< GridIndexType > & neighborVolVarIndices (GridIndexType scvIdx) const
 Return the neighbor volVar indices for all scvfs in the scv with index scvIdx.
const GridViewgridView () const
 Return the gridView this grid geometry object lives on.
const VertexMappervertexMapper () const
 Returns the mapper for vertices to indices for constant grids.
VertexMappervertexMapper ()
 Returns the mapper for vertices to indices for possibly adaptive grids.
const ElementMapperelementMapper () const
 Returns the mapper for elements to indices for constant grids.
ElementMapperelementMapper ()
 Returns the mapper for elements to indices for possibly adaptive grids.
const BoundingBoxTree & boundingBoxTree () const
 Returns the bounding box tree of the grid.
const ElementMap & elementMap () const
 Returns the element index to element map.
Element element (GridIndexType eIdx) const
 Get an element from a global element index.
const GlobalCoordinatebBoxMin () const
 The coordinate of the corner of the GridView's bounding box with the smallest values.
const GlobalCoordinatebBoxMax () const
 The coordinate of the corner of the GridView's bounding box with the largest values.
bool isPeriodic () const
 Returns if the grid geometry is periodic (at all).
void setPeriodic (bool value=true)
 Set the periodicity of the grid geometry.

Static Public Member Functions

static constexpr auto cellCenterIdx ()
 return a integral constant for cell center dofs
static constexpr auto faceIdx ()
 return a integral constant for face dofs
static constexpr int upwindStencilOrder ()
 The order of the stencil built.

Static Public Attributes

static constexpr DiscretizationMethod discMethod = DiscretizationMethod::staggered
 export discretization method
static constexpr int upwindSchemeOrder = T::upwindSchemeOrder
static constexpr bool useHigherOrder = upwindSchemeOrder > 1
static constexpr bool cachingEnabled = false

Member Typedef Documentation

◆ CellCenterFVGridGeometryType

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::CellCenterFVGridGeometryType = CellCenterFVGridGeometry<ThisType>

◆ DofTypeIndices

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::DofTypeIndices = typename T::DofTypeIndices

export the dof type indices

◆ ElementMapper

using Dumux::BaseGridGeometry< GV, T >::ElementMapper
inherited

export the element mapper type

◆ Extrusion

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::Extrusion = Extrusion_t<T>

export the type of extrusion

◆ FaceFVGridGeometryType

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::FaceFVGridGeometryType = FaceFVGridGeometry<ThisType>

◆ FVGridGeometryTuple

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::FVGridGeometryTuple = std::tuple< CellCenterFVGridGeometry<ThisType>, FaceFVGridGeometry<ThisType> >

◆ GeometryHelper

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::GeometryHelper = typename T::GeometryHelper

◆ GlobalCoordinate

using Dumux::BaseGridGeometry< GV, T >::GlobalCoordinate
inherited

export the global coordinate type

◆ Grid

using Dumux::BaseGridGeometry< GV, T >::Grid
inherited

export the grid type

◆ GridView

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::GridView = GV

export the grid view type

◆ LocalView

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::LocalView = typename T::template LocalView<ThisType, false>

export the type of the fv element geometry (the local view type)

◆ SubControlVolume

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::SubControlVolume = typename T::SubControlVolume

export the type of sub control volume

◆ SubControlVolumeFace

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::SubControlVolumeFace = typename T::SubControlVolumeFace

export the type of sub control volume

◆ Traits

template<class GV, class T>
using Dumux::StaggeredFVGridGeometry< GV, false, T >::Traits = typename T::PublicTraits

export the traits

◆ VertexMapper

using Dumux::BaseGridGeometry< GV, T >::VertexMapper
inherited

export the vertex mapper type

Constructor & Destructor Documentation

◆ StaggeredFVGridGeometry()

template<class GV, class T>
Dumux::StaggeredFVGridGeometry< GV, false, T >::StaggeredFVGridGeometry ( const GridView & gridView,
const std::string & paramGroup = "" )
inline

Constructor.

Member Function Documentation

◆ bBoxMax()

const GlobalCoordinate & Dumux::BaseGridGeometry< GV, T >::bBoxMax ( ) const
inlineinherited

The coordinate of the corner of the GridView's bounding box with the largest values.

◆ bBoxMin()

const GlobalCoordinate & Dumux::BaseGridGeometry< GV, T >::bBoxMin ( ) const
inlineinherited

The coordinate of the corner of the GridView's bounding box with the smallest values.

◆ boundingBoxTree()

const BoundingBoxTree & Dumux::BaseGridGeometry< GV, T >::boundingBoxTree ( ) const
inlineinherited

Returns the bounding box tree of the grid.

◆ cellCenterFVGridGeometry()

template<class GV, class T>
CellCenterFVGridGeometry< ThisType > Dumux::StaggeredFVGridGeometry< GV, false, T >::cellCenterFVGridGeometry ( ) const
inline

Return a copy of the cell center specific auxiliary class.

◆ cellCenterFVGridGeometryPtr()

template<class GV, class T>
std::unique_ptr< CellCenterFVGridGeometry< ThisType > > Dumux::StaggeredFVGridGeometry< GV, false, T >::cellCenterFVGridGeometryPtr ( ) const
inline

Returns a pointer the cell center specific auxiliary class. Required for the multi-domain FVAssembler's ctor.

◆ cellCenterIdx()

template<class GV, class T>
constexpr auto Dumux::StaggeredFVGridGeometry< GV, false, T >::cellCenterIdx ( )
inlinestaticconstexpr

return a integral constant for cell center dofs

◆ connectivityMap()

template<class GV, class T>
const ConnectivityMap & Dumux::StaggeredFVGridGeometry< GV, false, T >::connectivityMap ( ) const
inline

Returns the connectivity map of which dofs have derivatives with respect to a given dof.

◆ element()

Element Dumux::BaseGridGeometry< GV, T >::element ( GridIndexType eIdx) const
inlineinherited

Get an element from a global element index.

◆ elementMap()

const ElementMap & Dumux::BaseGridGeometry< GV, T >::elementMap ( ) const
inlineinherited

Returns the element index to element map.

◆ elementMapper() [1/2]

ElementMapper & Dumux::BaseGridGeometry< GV, T >::elementMapper ( )
inlineinherited

Returns the mapper for elements to indices for possibly adaptive grids.

◆ elementMapper() [2/2]

const ElementMapper & Dumux::BaseGridGeometry< GV, T >::elementMapper ( ) const
inlineinherited

Returns the mapper for elements to indices for constant grids.

◆ faceFVGridGeometry()

template<class GV, class T>
FaceFVGridGeometry< ThisType > Dumux::StaggeredFVGridGeometry< GV, false, T >::faceFVGridGeometry ( ) const
inline

Return a copy of the face specific auxiliary class.

◆ faceFVGridGeometryPtr()

template<class GV, class T>
std::unique_ptr< FaceFVGridGeometry< ThisType > > Dumux::StaggeredFVGridGeometry< GV, false, T >::faceFVGridGeometryPtr ( ) const
inline

Returns a pointer the face specific auxiliary class. Required for the multi-domain FVAssembler's ctor.

◆ faceIdx()

template<class GV, class T>
constexpr auto Dumux::StaggeredFVGridGeometry< GV, false, T >::faceIdx ( )
inlinestaticconstexpr

return a integral constant for face dofs

◆ gridView()

const GridView & Dumux::BaseGridGeometry< GV, T >::gridView ( ) const
inlineinherited

Return the gridView this grid geometry object lives on.

◆ intersectionMapper()

template<class GV, class T>
const IntersectionMapper & Dumux::StaggeredFVGridGeometry< GV, false, T >::intersectionMapper ( ) const
inline

Return a reference to the intersection mapper.

◆ isPeriodic()

bool Dumux::BaseGridGeometry< GV, T >::isPeriodic ( ) const
inlineinherited

Returns if the grid geometry is periodic (at all).

◆ localToGlobalScvfIndex()

template<class GV, class T>
GridIndexType Dumux::StaggeredFVGridGeometry< GV, false, T >::localToGlobalScvfIndex ( GridIndexType eIdx,
LocalIndexType localScvfIdx ) const
inline

◆ neighborVolVarIndices()

template<class GV, class T>
const std::vector< GridIndexType > & Dumux::StaggeredFVGridGeometry< GV, false, T >::neighborVolVarIndices ( GridIndexType scvIdx) const
inline

Return the neighbor volVar indices for all scvfs in the scv with index scvIdx.

◆ numBoundaryScvf()

template<class GV, class T>
std::size_t Dumux::StaggeredFVGridGeometry< GV, false, T >::numBoundaryScvf ( ) const
inline

The total number of boundary sub control volume faces.

◆ numCellCenterDofs()

template<class GV, class T>
std::size_t Dumux::StaggeredFVGridGeometry< GV, false, T >::numCellCenterDofs ( ) const
inline

◆ numDofs()

template<class GV, class T>
std::size_t Dumux::StaggeredFVGridGeometry< GV, false, T >::numDofs ( ) const
inline

the total number of dofs

◆ numFaceDofs()

template<class GV, class T>
std::size_t Dumux::StaggeredFVGridGeometry< GV, false, T >::numFaceDofs ( ) const
inline

◆ numIntersections()

template<class GV, class T>
std::size_t Dumux::StaggeredFVGridGeometry< GV, false, T >::numIntersections ( ) const
inline

The total number of intersections.

◆ numScv()

template<class GV, class T>
std::size_t Dumux::StaggeredFVGridGeometry< GV, false, T >::numScv ( ) const
inline

The total number of sub control volumes.

◆ numScvf()

template<class GV, class T>
std::size_t Dumux::StaggeredFVGridGeometry< GV, false, T >::numScvf ( ) const
inline

The total number of sub control volume faces.

◆ scvfIndicesOfScv()

template<class GV, class T>
const std::vector< GridIndexType > & Dumux::StaggeredFVGridGeometry< GV, false, T >::scvfIndicesOfScv ( GridIndexType scvIdx) const
inline

◆ setPeriodic()

void Dumux::BaseGridGeometry< GV, T >::setPeriodic ( bool value = true)
inlineinherited

Set the periodicity of the grid geometry.

◆ update()

template<class GV, class T>
void Dumux::StaggeredFVGridGeometry< GV, false, T >::update ( )
inline

update all fvElementGeometries (do this again after grid adaption)

◆ upwindStencilOrder()

template<class GV, class T>
constexpr int Dumux::StaggeredFVGridGeometry< GV, false, T >::upwindStencilOrder ( )
inlinestaticconstexpr

The order of the stencil built.

◆ vertexMapper() [1/2]

VertexMapper & Dumux::BaseGridGeometry< GV, T >::vertexMapper ( )
inlineinherited

Returns the mapper for vertices to indices for possibly adaptive grids.

◆ vertexMapper() [2/2]

const VertexMapper & Dumux::BaseGridGeometry< GV, T >::vertexMapper ( ) const
inlineinherited

Returns the mapper for vertices to indices for constant grids.

Member Data Documentation

◆ cachingEnabled

template<class GV, class T>
bool Dumux::StaggeredFVGridGeometry< GV, false, T >::cachingEnabled = false
staticconstexpr

◆ discMethod

template<class GV, class T>
DiscretizationMethod Dumux::StaggeredFVGridGeometry< GV, false, T >::discMethod = DiscretizationMethod::staggered
staticconstexpr

export discretization method

◆ upwindSchemeOrder

template<class GV, class T>
int Dumux::StaggeredFVGridGeometry< GV, false, T >::upwindSchemeOrder = T::upwindSchemeOrder
staticconstexpr

◆ useHigherOrder

template<class GV, class T>
bool Dumux::StaggeredFVGridGeometry< GV, false, T >::useHigherOrder = upwindSchemeOrder > 1
staticconstexpr

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