DUNE-FEM (unstable)

Dune::Fem::AdaptiveGridPartBase< TraitsImp > Class Template Reference

A grid part with an index set specially designed for adaptive calculations. More...

#include <dune/fem/gridpart/adaptiveleafgridpart.hh>

Classes

struct  Codim
 Struct providing types of the leaf iterators on codimension codim. More...
 

Public Types

typedef TraitsImp Traits
 Type definitions.
 
typedef Traits::GridPartType GridPartType
 Grid implementation type.
 
typedef Traits::GridType GridType
 Grid implementation type.
 
typedef Traits::IndexSetType IndexSetType
 The leaf index set of the grid implementation.
 
typedef Traits::IntersectionIteratorType IntersectionIteratorType
 type of intersection iterator
 
typedef IntersectionIteratorType::Intersection IntersectionType
 type of intersection
 
typedef Traits::CommunicationType CommunicationType
 Collective communication.
 
typedef DofManager< GridTypeDofManagerType
 type of DofManager
 
typedef BoundaryIdProvider< GridTypeBoundaryIdProviderType
 type of boundary id provider specialized for each grid type
 
typedef GridType Grid
 type of Grid implementation
 
typedef IndexSetType IndexSet
 Index set implementation.
 
typedef CommunicationType Communication
 Collective communication.
 
typedef Traits::TwistUtilityType TwistUtilityType
 Twist utility type.
 
typedef IntersectionIteratorType IntersectionIterator
 type of IntersectionIterator
 
typedef IntersectionType Intersection
 type of Intersection
 

Public Member Functions

 AdaptiveGridPartBase (GridType &grid)
 constructor
 
 AdaptiveGridPartBase (const ThisType &other)=default
 Copy Constructor.
 
const IndexSetTypeindexSet () const
 Returns reference to index set of the underlying grid.
 
IndexSetTypeindexSet ()
 Returns reference to index set of the underlying grid.
 
template<int codim>
Codim< codim >::IteratorType begin () const
 Begin iterator on the leaf level.
 
template<int codim, PartitionIteratorType pitype>
Codim< codim >::template Partition< pitype >::IteratorType begin () const
 Begin iterator on the leaf level.
 
template<int codim>
Codim< codim >::IteratorType end () const
 Begin iterator on the leaf level.
 
template<int codim, PartitionIteratorType pitype>
Codim< codim >::template Partition< pitype >::IteratorType end () const
 End iterator on the leaf level.
 
IntersectionIteratorType ibegin (const ElementType &entity) const
 ibegin of corresponding intersection iterator for given entity
 
IntersectionIteratorType iend (const ElementType &entity) const
 iend of corresponding intersection iterator for given entity
 
template<class DataHandle , class Data >
decltype(auto) communicate (CommDataHandleIF< DataHandle, Data > &data, InterfaceType iftype, CommunicationDirection dir) const
 corresponding communication method for this grid part
 
const GridTypegrid () const
 Returns const reference to the underlying grid.
 
GridTypegrid ()
 Returns reference to the underlying grid.
 
bool isConforming () const
 returns true if current grid part represents a conforming grid
 
int size (int codim) const
 obtain number of entities in a given codimension
 
int size (const GeometryType &type) const
 obtain number of entities with a given geometry type
 
const CommunicationTypecomm () const
 obtain collective communication object
 
Traits::template Codim< EntitySeed::codimension >::EntityType entity (const EntitySeed &seed) const
 
const Entityconvert (const Entity &entity) const
 
int boundaryId (const IntersectionType &intersection) const
 
int level () const
 Level of the grid part.
 
IntersectionIteratorType ibegin (const typename Codim< 0 >::EntityType &entity) const
 ibegin of corresponding intersection iterator for given entity
 
IntersectionIteratorType iend (const typename Codim< 0 >::EntityType &entity) const
 iend of corresponding intersection iterator for given entity
 
void communicate (CommDataHandleIF< DataHandleImp, DataType > &data, InterfaceType iftype, CommunicationDirection dir) const
 corresponding communication method for grid part
 
int sequence () const
 return sequence number to update structures depending on the grid part More...
 

Static Public Attributes

static const PartitionIteratorType indexSetPartitionType
 Maximum Partition type, the index set provides indices for.
 

Protected Member Functions

 AdaptiveGridPartBase (GridType &grid, const NoIndexSetType &noIndexSet)
 Constructor constructing object held by index set (for iterator access)
 

Detailed Description

template<class TraitsImp>
class Dune::Fem::AdaptiveGridPartBase< TraitsImp >

A grid part with an index set specially designed for adaptive calculations.

The underlying index set is defined for entities of all codimensions.

Member Function Documentation

◆ boundaryId()

int Dune::Fem::GridPartDefault< TraitsImp >::boundaryId ( const IntersectionType intersection) const
inlineinherited

obtain entity pointer from entity seed

◆ convert()

const Entity & Dune::Fem::GridPartDefault< TraitsImp >::convert ( const Entity entity) const
inlineinherited

convert the grid's entity to a grid part entity Usually the parameter is GridType :: Codim< codim > :: Entity and the return is Codim< codim > :: EntityType. In general these types are the same, but for overloaded entities on grid parts this can differ.

Note
The default implementation does nothing but return the same entity

◆ entity()

Traits::template Codim< EntitySeed::codimension >::EntityType Dune::Fem::GridPartDefault< TraitsImp >::entity ( const EntitySeed seed) const
inlineinherited

obtain entity pointer from entity seed

Template Parameters
EntitySeedentity seed from which to create entity

The default implementation simply forwards to the corresponding method on the grid.

◆ sequence()

int Dune::Fem::GridPartInterface< TraitsImp >::sequence ( ) const
inlineinherited

return sequence number to update structures depending on the grid part

Note
The default returns DofManager< Grid > :: sequence ()

The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Nov 12, 23:30, 2024)