Base class for the coupling mapper that sets up and stores the coupling maps between two domains of dimension d and (d-1). More...
#include <dumux/multidomain/facet/couplingmapperbase.hh>
Base class for the coupling mapper that sets up and stores the coupling maps between two domains of dimension d and (d-1).
BulkFVG | the d-dimensional finite-volume grid geometry |
LowDimFVG | the (d-1)-dimensional finite-volume grid geometry |
bulkId | The index of the bulk grid within the hierarchy of grids |
lowDimId | The index of the facet grid within the hierarchy of grids |
Public Types | |
template<std::size_t id> | |
using | Stencil = typename std::conditional< id==bulkId, BulkStencil, LowDimStencil >::type |
Export the stencil type for the provided grid index. More... | |
template<std::size_t i, std::size_t j> | |
using | CouplingMap = typename std::conditional< i==bulkId, BulkCouplingMap, LowDimCouplingMap >::type |
Export the coupling map type. More... | |
Public Member Functions | |
template<class Embeddings > | |
void | update (const BulkFVG &bulkFvGridGeometry, const LowDimFVG &lowDimFvGridGeometry, std::shared_ptr< const Embeddings > embeddings) |
Update coupling maps. This is the standard interface and has to be overloaded by the implementation. More... | |
const BulkCouplingMap & | couplingMap (GridIdType< bulkId >, GridIdType< lowDimId >) const |
returns coupling data for bulk -> lowDim More... | |
const LowDimCouplingMap & | couplingMap (GridIdType< lowDimId >, GridIdType< bulkId >) const |
returns coupling data for lowDim -> bulk More... | |
Static Public Member Functions | |
template<int dim> | |
static constexpr GridIdType<(dim==bulkDim ? bulkId :lowDimId) > | gridId () |
Allow retrievment of grid id for a given grid dimension. More... | |
Static Public Attributes | |
static constexpr auto | bulkGridId = GridIdType<bulkId>() |
Export grid ids. More... | |
static constexpr auto | facetGridId = GridIdType<lowDimId>() |
Protected Member Functions | |
template<class Embeddings , typename AddCouplingEntryPolicy > | |
void | update_ (const BulkFVG &bulkFvGridGeometry, const LowDimFVG &lowDimFvGridGeometry, std::shared_ptr< const Embeddings > embeddings, AddCouplingEntryPolicy &&addCouplingEntryPolicy) |
Update coupling maps. More... | |
template<class GridGeometry > | |
std::vector< typename IndexTraits< typename GridGeometry::GridView >::GridIndex > | extractNodalDofs_ (const typename GridGeometry::GridView::template Codim< 0 >::Entity &element, const GridGeometry &gridGeometry) |
Creates a container with the nodal dofs within an element. More... | |
BulkCouplingMap & | couplingMap_ (GridIdType< bulkId >, GridIdType< lowDimId >) |
returns non-const coupling data for bulk -> lowDim More... | |
LowDimCouplingMap & | couplingMap_ (GridIdType< lowDimId >, GridIdType< bulkId >) |
returns non-const coupling data for lowDim -> bulk More... | |
using Dumux::FacetCouplingMapperBase< BulkFVG, LowDimFVG, bulkId, lowDimId >::CouplingMap = typename std::conditional<i == bulkId, BulkCouplingMap, LowDimCouplingMap>::type |
Export the coupling map type.
using Dumux::FacetCouplingMapperBase< BulkFVG, LowDimFVG, bulkId, lowDimId >::Stencil = typename std::conditional<id == bulkId, BulkStencil, LowDimStencil>::type |
Export the stencil type for the provided grid index.
|
inline |
returns coupling data for bulk -> lowDim
|
inline |
returns coupling data for lowDim -> bulk
|
inlineprotected |
returns non-const coupling data for bulk -> lowDim
|
inlineprotected |
returns non-const coupling data for lowDim -> bulk
|
inlineprotected |
Creates a container with the nodal dofs within an element.
|
inlinestaticconstexpr |
Allow retrievment of grid id for a given grid dimension.
|
inline |
Update coupling maps. This is the standard interface and has to be overloaded by the implementation.
|
inlineprotected |
Update coupling maps.
bulkFvGridGeometry | The finite-volume grid geometry of the bulk grid |
lowDimFvGridGeometry | The finite-volume grid geometry of the lower-dimensional grid |
embeddings | Class that contains the embedments and allows obtaining entity insertion indices |
addCouplingEntryPolicy | Policy for adding coupling entries starting from a lower-dimensional element and corresponding adjoined higher-dimensional entity indices |
|
staticconstexpr |
Export grid ids.
|
staticconstexpr |