version 3.10-dev
Dumux::EnrichedVertexDofMapper< GV > Class Template Reference

A vertex mapper that allows for enrichment of nodes. Indication on where to enrich the nodes is done on the basis of a grid of codimension one living on the facets of the bulk grid. More...

#include <dumux/multidomain/facet/vertexmapper.hh>

Description

template<class GV>
class Dumux::EnrichedVertexDofMapper< GV >
Template Parameters
GVThe Dune::GridView type

Public Types

using GridView = GV
 export the underlying grid view type More...
 
using GridIndexType = GIType
 export the grid index type More...
 

Public Member Functions

 EnrichedVertexDofMapper (const GV &gridView)
 the constructor More...
 
 EnrichedVertexDofMapper (const GV &gridView, Dune::MCMGLayout layout)
 constructor taking a layout as additional argument (for compatibility) More...
 
GridIndexType subIndex (const Element &e, unsigned int i, unsigned int codim) const
 map nodal subentity of codim 0 entity to the grid dof More...
 
GridIndexType vertexIndex (const Element &e, unsigned int i, unsigned int codim) const
 map nodal subentity of codim 0 entity to the grid vertex index More...
 
GridIndexType vertexIndex (const Vertex &v) const
 map nodal entity to the grid vertex index More...
 
template<class EntityType >
GridIndexType index (const EntityType &e) const
 
std::size_t size () const
 returns the number of dofs managed by this mapper More...
 
bool isEnriched (const Vertex &v)
 returns true if a vertex dof had been enriched More...
 
void update (const GV &gridView)
 
void update (GV &&gridView)
 
template<class CodimOneGridView , class CodimOneGridAdapter >
void enrich (const CodimOneGridView &codimOneGridView, const CodimOneGridAdapter &codimOneGridAdapter, bool verbose=false)
 Enriches the dof map subject to a (dim-1)-dimensional grid. More...
 

Member Typedef Documentation

◆ GridIndexType

template<class GV >
using Dumux::EnrichedVertexDofMapper< GV >::GridIndexType = GIType

◆ GridView

template<class GV >
using Dumux::EnrichedVertexDofMapper< GV >::GridView = GV

Constructor & Destructor Documentation

◆ EnrichedVertexDofMapper() [1/2]

template<class GV >
Dumux::EnrichedVertexDofMapper< GV >::EnrichedVertexDofMapper ( const GV &  gridView)
inline

◆ EnrichedVertexDofMapper() [2/2]

template<class GV >
Dumux::EnrichedVertexDofMapper< GV >::EnrichedVertexDofMapper ( const GV &  gridView,
Dune::MCMGLayout  layout 
)
inline

Member Function Documentation

◆ enrich()

template<class GV >
template<class CodimOneGridView , class CodimOneGridAdapter >
void Dumux::EnrichedVertexDofMapper< GV >::enrich ( const CodimOneGridView &  codimOneGridView,
const CodimOneGridAdapter codimOneGridAdapter,
bool  verbose = false 
)
inline
Note
This assumes conforming grids!
Parameters
codimOneGridViewThe grid view of a (dim-1)-dimensional grid conforming with the facets of the grid view passed to the constructor, indicating on which facets nodal dofs should be enriched.
codimOneGridAdapterAdapter class that allows access to information on the d- dimensional grid for entities of the (d-1)-dimensional grid
verboseEnable/disable terminal output of the time necessary for enrichment

◆ index()

template<class GV >
template<class EntityType >
GridIndexType Dumux::EnrichedVertexDofMapper< GV >::index ( const EntityType &  e) const
inline

map vertex to the grid dof index

Note
This is only valid if there are no enriched vertex dofs! We therefore ask this in every call. This means quite some overhead, but this mapper is not designed optimally for the case of no enriched nodes.

◆ isEnriched()

template<class GV >
bool Dumux::EnrichedVertexDofMapper< GV >::isEnriched ( const Vertex &  v)
inline

◆ size()

template<class GV >
std::size_t Dumux::EnrichedVertexDofMapper< GV >::size ( ) const
inline

◆ subIndex()

template<class GV >
GridIndexType Dumux::EnrichedVertexDofMapper< GV >::subIndex ( const Element &  e,
unsigned int  i,
unsigned int  codim 
) const
inline

◆ update() [1/2]

template<class GV >
void Dumux::EnrichedVertexDofMapper< GV >::update ( const GV &  gridView)
inline

the update here simply updates the non-enriched map enrichment has to be done afterwards!

◆ update() [2/2]

template<class GV >
void Dumux::EnrichedVertexDofMapper< GV >::update ( GV &&  gridView)
inline

◆ vertexIndex() [1/2]

template<class GV >
GridIndexType Dumux::EnrichedVertexDofMapper< GV >::vertexIndex ( const Element &  e,
unsigned int  i,
unsigned int  codim 
) const
inline

◆ vertexIndex() [2/2]

template<class GV >
GridIndexType Dumux::EnrichedVertexDofMapper< GV >::vertexIndex ( const Vertex &  v) const
inline

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