version 3.11-dev
Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType > Class Template Reference

#include <dumux/discretization/pq1bubble/geometryhelper.hh>

Public Member Functions

 HybridPQ1BubbleGeometryHelper (const typename Element::Geometry &geometry)
 
ScvCornerStorage getScvCorners (unsigned int localScvIdx) const
 Create a vector with the scv corners. More...
 
Dune::GeometryType getScvGeometryType (unsigned int localScvIdx) const
 
ScvfCornerStorage getScvfCorners (unsigned int localScvfIdx) const
 Create a vector with the corners of sub control volume faces. More...
 
Dune::GeometryType getInteriorScvfGeometryType (unsigned int localScvfIdx) const
 
ScvfCornerStorage getBoundaryScvfCorners (unsigned int localFacetIndex, unsigned int indexInFacet) const
 Create the sub control volume face geometries on the boundary. More...
 
Dune::GeometryType getBoundaryScvfGeometryType (unsigned int localScvfIdx) const
 
template<int d = dimWorld, std::enable_if_t<(d==3), int > = 0>
GlobalPosition normal (const ScvfCornerStorage &p, const std::array< LocalIndexType, 2 > &scvPair)
 
template<int d = dimWorld, std::enable_if_t<(d==2), int > = 0>
GlobalPosition normal (const ScvfCornerStorage &p, const std::array< LocalIndexType, 2 > &scvPair)
 
const Element::Geometry & elementGeometry () const
 the wrapped element geometry More...
 
std::size_t numScv () const
 number of sub control volumes (number of codim-1 entities) More...
 
Scalar scvVolume (unsigned int localScvIdx, const ScvCornerStorage &p) const
 get scv volume More...
 
GlobalPosition dofPosition (unsigned int localDofIdx) const
 
std::array< LocalIndexType, 2 > getScvPairForScvf (unsigned int localScvfIndex) const
 
std::array< LocalIndexType, 2 > getScvPairForBoundaryScvf (unsigned int localFacetIndex, unsigned int localIsScvfIndex) const
 
bool isOverlappingScvf (unsigned int localScvfIndex) const
 
bool isOverlappingBoundaryScvf (unsigned int localFacetIndex) const
 
bool isOverlappingScv (unsigned int localScvIndex) const
 

Static Public Member Functions

template<class Transformation >
static ScvCornerStorage getScvCorners (Dune::GeometryType type, Transformation &&trans, unsigned int localScvIdx)
 Create a vector with the scv corners. More...
 
template<class Transformation >
static ScvfCornerStorage getScvfCorners (Dune::GeometryType type, Transformation &&trans, unsigned int localScvfIdx)
 Create a vector with the corners of sub control volume faces. More...
 
static auto numInteriorScvf (Dune::GeometryType type)
 number of interior sub control volume faces More...
 
static auto numBoundaryScvf (Dune::GeometryType type, unsigned int localFacetIndex)
 number of boundary sub control volume faces for face localFacetIndex More...
 
static std::size_t numElementDofs (Dune::GeometryType type)
 number of element dofs More...
 
static std::size_t numNonCVLocalDofs (Dune::GeometryType type)
 number of hybrid dofs More...
 
static auto numLocalDofsIntersection (Dune::GeometryType type, unsigned int iIdx)
 Number of local dofs related to an intersection with index iIdx. More...
 
static auto localDofIndexIntersection (Dune::GeometryType type, unsigned int iIdx, unsigned int ilocalDofIdx)
 Local dof index related to a localDof, with index ilocalDofIdx, on an intersection with index iIdx. More...
 
template<class DofMapper >
static auto dofIndex (const DofMapper &dofMapper, const Element &element, unsigned int localDofIdx)
 
template<class LocalKey >
static Element::Geometry::LocalCoordinate localDofPosition (Dune::GeometryType type, const LocalKey &localKey)
 local dof position More...
 
static Element::Geometry::LocalCoordinate localScvfCenter (Dune::GeometryType type, unsigned int localScvfIdx)
 local scvf center More...
 
static Element::Geometry::LocalCoordinate localBoundaryScvfCenter (Dune::GeometryType type, unsigned int localFacetIndex, unsigned int indexInFace)
 local boundary scvf center More...
 

Constructor & Destructor Documentation

◆ HybridPQ1BubbleGeometryHelper()

template<class GridView , class ScvType , class ScvfType >
Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::HybridPQ1BubbleGeometryHelper ( const typename Element::Geometry &  geometry)
inline

Member Function Documentation

◆ dofIndex()

template<class GridView , class ScvType , class ScvfType >
template<class DofMapper >
static auto Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::dofIndex ( const DofMapper &  dofMapper,
const Element &  element,
unsigned int  localDofIdx 
)
inlinestatic

◆ dofPosition()

template<class GridView , class ScvType , class ScvfType >
GlobalPosition Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::dofPosition ( unsigned int  localDofIdx) const
inline

◆ elementGeometry()

template<class GridView , class ScvType , class ScvfType >
const Element::Geometry & Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::elementGeometry ( ) const
inline

◆ getBoundaryScvfCorners()

template<class GridView , class ScvType , class ScvfType >
ScvfCornerStorage Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::getBoundaryScvfCorners ( unsigned int  localFacetIndex,
unsigned int  indexInFacet 
) const
inline

◆ getBoundaryScvfGeometryType()

template<class GridView , class ScvType , class ScvfType >
Dune::GeometryType Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::getBoundaryScvfGeometryType ( unsigned int  localScvfIdx) const
inline

◆ getInteriorScvfGeometryType()

template<class GridView , class ScvType , class ScvfType >
Dune::GeometryType Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::getInteriorScvfGeometryType ( unsigned int  localScvfIdx) const
inline

◆ getScvCorners() [1/2]

template<class GridView , class ScvType , class ScvfType >
template<class Transformation >
static ScvCornerStorage Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::getScvCorners ( Dune::GeometryType  type,
Transformation &&  trans,
unsigned int  localScvIdx 
)
inlinestatic

◆ getScvCorners() [2/2]

template<class GridView , class ScvType , class ScvfType >
ScvCornerStorage Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::getScvCorners ( unsigned int  localScvIdx) const
inline

◆ getScvfCorners() [1/2]

template<class GridView , class ScvType , class ScvfType >
template<class Transformation >
static ScvfCornerStorage Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::getScvfCorners ( Dune::GeometryType  type,
Transformation &&  trans,
unsigned int  localScvfIdx 
)
inlinestatic

◆ getScvfCorners() [2/2]

template<class GridView , class ScvType , class ScvfType >
ScvfCornerStorage Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::getScvfCorners ( unsigned int  localScvfIdx) const
inline

◆ getScvGeometryType()

template<class GridView , class ScvType , class ScvfType >
Dune::GeometryType Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::getScvGeometryType ( unsigned int  localScvIdx) const
inline

◆ getScvPairForBoundaryScvf()

template<class GridView , class ScvType , class ScvfType >
std::array< LocalIndexType, 2 > Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::getScvPairForBoundaryScvf ( unsigned int  localFacetIndex,
unsigned int  localIsScvfIndex 
) const
inline

◆ getScvPairForScvf()

template<class GridView , class ScvType , class ScvfType >
std::array< LocalIndexType, 2 > Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::getScvPairForScvf ( unsigned int  localScvfIndex) const
inline

◆ isOverlappingBoundaryScvf()

template<class GridView , class ScvType , class ScvfType >
bool Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::isOverlappingBoundaryScvf ( unsigned int  localFacetIndex) const
inline

◆ isOverlappingScv()

template<class GridView , class ScvType , class ScvfType >
bool Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::isOverlappingScv ( unsigned int  localScvIndex) const
inline

◆ isOverlappingScvf()

template<class GridView , class ScvType , class ScvfType >
bool Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::isOverlappingScvf ( unsigned int  localScvfIndex) const
inline

◆ localBoundaryScvfCenter()

template<class GridView , class ScvType , class ScvfType >
static Element::Geometry::LocalCoordinate Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::localBoundaryScvfCenter ( Dune::GeometryType  type,
unsigned int  localFacetIndex,
unsigned int  indexInFace 
)
inlinestatic

◆ localDofIndexIntersection()

template<class GridView , class ScvType , class ScvfType >
static auto Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::localDofIndexIntersection ( Dune::GeometryType  type,
unsigned int  iIdx,
unsigned int  ilocalDofIdx 
)
inlinestatic

◆ localDofPosition()

template<class GridView , class ScvType , class ScvfType >
template<class LocalKey >
static Element::Geometry::LocalCoordinate Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::localDofPosition ( Dune::GeometryType  type,
const LocalKey &  localKey 
)
inlinestatic

◆ localScvfCenter()

template<class GridView , class ScvType , class ScvfType >
static Element::Geometry::LocalCoordinate Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::localScvfCenter ( Dune::GeometryType  type,
unsigned int  localScvfIdx 
)
inlinestatic

◆ normal() [1/2]

template<class GridView , class ScvType , class ScvfType >
template<int d = dimWorld, std::enable_if_t<(d==3), int > = 0>
GlobalPosition Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::normal ( const ScvfCornerStorage &  p,
const std::array< LocalIndexType, 2 > &  scvPair 
)
inline

◆ normal() [2/2]

template<class GridView , class ScvType , class ScvfType >
template<int d = dimWorld, std::enable_if_t<(d==2), int > = 0>
GlobalPosition Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::normal ( const ScvfCornerStorage &  p,
const std::array< LocalIndexType, 2 > &  scvPair 
)
inline

obtain normal vector by 90° counter-clockwise rotation of t

◆ numBoundaryScvf()

template<class GridView , class ScvType , class ScvfType >
static auto Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::numBoundaryScvf ( Dune::GeometryType  type,
unsigned int  localFacetIndex 
)
inlinestatic

◆ numElementDofs()

template<class GridView , class ScvType , class ScvfType >
static std::size_t Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::numElementDofs ( Dune::GeometryType  type)
inlinestatic

◆ numInteriorScvf()

template<class GridView , class ScvType , class ScvfType >
static auto Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::numInteriorScvf ( Dune::GeometryType  type)
inlinestatic

◆ numLocalDofsIntersection()

template<class GridView , class ScvType , class ScvfType >
static auto Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::numLocalDofsIntersection ( Dune::GeometryType  type,
unsigned int  iIdx 
)
inlinestatic

◆ numNonCVLocalDofs()

template<class GridView , class ScvType , class ScvfType >
static std::size_t Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::numNonCVLocalDofs ( Dune::GeometryType  type)
inlinestatic

◆ numScv()

template<class GridView , class ScvType , class ScvfType >
std::size_t Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::numScv ( ) const
inline

◆ scvVolume()

template<class GridView , class ScvType , class ScvfType >
Scalar Dumux::HybridPQ1BubbleGeometryHelper< GridView, ScvType, ScvfType >::scvVolume ( unsigned int  localScvIdx,
const ScvCornerStorage &  p 
) const
inline

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