dune-grid 2.10
Loading...
Searching...
No Matches
Classes | Typedefs | Functions | Variables
Collaboration diagram for GridView:

Classes

class  Dune::GridView< ViewTraits >
 Grid view abstract base class. More...
 
struct  Dune::GridView< ViewTraits >::Codim< cd >
 A struct that collects all associated types of one implementation from the Traits class. More...
 
struct  Dune::GridView< ViewTraits >::Codim< cd >::Partition< pit >
 Define types needed to iterate over entities of a given partition type. More...
 
struct  Dune::GridView< ViewTraits >::DeprecatedMethodEmptyFuture
 

Typedefs

typedef ViewTraits::GridViewImp Dune::GridView< ViewTraits >::Implementation
 type of underlying implementation
 
typedef ViewTraits::GridViewImp Dune::GridView< ViewTraits >::GridViewImp
 
typedef ViewTraits Dune::GridView< ViewTraits >::Traits
 Traits class.
 
typedef Traits::Grid Dune::GridView< ViewTraits >::Grid
 type of the grid
 
typedef Traits::IndexSet Dune::GridView< ViewTraits >::IndexSet
 type of the index set
 
typedef Traits::Intersection Dune::GridView< ViewTraits >::Intersection
 type of the intersection
 
typedef Traits::IntersectionIterator Dune::GridView< ViewTraits >::IntersectionIterator
 type of the intersection iterator
 
using Dune::GridView< ViewTraits >::Communication = typename Traits ::Communication
 A type that is a model of Dune::Communication. It provides a portable way for communication on the set of processes used by the grid.
 
typedef Traits::template Codim< cd >::Iterator Dune::GridView< ViewTraits >::Codim< cd >::Iterator
 type of iterator returned by the grid view
 
typedef Traits::template Codim< cd >::Entity Dune::GridView< ViewTraits >::Codim< cd >::Entity
 type of corresponding entity
 
typedef Traits::template Codim< cd >::Geometry Dune::GridView< ViewTraits >::Codim< cd >::Geometry
 type of the geometry implementation
 
typedef Traits::template Codim< cd >::LocalGeometry Dune::GridView< ViewTraits >::Codim< cd >::LocalGeometry
 type of the implementation for local geometries
 
typedef Traits::template Codim< cd >::template Partition< pit >::Iterator Dune::GridView< ViewTraits >::Codim< cd >::Partition< pit >::Iterator
 iterator over a given codim and partition type
 
typedef Grid::ctype Dune::GridView< ViewTraits >::ctype
 type used for coordinates in grid
 

Functions

template<int dim, int dimworld, class ct , class GridFamily >
Grid< dim, dimworld, ct, GridFamily >::LevelGridView Dune::levelGridView (const Grid< dim, dimworld, ct, GridFamily > &grid, int level)
 level grid view for the given grid and level.
 
template<int dim, int dimworld, class ct , class GridFamily >
Grid< dim, dimworld, ct, GridFamily >::LeafGridView Dune::leafGridView (const Grid< dim, dimworld, ct, GridFamily > &grid)
 leaf grid view for the given grid
 
void Dune::GridView< ViewTraits >::DeprecatedMethodEmptyFuture::printMessage () const
 
bool Dune::GridView< ViewTraits >::DeprecatedMethodEmptyFuture::ready ()
 
void Dune::GridView< ViewTraits >::DeprecatedMethodEmptyFuture::wait ()
 
bool Dune::GridView< ViewTraits >::DeprecatedMethodEmptyFuture::valid () const
 

Variables

static constexpr bool Dune::GridView< ViewTraits >::conforming = Traits :: conforming
 Export if this grid view is guaranteed conforming.
 
static constexpr int Dune::GridView< ViewTraits >::dimension = Grid :: dimension
 The dimension of the grid.
 
static constexpr int Dune::GridView< ViewTraits >::dimensionworld = Grid :: dimensionworld
 The dimension of the world the grid lives in.
 

Interface for the implementor

Implementation Dune::GridView< ViewTraits >::impl_
 
 Dune::GridView< ViewTraits >::GridView (const Implementation &imp)
 constructor (engine concept)
 
 Dune::GridView< ViewTraits >::GridView (const ThisType &other)
 Copy constructor.
 
ThisTypeDune::GridView< ViewTraits >::operator= (const ThisType &other)
 assignment operator
 
const GridDune::GridView< ViewTraits >::grid () const
 obtain a const reference to the underlying hierarchic grid
 
const IndexSetDune::GridView< ViewTraits >::indexSet () const
 obtain the index set
 
int Dune::GridView< ViewTraits >::size (int codim) const
 obtain number of entities in a given codimension
 
int Dune::GridView< ViewTraits >::size (const GeometryType &type) const
 obtain number of entities with a given geometry type
 
bool Dune::GridView< ViewTraits >::isConforming () const
 return true if current state of grid view represents a conforming grid
 
template<class EntityType >
bool Dune::GridView< ViewTraits >::contains (const EntityType &e) const
 Return true if the given entity is contained in this grid view.
 
template<int cd>
Codim< cd >::Iterator Dune::GridView< ViewTraits >::begin () const
 obtain begin iterator for this view
 
template<int cd>
Codim< cd >::Iterator Dune::GridView< ViewTraits >::end () const
 obtain end iterator for this view
 
template<int cd, PartitionIteratorType pitype>
Codim< cd >::template Partition< pitype >::Iterator Dune::GridView< ViewTraits >::begin () const
 obtain begin iterator for this view
 
template<int cd, PartitionIteratorType pitype>
Codim< cd >::template Partition< pitype >::Iterator Dune::GridView< ViewTraits >::end () const
 obtain end iterator for this view
 
IntersectionIterator Dune::GridView< ViewTraits >::ibegin (const typename Codim< 0 > ::Entity &entity) const
 obtain begin intersection iterator with respect to this view
 
IntersectionIterator Dune::GridView< ViewTraits >::iend (const typename Codim< 0 > ::Entity &entity) const
 obtain end intersection iterator with respect to this view
 
const CommunicationDune::GridView< ViewTraits >::comm () const
 obtain communication object
 
int Dune::GridView< ViewTraits >::overlapSize (int codim) const
 Return size of the overlap region for a given codim on the grid view.

 
int Dune::GridView< ViewTraits >::ghostSize (int codim) const
 Return size of the ghost region for a given codim on the grid view.

 
template<class DataHandleImp , class DataType >
auto Dune::GridView< ViewTraits >::communicate (CommDataHandleIF< DataHandleImp, DataType > &data, InterfaceType iftype, CommunicationDirection dir) const
 Communicate data on this view.
 
ImplementationDune::GridView< ViewTraits >::impl ()
 access to the underlying implementation
 
const ImplementationDune::GridView< ViewTraits >::impl () const
 access to the underlying implementation
 
template<class DataHandleImp , class DataType >
auto Dune::GridView< ViewTraits >::communicate (CommDataHandleIF< DataHandleImp, DataType > &data, InterfaceType iftype, CommunicationDirection dir, std::integral_constant< bool, false >) const
 Communicate data on this view.
 
template<class DataHandleImp , class DataType >
auto Dune::GridView< ViewTraits >::communicate (CommDataHandleIF< DataHandleImp, DataType > &data, InterfaceType iftype, CommunicationDirection dir, std::integral_constant< bool, true >) const
 Communicate data on this view.
 

Detailed Description

Though a DUNE grid is hierarchic, one often only needs access to a certain subset of the entities in the grid, e.g., all entities on a given level or the leaf entities in the hierarchy. These views are provided by an implementation of GridView. Each grid exports a LevelGridView and a LeafGridView, corresponding to the two different subsets (views) described above.

A grid view provides the following functionality:

The default GridViews can be obtained from the grid by calling one of the levelGridView() or leafGridView() methods which are provided as both free functions and member functions of the Grid interface class.

Typedef Documentation

◆ Communication

A type that is a model of Dune::Communication. It provides a portable way for communication on the set of processes used by the grid.

◆ ctype

type used for coordinates in grid

◆ Entity

template<class ViewTraits >
template<int cd>
typedef Traits::template Codim<cd>::Entity Dune::GridView< ViewTraits >::Codim< cd >::Entity

type of corresponding entity

◆ Geometry

template<class ViewTraits >
template<int cd>
typedef Traits::template Codim<cd>::Geometry Dune::GridView< ViewTraits >::Codim< cd >::Geometry

type of the geometry implementation

◆ Grid

template<class ViewTraits >
typedef Traits::Grid Dune::GridView< ViewTraits >::Grid

type of the grid

◆ GridViewImp

template<class ViewTraits >
typedef ViewTraits::GridViewImp Dune::GridView< ViewTraits >::GridViewImp

◆ Implementation

template<class ViewTraits >
typedef ViewTraits::GridViewImp Dune::GridView< ViewTraits >::Implementation

type of underlying implementation

Warning
Implementation details may change without prior notification.

◆ IndexSet

template<class ViewTraits >
typedef Traits::IndexSet Dune::GridView< ViewTraits >::IndexSet

type of the index set

◆ Intersection

template<class ViewTraits >
typedef Traits::Intersection Dune::GridView< ViewTraits >::Intersection

type of the intersection

◆ IntersectionIterator

template<class ViewTraits >
typedef Traits::IntersectionIterator Dune::GridView< ViewTraits >::IntersectionIterator

type of the intersection iterator

◆ Iterator [1/2]

template<class ViewTraits >
template<int cd>
typedef Traits::template Codim<cd>::Iterator Dune::GridView< ViewTraits >::Codim< cd >::Iterator

type of iterator returned by the grid view

◆ Iterator [2/2]

template<class ViewTraits >
template<int cd>
template<PartitionIteratorType pit>
typedef Traits::template Codim<cd>::template Partition<pit>::Iterator Dune::GridView< ViewTraits >::Codim< cd >::Partition< pit >::Iterator

iterator over a given codim and partition type

◆ LocalGeometry

template<class ViewTraits >
template<int cd>
typedef Traits::template Codim<cd>::LocalGeometry Dune::GridView< ViewTraits >::Codim< cd >::LocalGeometry

type of the implementation for local geometries

◆ Traits

Traits class.

Function Documentation

◆ begin() [1/2]

template<class ViewTraits >
template<int cd>
Codim< cd >::Iterator Dune::GridView< ViewTraits >::begin ( ) const
inline

obtain begin iterator for this view

◆ begin() [2/2]

template<class ViewTraits >
template<int cd, PartitionIteratorType pitype>
Codim< cd >::template Partition< pitype >::Iterator Dune::GridView< ViewTraits >::begin ( ) const
inline

obtain begin iterator for this view

◆ comm()

template<class ViewTraits >
const Communication & Dune::GridView< ViewTraits >::comm ( ) const
inline

obtain communication object

◆ communicate() [1/3]

template<class ViewTraits >
template<class DataHandleImp , class DataType >
auto Dune::GridView< ViewTraits >::communicate ( CommDataHandleIF< DataHandleImp, DataType > &  data,
InterfaceType  iftype,
CommunicationDirection  dir 
) const
inline

Communicate data on this view.

◆ communicate() [2/3]

template<class ViewTraits >
template<class DataHandleImp , class DataType >
auto Dune::GridView< ViewTraits >::communicate ( CommDataHandleIF< DataHandleImp, DataType > &  data,
InterfaceType  iftype,
CommunicationDirection  dir,
std::integral_constant< bool, false  
) const
inlineprotected

Communicate data on this view.

◆ communicate() [3/3]

template<class ViewTraits >
template<class DataHandleImp , class DataType >
auto Dune::GridView< ViewTraits >::communicate ( CommDataHandleIF< DataHandleImp, DataType > &  data,
InterfaceType  iftype,
CommunicationDirection  dir,
std::integral_constant< bool, true  
) const
inlineprotected

Communicate data on this view.

◆ contains()

template<class ViewTraits >
template<class EntityType >
bool Dune::GridView< ViewTraits >::contains ( const EntityType e) const
inline

Return true if the given entity is contained in this grid view.

Todo:
Currently we call the implementation on the IndexSet. This may lead to suboptimal efficiency.
Note
If the input element e is not an element of the grid, then the result of contains() is undefined.

◆ end() [1/2]

template<class ViewTraits >
template<int cd>
Codim< cd >::Iterator Dune::GridView< ViewTraits >::end ( ) const
inline

obtain end iterator for this view

◆ end() [2/2]

template<class ViewTraits >
template<int cd, PartitionIteratorType pitype>
Codim< cd >::template Partition< pitype >::Iterator Dune::GridView< ViewTraits >::end ( ) const
inline

obtain end iterator for this view

◆ ghostSize()

template<class ViewTraits >
int Dune::GridView< ViewTraits >::ghostSize ( int  codim) const
inline

Return size of the ghost region for a given codim on the grid view.

◆ grid()

template<class ViewTraits >
const Grid & Dune::GridView< ViewTraits >::grid ( ) const
inline

obtain a const reference to the underlying hierarchic grid

◆ GridView() [1/2]

template<class ViewTraits >
Dune::GridView< ViewTraits >::GridView ( const Implementation imp)
inline

constructor (engine concept)

◆ GridView() [2/2]

template<class ViewTraits >
Dune::GridView< ViewTraits >::GridView ( const ThisType other)
inline

Copy constructor.

◆ ibegin()

template<class ViewTraits >
IntersectionIterator Dune::GridView< ViewTraits >::ibegin ( const typename Codim< 0 > ::Entity &  entity) const
inline

obtain begin intersection iterator with respect to this view

◆ iend()

template<class ViewTraits >
IntersectionIterator Dune::GridView< ViewTraits >::iend ( const typename Codim< 0 > ::Entity &  entity) const
inline

obtain end intersection iterator with respect to this view

◆ impl() [1/2]

template<class ViewTraits >
Implementation & Dune::GridView< ViewTraits >::impl ( )
inline

access to the underlying implementation

Warning
Implementation details may change without prior notification.

◆ impl() [2/2]

template<class ViewTraits >
const Implementation & Dune::GridView< ViewTraits >::impl ( ) const
inline

access to the underlying implementation

Warning
Implementation details may change without prior notification.

◆ indexSet()

template<class ViewTraits >
const IndexSet & Dune::GridView< ViewTraits >::indexSet ( ) const
inline

obtain the index set

The lifetime of the returned index set is bound to the lifetime of the grid view. Keep a copy of the grid view to prevent the index set from becoming a dangling reference.

◆ isConforming()

template<class ViewTraits >
bool Dune::GridView< ViewTraits >::isConforming ( ) const
inline

return true if current state of grid view represents a conforming grid

◆ leafGridView()

template<int dim, int dimworld, class ct , class GridFamily >
Grid< dim, dimworld, ct, GridFamily >::LeafGridView Dune::leafGridView ( const Grid< dim, dimworld, ct, GridFamily > &  grid)

leaf grid view for the given grid

Identical to the method in the Grid interface, but provided as a free function.

See also
Grid::leafGridView
Parameters
gridGrid to obtain the leaf grid view for

◆ levelGridView()

template<int dim, int dimworld, class ct , class GridFamily >
Grid< dim, dimworld, ct, GridFamily >::LevelGridView Dune::levelGridView ( const Grid< dim, dimworld, ct, GridFamily > &  grid,
int  level 
)

level grid view for the given grid and level.

Identical to the method in the Grid interface, but provided as a free function.

See also
Grid::levelGridView
Parameters
gridGrid to obtain the level grid view for
levellevel of the level grid view

◆ operator=()

template<class ViewTraits >
ThisType & Dune::GridView< ViewTraits >::operator= ( const ThisType other)
inline

assignment operator

◆ overlapSize()

template<class ViewTraits >
int Dune::GridView< ViewTraits >::overlapSize ( int  codim) const
inline

Return size of the overlap region for a given codim on the grid view.

◆ printMessage()

template<class ViewTraits >
void Dune::GridView< ViewTraits >::DeprecatedMethodEmptyFuture::printMessage ( ) const
inline

◆ ready()

template<class ViewTraits >
bool Dune::GridView< ViewTraits >::DeprecatedMethodEmptyFuture::ready ( )
inline

◆ size() [1/2]

template<class ViewTraits >
int Dune::GridView< ViewTraits >::size ( const GeometryType &  type) const
inline

obtain number of entities with a given geometry type

◆ size() [2/2]

template<class ViewTraits >
int Dune::GridView< ViewTraits >::size ( int  codim) const
inline

obtain number of entities in a given codimension

◆ valid()

template<class ViewTraits >
bool Dune::GridView< ViewTraits >::DeprecatedMethodEmptyFuture::valid ( ) const
inline

◆ wait()

template<class ViewTraits >
void Dune::GridView< ViewTraits >::DeprecatedMethodEmptyFuture::wait ( )
inline

Variable Documentation

◆ conforming

template<class ViewTraits >
constexpr bool Dune::GridView< ViewTraits >::conforming = Traits :: conforming
staticconstexpr

Export if this grid view is guaranteed conforming.

◆ dimension

template<class ViewTraits >
constexpr int Dune::GridView< ViewTraits >::dimension = Grid :: dimension
staticconstexpr

The dimension of the grid.

◆ dimensionworld

template<class ViewTraits >
constexpr int Dune::GridView< ViewTraits >::dimensionworld = Grid :: dimensionworld
staticconstexpr

The dimension of the world the grid lives in.

◆ impl_

template<class ViewTraits >
Implementation Dune::GridView< ViewTraits >::impl_
protected