dune-mmesh 1.4.1-git
Loading...
Searching...
No Matches
Dune::MMeshInterfaceGrid< MMesh > Class Template Reference

Provides a DUNE grid interface class for the interface of a MMesh interface grid . More...

#include <dune/mmesh/interface/grid.hh>

Public Types

using FieldType = typename MMesh::FieldType
 
using IdType = typename MMesh::IdType
 
using BoundarySegments = std::unordered_map< IdType, std::size_t >
 
typedef MMeshInterfaceGridFamily< MMeshGridFamily
 the Traits
 
typedef GridFamily::Traits Traits
 
using GridImp = typename GridFamily::Traits::Grid
 the grid implementation
 
typedef std::unique_ptr< GridImpGridPtrType
 the unique pointer to the grid
 
using HostGridType = typename MMesh::HostGridType
 the underlying hostgrid
 
using MMeshType = MMesh
 the underlying mmesh
 
typedef Traits::template Codim< 0 >::LeafIterator LeafIterator
 the leaf iterator
 
typedef FieldType ctype
 The type used to store coordinates, inherited from the MMesh.
 
typedef Dune::FieldVector< ctype, dimensionworldGlobalCoordinate
 The type used for coordinates.
 
template<int cd>
using MMeshInterfaceEntity = typename HostGridEntityChooser_< HostGridType, dimensionworld, cd+1 >::type
 The type of the underlying entities.
 
using VertexHandle = MMeshInterfaceEntity< dimension >
 The type of the underlying vertex handle.
 
using EdgeHandle = MMeshInterfaceEntity< dimension - 1 >
 The type of the underlying edge handle.
 
using ElementOutput = std::list< MMeshInterfaceEntity< 0 > >
 The type of the element output.
 
using Entity = typename Traits::template Codim< 0 >::Entity
 The type of a codim 0 entity.
 
using Vertex = typename Traits::template Codim< dimension >::Entity
 The type of a vertex.
 
using ConnectedComponent = MMeshInterfaceConnectedComponent< const GridImp >
 The type of a connected component.
 
using RemeshingIndicator = RatioIndicator< GridImp >
 The type of the default remeshing indicator.
 

Public Member Functions

 MMeshInterfaceGrid (MMesh *mMesh, BoundarySegments boundarySegments={})
 Constructor.
 
int maxLevel () const
 Return maximum level defined in this grid.
 
int size (int level, int codim) const
 Number of grid entities per level and codim.
 
size_t numBoundarySegments () const
 returns the number of boundary segments within the macro grid
 
const BoundarySegmentsboundarySegments () const
 
void addBoundarySegment (const std::vector< std::size_t > &ids, std::size_t bndSegIdx)
 
void setBoundarySegments (const BoundarySegments boundarySegments)
 
int size (int codim) const
 number of leaf entities per codim in this process
 
int size (int level, GeometryType type) const
 number of entities per level, codim and geometry type in this process
 
int size (GeometryType type) const
 number of leaf entities per codim and geometry type in this process
 
const Traits::GlobalIdSetglobalIdSet () const
 Access to the GlobalIdSet.
 
const Traits::LocalIdSetlocalIdSet () const
 Access to the LocalIdSet.
 
const MMeshInterfaceGridLeafIndexSet< const GridImp > & levelIndexSet (int level) const
 Access to the LevelIndexSets.
 
const MMeshInterfaceGridLeafIndexSet< const GridImp > & leafIndexSet () const
 Access to the LeafIndexSet.
 
template<class EntitySeed >
Traits::template Codim< EntitySeed::codimension >::Entity entity (const EntitySeed &seed) const
 Create Entity from EntitySeed.
 
Traits::template Codim< dimension >::Entity entity (const MMeshInterfaceEntity< dimension > &hostEntity) const
 Create Entity from a host entity.
 
Traits::template Codim< 0 >::Entity entity (const MMeshInterfaceEntity< 0 > &hostEntity) const
 Create codim 0 entity from a host entity.
 
template<int dimw = dimension + 1>
std::enable_if_t< dimw==3, typename Traits::template Codim< 1 >::Entityentity (const MMeshInterfaceEntity< 1 > &hostEntity) const
 Create codim 0 entity from a host entity.
 
template<int codim>
Traits::template Codim< codim >::LevelIterator lbegin (int level) const
 Iterator to first entity of given codim on level.
 
template<int codim>
Traits::template Codim< codim >::LevelIterator lend (int level) const
 one past the end on this level
 
template<int codim, PartitionIteratorType PiType>
Traits::template Codim< codim >::template Partition< PiType >::LevelIterator lbegin (int level) const
 Iterator to first entity of given codim on level.
 
template<int codim, PartitionIteratorType PiType>
Traits::template Codim< codim >::template Partition< PiType >::LevelIterator lend (int level) const
 one past the end on this level
 
template<int codim>
Traits::template Codim< codim >::LeafIterator leafbegin () const
 Iterator to first leaf entity of given codim.
 
template<int codim>
Traits::template Codim< codim >::LeafIterator leafend () const
 one past the end of the sequence of leaf entities
 
template<int codim, PartitionIteratorType PiType>
Traits::template Codim< codim >::template Partition< PiType >::LeafIterator leafbegin () const
 Iterator to first leaf entity of given codim.
 
template<int codim, PartitionIteratorType PiType>
Traits::template Codim< codim >::template Partition< PiType >::LeafIterator leafend () const
 one past the end of the sequence of leaf entities
 
void globalRefine (int steps=1)
 Global refine.
 
bool mark (int refCount, const typename Traits::template Codim< 0 >::Entity &e) const
 Mark entity for refinement.
 
int getMark (const typename Traits::template Codim< 0 >::Entity &e) const
 Return refinement mark for entity.
 
bool preAdapt ()
 returns false, if at least one entity is marked for adaption
 
bool adapt ()
 Triggers the grid adaptation process.
 
template<class GridImp , class DataHandle >
bool adapt (AdaptDataHandleInterface< GridImp, DataHandle > &handle)
 Callback for the grid adaptation process with restrict/prolong.
 
void postAdapt ()
 Clean up refinement markers.
 
unsigned int overlapSize (int codim) const
 Size of the overlap on the leaf level.
 
unsigned int ghostSize (int codim) const
 Size of the ghost cell layer on the leaf level.
 
unsigned int overlapSize (int level, int codim) const
 Size of the overlap on a given level.
 
unsigned int ghostSize (int level, int codim) const
 Size of the ghost cell layer on a given level.
 
void loadBalance ()
 Distributes this grid over the available nodes in a distributed machine.
 
template<class T >
bool loadBalance (const T &t)
 
void loadBalance (int strategy, int minlevel, int depth, int maxlevel, int minelement)
 
const Communication< Comm > & comm () const
 Collective communication.
 
template<class Data , class InterfaceType , class CommunicationDirection >
void communicate (Data &dataHandle, InterfaceType interface, CommunicationDirection direction, int level=0) const
 
bool isInterface (const MMeshInterfaceEntity< 0 > &segment) const
 Return if interface segment is part of the interface.
 
template<int d = dimension>
std::enable_if_t< d==2, bool > isInterface (const MMeshInterfaceEntity< 1 > &edge) const
 Return if an edge is of the interface.
 
bool isInterface (const VertexHandle &vertex) const
 Return if vertex is part of the interface.
 
bool isInterface (const typename Traits::LeafIntersection &intersection) const
 Return if intersection is part of the interface.
 
template<class Entity >
bool isInterface (const Entity &entity) const
 Return if dune entity is part of the interface.
 
template<class Entity >
std::size_t domainMarker (const Entity &entity) const
 Return domain marker of entity.
 
void markAsRefined (const std::vector< std::vector< std::size_t > > &children, const ConnectedComponent connectedComponent)
 Mark a set of children elements as refinement of a connected component.
 
bool hasConnectedComponent (const Entity &entity) const
 Return if an entity has a connected component.
 
const ConnectedComponentgetConnectedComponent (const Entity &entity) const
 Return the connected component for a given entity.
 
ConnectedComponentgetConnectedComponent (const Entity &entity)
 Return a non-const reference to the connected component for a given entity.
 
bool canBeMirrored (const MMeshInterfaceEntity< 0 > &hostEntity) const
 
template<int d = dimensionworld>
std::enable_if_t< d==2, const MMeshInterfaceEntity< 0 > > mirrorHostEntity (const MMeshInterfaceEntity< 0 > &other) const
 Mirror a host entity (2d)
 
template<int d = dimensionworld>
std::enable_if_t< d==3, const MMeshInterfaceEntity< 0 > > mirrorHostEntity (const MMeshInterfaceEntity< 0 > &other) const
 Mirror a host entity (3d)
 
void setIds ()
 compute the grid ids
 
void setIndices ()
 compute the grid indices
 
const MMeshgetMMesh () const
 Return reference to MMesh.
 
const HostGridTypegetHostGrid () const
 Return reference to underlying CGAL triangulation.
 
int sequence () const
 Return sequence number.
 
const auto & partitionHelper () const
 

Static Public Attributes

static constexpr int dimension = MMesh::dimension - 1
 
static constexpr int dimensionworld = MMesh::dimension
 

Protected Attributes

MMeshmMesh_
 The host grid which contains the actual grid hierarchy structure.
 
BoundarySegments boundarySegments_
 
BoundarySegments localBoundarySegments_
 
std::unordered_map< MMeshImpl::MultiId, int > mark_
 
int sequence_ = 0
 

Detailed Description

template<class MMesh>
class Dune::MMeshInterfaceGrid< MMesh >

Provides a DUNE grid interface class for the interface of a MMesh interface grid .

Member Typedef Documentation

◆ BoundarySegments

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::BoundarySegments = std::unordered_map<IdType, std::size_t>

◆ ConnectedComponent

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::ConnectedComponent = MMeshInterfaceConnectedComponent<const GridImp>

The type of a connected component.

◆ ctype

template<class MMesh >
typedef FieldType Dune::MMeshInterfaceGrid< MMesh >::ctype

The type used to store coordinates, inherited from the MMesh.

◆ EdgeHandle

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::EdgeHandle = MMeshInterfaceEntity<dimension - 1>

The type of the underlying edge handle.

◆ ElementOutput

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::ElementOutput = std::list<MMeshInterfaceEntity<0> >

The type of the element output.

◆ Entity

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::Entity = typename Traits::template Codim<0>::Entity

The type of a codim 0 entity.

◆ FieldType

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::FieldType = typename MMesh::FieldType

◆ GlobalCoordinate

template<class MMesh >
typedef Dune::FieldVector<ctype, dimensionworld> Dune::MMeshInterfaceGrid< MMesh >::GlobalCoordinate

The type used for coordinates.

◆ GridFamily

template<class MMesh >
typedef MMeshInterfaceGridFamily<MMesh> Dune::MMeshInterfaceGrid< MMesh >::GridFamily

the Traits

◆ GridImp

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::GridImp = typename GridFamily::Traits::Grid

the grid implementation

◆ GridPtrType

template<class MMesh >
typedef std::unique_ptr<GridImp> Dune::MMeshInterfaceGrid< MMesh >::GridPtrType

the unique pointer to the grid

◆ HostGridType

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::HostGridType = typename MMesh::HostGridType

the underlying hostgrid

◆ IdType

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::IdType = typename MMesh::IdType

◆ LeafIterator

template<class MMesh >
typedef Traits::template Codim<0>::LeafIterator Dune::MMeshInterfaceGrid< MMesh >::LeafIterator

the leaf iterator

◆ MMeshInterfaceEntity

template<class MMesh >
template<int cd>
using Dune::MMeshInterfaceGrid< MMesh >::MMeshInterfaceEntity = typename HostGridEntityChooser_<HostGridType, dimensionworld, cd + 1>::type

The type of the underlying entities.

◆ MMeshType

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::MMeshType = MMesh

the underlying mmesh

◆ RemeshingIndicator

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::RemeshingIndicator = RatioIndicator<GridImp>

The type of the default remeshing indicator.

◆ Traits

template<class MMesh >
typedef GridFamily::Traits Dune::MMeshInterfaceGrid< MMesh >::Traits

◆ Vertex

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::Vertex = typename Traits::template Codim<dimension>::Entity

The type of a vertex.

◆ VertexHandle

template<class MMesh >
using Dune::MMeshInterfaceGrid< MMesh >::VertexHandle = MMeshInterfaceEntity<dimension>

The type of the underlying vertex handle.

Constructor & Destructor Documentation

◆ MMeshInterfaceGrid()

template<class MMesh >
Dune::MMeshInterfaceGrid< MMesh >::MMeshInterfaceGrid ( MMesh mMesh,
BoundarySegments  boundarySegments = {} 
)
inlineexplicit

Constructor.

Member Function Documentation

◆ adapt() [1/2]

template<class MMesh >
bool Dune::MMeshInterfaceGrid< MMesh >::adapt ( )
inline

Triggers the grid adaptation process.

Returns
if triangulation has changed
Note
Refers to the adapt() of the underlying MMesh because it will definitely change as well

◆ adapt() [2/2]

template<class MMesh >
template<class GridImp , class DataHandle >
bool Dune::MMeshInterfaceGrid< MMesh >::adapt ( AdaptDataHandleInterface< GridImp, DataHandle > &  handle)
inline

Callback for the grid adaptation process with restrict/prolong.

◆ addBoundarySegment()

template<class MMesh >
void Dune::MMeshInterfaceGrid< MMesh >::addBoundarySegment ( const std::vector< std::size_t > &  ids,
std::size_t  bndSegIdx 
)
inline

◆ boundarySegments()

template<class MMesh >
const BoundarySegments & Dune::MMeshInterfaceGrid< MMesh >::boundarySegments ( ) const
inline

◆ canBeMirrored()

template<class MMesh >
bool Dune::MMeshInterfaceGrid< MMesh >::canBeMirrored ( const MMeshInterfaceEntity< 0 > &  hostEntity) const
inline

◆ comm()

template<class MMesh >
const Communication< Comm > & Dune::MMeshInterfaceGrid< MMesh >::comm ( ) const
inline

Collective communication.

◆ communicate()

template<class MMesh >
template<class Data , class InterfaceType , class CommunicationDirection >
void Dune::MMeshInterfaceGrid< MMesh >::communicate ( Data &  dataHandle,
InterfaceType  interface,
CommunicationDirection  direction,
int  level = 0 
) const
inline

◆ domainMarker()

template<class MMesh >
template<class Entity >
std::size_t Dune::MMeshInterfaceGrid< MMesh >::domainMarker ( const Entity entity) const
inline

Return domain marker of entity.

◆ entity() [1/4]

template<class MMesh >
template<class EntitySeed >
Traits::template Codim< EntitySeed::codimension >::Entity Dune::MMeshInterfaceGrid< MMesh >::entity ( const EntitySeed seed) const
inline

Create Entity from EntitySeed.

◆ entity() [2/4]

template<class MMesh >
Traits::template Codim< 0 >::Entity Dune::MMeshInterfaceGrid< MMesh >::entity ( const MMeshInterfaceEntity< 0 > &  hostEntity) const
inline

Create codim 0 entity from a host entity.

◆ entity() [3/4]

template<class MMesh >
template<int dimw = dimension + 1>
std::enable_if_t< dimw==3, typename Traits::template Codim< 1 >::Entity > Dune::MMeshInterfaceGrid< MMesh >::entity ( const MMeshInterfaceEntity< 1 > &  hostEntity) const
inline

Create codim 0 entity from a host entity.

◆ entity() [4/4]

template<class MMesh >
Traits::template Codim< dimension >::Entity Dune::MMeshInterfaceGrid< MMesh >::entity ( const MMeshInterfaceEntity< dimension > &  hostEntity) const
inline

Create Entity from a host entity.

◆ getConnectedComponent() [1/2]

template<class MMesh >
ConnectedComponent & Dune::MMeshInterfaceGrid< MMesh >::getConnectedComponent ( const Entity entity)
inline

Return a non-const reference to the connected component for a given entity.

◆ getConnectedComponent() [2/2]

template<class MMesh >
const ConnectedComponent & Dune::MMeshInterfaceGrid< MMesh >::getConnectedComponent ( const Entity entity) const
inline

Return the connected component for a given entity.

◆ getHostGrid()

template<class MMesh >
const HostGridType & Dune::MMeshInterfaceGrid< MMesh >::getHostGrid ( ) const
inline

Return reference to underlying CGAL triangulation.

◆ getMark()

template<class MMesh >
int Dune::MMeshInterfaceGrid< MMesh >::getMark ( const typename Traits::template Codim< 0 >::Entity e) const
inline

Return refinement mark for entity.

Returns
refinement mark

◆ getMMesh()

template<class MMesh >
const MMesh & Dune::MMeshInterfaceGrid< MMesh >::getMMesh ( ) const
inline

Return reference to MMesh.

◆ ghostSize() [1/2]

template<class MMesh >
unsigned int Dune::MMeshInterfaceGrid< MMesh >::ghostSize ( int  codim) const
inline

Size of the ghost cell layer on the leaf level.

◆ ghostSize() [2/2]

template<class MMesh >
unsigned int Dune::MMeshInterfaceGrid< MMesh >::ghostSize ( int  level,
int  codim 
) const
inline

Size of the ghost cell layer on a given level.

◆ globalIdSet()

template<class MMesh >
const Traits::GlobalIdSet & Dune::MMeshInterfaceGrid< MMesh >::globalIdSet ( ) const
inline

Access to the GlobalIdSet.

◆ globalRefine()

template<class MMesh >
void Dune::MMeshInterfaceGrid< MMesh >::globalRefine ( int  steps = 1)
inline

Global refine.

Marks all elements for refinement and adapts the grid

◆ hasConnectedComponent()

template<class MMesh >
bool Dune::MMeshInterfaceGrid< MMesh >::hasConnectedComponent ( const Entity entity) const
inline

Return if an entity has a connected component.

◆ isInterface() [1/5]

template<class MMesh >
template<class Entity >
bool Dune::MMeshInterfaceGrid< MMesh >::isInterface ( const Entity entity) const
inline

Return if dune entity is part of the interface.

◆ isInterface() [2/5]

template<class MMesh >
bool Dune::MMeshInterfaceGrid< MMesh >::isInterface ( const MMeshInterfaceEntity< 0 > &  segment) const
inline

Return if interface segment is part of the interface.

◆ isInterface() [3/5]

template<class MMesh >
template<int d = dimension>
std::enable_if_t< d==2, bool > Dune::MMeshInterfaceGrid< MMesh >::isInterface ( const MMeshInterfaceEntity< 1 > &  edge) const
inline

Return if an edge is of the interface.

◆ isInterface() [4/5]

template<class MMesh >
bool Dune::MMeshInterfaceGrid< MMesh >::isInterface ( const typename Traits::LeafIntersection intersection) const
inline

Return if intersection is part of the interface.

◆ isInterface() [5/5]

template<class MMesh >
bool Dune::MMeshInterfaceGrid< MMesh >::isInterface ( const VertexHandle vertex) const
inline

Return if vertex is part of the interface.

◆ lbegin() [1/2]

template<class MMesh >
template<int codim>
Traits::template Codim< codim >::LevelIterator Dune::MMeshInterfaceGrid< MMesh >::lbegin ( int  level) const
inline

Iterator to first entity of given codim on level.

◆ lbegin() [2/2]

template<class MMesh >
template<int codim, PartitionIteratorType PiType>
Traits::template Codim< codim >::template Partition< PiType >::LevelIterator Dune::MMeshInterfaceGrid< MMesh >::lbegin ( int  level) const
inline

Iterator to first entity of given codim on level.

◆ leafbegin() [1/2]

template<class MMesh >
template<int codim>
Traits::template Codim< codim >::LeafIterator Dune::MMeshInterfaceGrid< MMesh >::leafbegin ( ) const
inline

Iterator to first leaf entity of given codim.

◆ leafbegin() [2/2]

template<class MMesh >
template<int codim, PartitionIteratorType PiType>
Traits::template Codim< codim >::template Partition< PiType >::LeafIterator Dune::MMeshInterfaceGrid< MMesh >::leafbegin ( ) const
inline

Iterator to first leaf entity of given codim.

◆ leafend() [1/2]

template<class MMesh >
template<int codim>
Traits::template Codim< codim >::LeafIterator Dune::MMeshInterfaceGrid< MMesh >::leafend ( ) const
inline

one past the end of the sequence of leaf entities

◆ leafend() [2/2]

template<class MMesh >
template<int codim, PartitionIteratorType PiType>
Traits::template Codim< codim >::template Partition< PiType >::LeafIterator Dune::MMeshInterfaceGrid< MMesh >::leafend ( ) const
inline

one past the end of the sequence of leaf entities

◆ leafIndexSet()

template<class MMesh >
const MMeshInterfaceGridLeafIndexSet< const GridImp > & Dune::MMeshInterfaceGrid< MMesh >::leafIndexSet ( ) const
inline

Access to the LeafIndexSet.

◆ lend() [1/2]

template<class MMesh >
template<int codim>
Traits::template Codim< codim >::LevelIterator Dune::MMeshInterfaceGrid< MMesh >::lend ( int  level) const
inline

one past the end on this level

◆ lend() [2/2]

template<class MMesh >
template<int codim, PartitionIteratorType PiType>
Traits::template Codim< codim >::template Partition< PiType >::LevelIterator Dune::MMeshInterfaceGrid< MMesh >::lend ( int  level) const
inline

one past the end on this level

◆ levelIndexSet()

template<class MMesh >
const MMeshInterfaceGridLeafIndexSet< const GridImp > & Dune::MMeshInterfaceGrid< MMesh >::levelIndexSet ( int  level) const
inline

Access to the LevelIndexSets.

◆ loadBalance() [1/3]

template<class MMesh >
void Dune::MMeshInterfaceGrid< MMesh >::loadBalance ( )
inline

Distributes this grid over the available nodes in a distributed machine.

Parameters
minlevelThe coarsest grid level that gets distributed
maxleveldoes currently get ignored

◆ loadBalance() [2/3]

template<class MMesh >
template<class T >
bool Dune::MMeshInterfaceGrid< MMesh >::loadBalance ( const T &  t)
inline

◆ loadBalance() [3/3]

template<class MMesh >
void Dune::MMeshInterfaceGrid< MMesh >::loadBalance ( int  strategy,
int  minlevel,
int  depth,
int  maxlevel,
int  minelement 
)
inline

◆ localIdSet()

template<class MMesh >
const Traits::LocalIdSet & Dune::MMeshInterfaceGrid< MMesh >::localIdSet ( ) const
inline

Access to the LocalIdSet.

◆ mark()

template<class MMesh >
bool Dune::MMeshInterfaceGrid< MMesh >::mark ( int  refCount,
const typename Traits::template Codim< 0 >::Entity e 
) const
inline

Mark entity for refinement.

This only works for entities of codim 0.

◆ markAsRefined()

template<class MMesh >
void Dune::MMeshInterfaceGrid< MMesh >::markAsRefined ( const std::vector< std::vector< std::size_t > > &  children,
const ConnectedComponent  connectedComponent 
)
inline

Mark a set of children elements as refinement of a connected component.

◆ maxLevel()

template<class MMesh >
int Dune::MMeshInterfaceGrid< MMesh >::maxLevel ( ) const
inline

Return maximum level defined in this grid.

Levels are numbered 0 ... maxlevel with 0 the coarsest level.

◆ mirrorHostEntity() [1/2]

template<class MMesh >
template<int d = dimensionworld>
std::enable_if_t< d==2, const MMeshInterfaceEntity< 0 > > Dune::MMeshInterfaceGrid< MMesh >::mirrorHostEntity ( const MMeshInterfaceEntity< 0 > &  other) const
inline

Mirror a host entity (2d)

◆ mirrorHostEntity() [2/2]

template<class MMesh >
template<int d = dimensionworld>
std::enable_if_t< d==3, const MMeshInterfaceEntity< 0 > > Dune::MMeshInterfaceGrid< MMesh >::mirrorHostEntity ( const MMeshInterfaceEntity< 0 > &  other) const
inline

Mirror a host entity (3d)

◆ numBoundarySegments()

template<class MMesh >
size_t Dune::MMeshInterfaceGrid< MMesh >::numBoundarySegments ( ) const
inline

returns the number of boundary segments within the macro grid

◆ overlapSize() [1/2]

template<class MMesh >
unsigned int Dune::MMeshInterfaceGrid< MMesh >::overlapSize ( int  codim) const
inline

Size of the overlap on the leaf level.

◆ overlapSize() [2/2]

template<class MMesh >
unsigned int Dune::MMeshInterfaceGrid< MMesh >::overlapSize ( int  level,
int  codim 
) const
inline

Size of the overlap on a given level.

◆ partitionHelper()

template<class MMesh >
const auto & Dune::MMeshInterfaceGrid< MMesh >::partitionHelper ( ) const
inline

◆ postAdapt()

template<class MMesh >
void Dune::MMeshInterfaceGrid< MMesh >::postAdapt ( )
inline

Clean up refinement markers.

◆ preAdapt()

template<class MMesh >
bool Dune::MMeshInterfaceGrid< MMesh >::preAdapt ( )
inline

returns false, if at least one entity is marked for adaption

◆ sequence()

template<class MMesh >
int Dune::MMeshInterfaceGrid< MMesh >::sequence ( ) const
inline

Return sequence number.

◆ setBoundarySegments()

template<class MMesh >
void Dune::MMeshInterfaceGrid< MMesh >::setBoundarySegments ( const BoundarySegments  boundarySegments)
inline

◆ setIds()

template<class MMesh >
void Dune::MMeshInterfaceGrid< MMesh >::setIds ( )
inline

compute the grid ids

◆ setIndices()

template<class MMesh >
void Dune::MMeshInterfaceGrid< MMesh >::setIndices ( )
inline

compute the grid indices

◆ size() [1/4]

template<class MMesh >
int Dune::MMeshInterfaceGrid< MMesh >::size ( GeometryType  type) const
inline

number of leaf entities per codim and geometry type in this process

◆ size() [2/4]

template<class MMesh >
int Dune::MMeshInterfaceGrid< MMesh >::size ( int  codim) const
inline

number of leaf entities per codim in this process

◆ size() [3/4]

template<class MMesh >
int Dune::MMeshInterfaceGrid< MMesh >::size ( int  level,
GeometryType  type 
) const
inline

number of entities per level, codim and geometry type in this process

◆ size() [4/4]

template<class MMesh >
int Dune::MMeshInterfaceGrid< MMesh >::size ( int  level,
int  codim 
) const
inline

Number of grid entities per level and codim.

Member Data Documentation

◆ boundarySegments_

template<class MMesh >
BoundarySegments Dune::MMeshInterfaceGrid< MMesh >::boundarySegments_
protected

◆ dimension

template<class MMesh >
constexpr int Dune::MMeshInterfaceGrid< MMesh >::dimension = MMesh::dimension - 1
staticconstexpr

◆ dimensionworld

template<class MMesh >
constexpr int Dune::MMeshInterfaceGrid< MMesh >::dimensionworld = MMesh::dimension
staticconstexpr

◆ localBoundarySegments_

template<class MMesh >
BoundarySegments Dune::MMeshInterfaceGrid< MMesh >::localBoundarySegments_
protected

◆ mark_

template<class MMesh >
std::unordered_map<MMeshImpl::MultiId, int> Dune::MMeshInterfaceGrid< MMesh >::mark_
mutableprotected

◆ mMesh_

template<class MMesh >
MMesh* Dune::MMeshInterfaceGrid< MMesh >::mMesh_
protected

The host grid which contains the actual grid hierarchy structure.

◆ sequence_

template<class MMesh >
int Dune::MMeshInterfaceGrid< MMesh >::sequence_ = 0
protected

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