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

Grid geometry for the diamond discretization. More...

#include <dumux/discretization/facecentered/diamond/fvgridgeometry.hh>

Inheritance diagram for Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >:

Description

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
class Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >

Grid geometry for the diamond discretization.

Public Types

using DiscretizationMethod = DiscretizationMethods::FCDiamond
 export discretization method
using LocalView = typename Traits::template LocalView<ThisType, true>
 export the type of the fv element geometry (the local view type)
using SubControlVolume = typename Traits::SubControlVolume
 export the type of sub control volume
using SubControlVolumeFace = typename Traits::SubControlVolumeFace
 export the type of sub control volume
using GridView = GV
 export the grid view type
using DofMapper = typename Traits::DofMapper
 export the dof mapper type
using Extrusion = Extrusion_t<Traits>
 export the type of extrusion
using FeCache = NonconformingFECache<Scalar, Scalar, dim>
 export the finite element cache type
using Cache = FCDiamondGridGeometryCache
using Grid = typename BaseImplementation::Grid
 export the grid type
using GlobalCoordinate = typename BaseImplementation::GlobalCoordinate
 export the global coordinate type
using ElementMapper = typename BaseImplementation::ElementMapper
 export the element mapper type
using VertexMapper = typename BaseImplementation::VertexMapper
 export the vertex mapper type

Public Member Functions

 FaceCenteredDiamondFVGridGeometry (const GridView &gridView, const std::string &paramGroup="")
 Constructor.
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 numDofs () const
 the total number of dofs
void update (const GridView &gridView)
 update all fvElementGeometries (call this after grid adaption)
void update (GridView &&gridView)
 update all fvElementGeometries (call this after grid adaption)
const FeCache & feCache () const
 The finite element cache for creating local FE bases.
const DofMapper & dofMapper () const
 Return a reference to the dof mapper.
bool dofOnPeriodicBoundary (GridIndexType dofIdx) const
 If a d.o.f. is on a periodic boundary.
GridIndexType periodicallyMappedDof (GridIndexType dofIdx) const
 The index of the d.o.f. on the other side of the periodic boundary.
const std::unordered_map< GridIndexType, GridIndexType > & periodicVertexMap () const
 Returns the map between dofs across periodic boundaries // TODO rename to periodic dof map in fvassembler.
void update (const GridView &gridView)
 Update all fvElementGeometries (call this after grid adaption).
void update (GridView &&gridView)
 Update all fvElementGeometries (call this after grid adaption).
const GridView & gridView () const
 Return the gridView this grid geometry object lives on.
const VertexMapper & vertexMapper () const
 Returns the mapper for vertices to indices for constant grids.
VertexMapper & vertexMapper ()
 Returns the mapper for vertices to indices for possibly adaptive grids.
const ElementMapper & elementMapper () const
 Returns the mapper for elements to indices for constant grids.
ElementMapper & elementMapper ()
 Returns the mapper for elements to indices for possibly adaptive grids.
decltype(auto) boundingBoxTree () const
 Returns the bounding box tree of the grid.
decltype(auto) elementMap () const
 Returns the element index to element map.
Element element (GridIndexType eIdx) const
 Get an element from a global element index.
const GlobalCoordinate & bBoxMin () const
 The coordinate of the corner of the GridView's bounding box with the smallest values.
const GlobalCoordinate & bBoxMax () 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).

Static Public Attributes

static constexpr DiscretizationMethod discMethod = DiscretizationMethod{}
static constexpr bool cachingEnabled = true

Protected Member Functions

void setPeriodic (bool value=true)
 Set the periodicity of the grid geometry.

Member Typedef Documentation

◆ Cache

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
using Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::Cache = FCDiamondGridGeometryCache

the cache type (only the caching implementation has this) this alias should only be used by the local view implementation

◆ DiscretizationMethod

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
using Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::DiscretizationMethod = DiscretizationMethods::FCDiamond

export discretization method

◆ DofMapper

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
using Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::DofMapper = typename Traits::DofMapper

export the dof mapper type

◆ ElementMapper

template<class GV, class Traits>
using Dumux::BaseGridGeometry< GV, Traits >::ElementMapper = typename BaseImplementation::ElementMapper
inherited

export the element mapper type

◆ Extrusion

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
using Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::Extrusion = Extrusion_t<Traits>

export the type of extrusion

◆ FeCache

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
using Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::FeCache = NonconformingFECache<Scalar, Scalar, dim>

export the finite element cache type

◆ GlobalCoordinate

template<class GV, class Traits>
using Dumux::BaseGridGeometry< GV, Traits >::GlobalCoordinate = typename BaseImplementation::GlobalCoordinate
inherited

export the global coordinate type

◆ Grid

template<class GV, class Traits>
using Dumux::BaseGridGeometry< GV, Traits >::Grid = typename BaseImplementation::Grid
inherited

export the grid type

◆ GridView

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
using Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::GridView = GV

export the grid view type

◆ LocalView

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
using Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::LocalView = typename Traits::template LocalView<ThisType, true>

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

◆ SubControlVolume

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
using Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::SubControlVolume = typename Traits::SubControlVolume

export the type of sub control volume

◆ SubControlVolumeFace

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
using Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::SubControlVolumeFace = typename Traits::SubControlVolumeFace

export the type of sub control volume

◆ VertexMapper

template<class GV, class Traits>
using Dumux::BaseGridGeometry< GV, Traits >::VertexMapper = typename BaseImplementation::VertexMapper
inherited

export the vertex mapper type

Constructor & Destructor Documentation

◆ FaceCenteredDiamondFVGridGeometry()

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::FaceCenteredDiamondFVGridGeometry ( const GridView & gridView,
const std::string & paramGroup = "" )
inline

Constructor.

Member Function Documentation

◆ bBoxMax()

template<class GV, class Traits>
const GlobalCoordinate & Dumux::BaseGridGeometry< GV, Traits >::bBoxMax ( ) const
inlineinherited

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

◆ bBoxMin()

template<class GV, class Traits>
const GlobalCoordinate & Dumux::BaseGridGeometry< GV, Traits >::bBoxMin ( ) const
inlineinherited

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

◆ boundingBoxTree()

template<class GV, class Traits>
decltype(auto) Dumux::BaseGridGeometry< GV, Traits >::boundingBoxTree ( ) const
inlineinherited

Returns the bounding box tree of the grid.

◆ dofMapper()

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
const DofMapper & Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::dofMapper ( ) const
inline

Return a reference to the dof mapper.

◆ dofOnPeriodicBoundary()

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
bool Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::dofOnPeriodicBoundary ( GridIndexType dofIdx) const
inline

If a d.o.f. is on a periodic boundary.

◆ element()

template<class GV, class Traits>
Element Dumux::BaseGridGeometry< GV, Traits >::element ( GridIndexType eIdx) const
inlineinherited

Get an element from a global element index.

◆ elementMap()

template<class GV, class Traits>
decltype(auto) Dumux::BaseGridGeometry< GV, Traits >::elementMap ( ) const
inlineinherited

Returns the element index to element map.

◆ elementMapper() [1/2]

template<class GV, class Traits>
ElementMapper & Dumux::BaseGridGeometry< GV, Traits >::elementMapper ( )
inlineinherited

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

◆ elementMapper() [2/2]

template<class GV, class Traits>
const ElementMapper & Dumux::BaseGridGeometry< GV, Traits >::elementMapper ( ) const
inlineinherited

Returns the mapper for elements to indices for constant grids.

◆ feCache()

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
const FeCache & Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::feCache ( ) const
inline

The finite element cache for creating local FE bases.

◆ gridView()

template<class GV, class Traits>
const GridView & Dumux::BaseGridGeometry< GV, Traits >::gridView ( ) const
inlineinherited

Return the gridView this grid geometry object lives on.

◆ isPeriodic()

template<class GV, class Traits>
bool Dumux::BaseGridGeometry< GV, Traits >::isPeriodic ( ) const
inlineinherited

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

◆ numBoundaryScvf()

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
std::size_t Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::numBoundaryScvf ( ) const
inline

The total number of boundary sub control volume faces.

◆ numDofs()

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
std::size_t Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::numDofs ( ) const
inline

the total number of dofs

◆ numScv()

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
std::size_t Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::numScv ( ) const
inline

The total number of sub control volumes.

◆ numScvf()

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
std::size_t Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::numScvf ( ) const
inline

The total number of sub control volume faces.

◆ periodicallyMappedDof()

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
GridIndexType Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::periodicallyMappedDof ( GridIndexType dofIdx) const
inline

The index of the d.o.f. on the other side of the periodic boundary.

◆ periodicVertexMap()

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
const std::unordered_map< GridIndexType, GridIndexType > & Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::periodicVertexMap ( ) const
inline

Returns the map between dofs across periodic boundaries // TODO rename to periodic dof map in fvassembler.

◆ setPeriodic()

template<class GV, class Traits>
void Dumux::BaseGridGeometry< GV, Traits >::setPeriodic ( bool value = true)
inlineprotectedinherited

Set the periodicity of the grid geometry.

◆ update() [1/4]

template<class GV, class Traits>
void Dumux::BaseGridGeometry< GV, Traits >::update ( const GridView & gridView)
inlineinherited

Update all fvElementGeometries (call this after grid adaption).

◆ update() [2/4]

template<class GV, class Traits>
void Dumux::BaseGridGeometry< GV, Traits >::update ( GridView && gridView)
inlineinherited

Update all fvElementGeometries (call this after grid adaption).

◆ update() [3/4]

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
void Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::update ( const GridView & gridView)
inline

update all fvElementGeometries (call this after grid adaption)

◆ update() [4/4]

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
void Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::update ( GridView && gridView)
inline

update all fvElementGeometries (call this after grid adaption)

◆ vertexMapper() [1/2]

template<class GV, class Traits>
VertexMapper & Dumux::BaseGridGeometry< GV, Traits >::vertexMapper ( )
inlineinherited

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

◆ vertexMapper() [2/2]

template<class GV, class Traits>
const VertexMapper & Dumux::BaseGridGeometry< GV, Traits >::vertexMapper ( ) const
inlineinherited

Returns the mapper for vertices to indices for constant grids.

Member Data Documentation

◆ cachingEnabled

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
bool Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::cachingEnabled = true
staticconstexpr

◆ discMethod

template<class GV, bool enableCaching = true, class Traits = FaceCenteredDiamondDefaultGridGeometryTraits<GV>>
DiscretizationMethod Dumux::FaceCenteredDiamondFVGridGeometry< GV, enableCaching, Traits >::discMethod = DiscretizationMethod{}
staticconstexpr

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