3#ifndef DUNE_ALBERTAGRID_GRIDFAMILTY_HH
4#define DUNE_ALBERTAGRID_GRIDFAMILTY_HH
13#include <dune/grid/common/entity.hh>
17#include <dune/grid/common/intersection.hh>
18#include <dune/grid/common/intersectioniterator.hh>
19#include <dune/grid/common/entityiterator.hh>
21#include <dune/grid/albertagrid/misc.hh>
22#include <dune/grid/albertagrid/gridview.hh>
32 template<
int dim,
int dimworld >
35 template<
int codim,
int dim,
class Gr
idImp >
36 class AlbertaGridEntity;
38 template<
int codim,
class Gr
idImp >
39 class AlbertaGridEntityPointer;
41 template<
int codim,
class Gr
id >
42 class AlbertaGridEntitySeed;
44 template<
int mydim,
int cdim,
class Gr
idImp >
45 class AlbertaGridGeometry;
47 template<
int mydim,
int cdim,
class Gr
idImp >
48 class AlbertaGridGlobalGeometry;
50 template<
int dim,
int dimworld >
51 class AlbertaGridHierarchicIndexSet;
53 template<
class Gr
idImp >
54 class AlbertaGridHierarchicIterator;
56 template<
class Gr
idImp >
57 class AlbertaGridLeafIntersection;
59 template<
class Gr
idImp >
60 class AlbertaGridLeafIntersectionIterator;
62 template<
int dim,
int dimworld >
63 class AlbertaGridIdSet;
65 template<
int dim,
int dimworld >
66 class AlbertaGridIndexSet;
68 template<
int codim, PartitionIteratorType pitype,
class Gr
idImp >
69 class AlbertaGridLeafIterator;
71 template<
int codim, PartitionIteratorType pitype,
class Gr
idImp >
72 class AlbertaGridLevelIterator;
80 template <
int dim,
int dimworld>
81 struct AlbertaGridFamily
85 typedef Alberta::Real ctype;
87 static const int dimension = dim;
88 static const int dimensionworld = dimworld;
90 typedef AlbertaGridIndexSet< dim, dimworld > LevelIndexSetImp;
91 typedef AlbertaGridIndexSet< dim, dimworld > LeafIndexSetImp;
93 typedef AlbertaGridIdSet< dim, dimworld > IdSetImp;
94 typedef unsigned int IdType;
103 <
const GridImp, AlbertaGridLeafIntersectionIterator< const GridImp >, AlbertaGridLeafIntersection< const GridImp > >
104 LeafIntersectionIterator;
106 <
const GridImp, AlbertaGridLeafIntersectionIterator< const GridImp >, AlbertaGridLeafIntersection< const GridImp > >
107 LevelIntersectionIterator;
111 typedef IdType GlobalIdType;
112 typedef IdType LocalIdType;
117 typedef AlbertaGridGlobalGeometry< dim-cd, dimworld,
const Grid > GeometryImpl;
118 typedef AlbertaGridGeometry< dim-cd, dim,
const Grid > LocalGeometryImpl;
119 typedef Dune::Geometry< dim-cd, dimworld,
const Grid, AlbertaGridGlobalGeometry > Geometry;
120 typedef Dune::Geometry< dim-cd, dim,
const Grid, LocalGeometryReference > LocalGeometry;
124 typedef AlbertaGridEntityPointer< cd, const GridImp > EntityPointerImpl;
128 template <PartitionIteratorType pitype>
135 typedef typename Partition< All_Partition >::LevelIterator LevelIterator;
136 typedef typename Partition< All_Partition >::LeafIterator LeafIterator;
139 template <PartitionIteratorType pitype>
146 typedef IndexSet< GridImp, LevelIndexSetImp, int > LevelIndexSet;
147 typedef IndexSet< GridImp, LeafIndexSetImp, int > LeafIndexSet;
148 typedef AlbertaGridHierarchicIndexSet< dim, dimworld > HierarchicIndexSet;
149 typedef IdSet<GridImp,IdSetImp,IdType> GlobalIdSet;
150 typedef IdSet<GridImp,IdSetImp,IdType> LocalIdSet;
interface class for an iterator over grid entities
Definition: entityiterator.hh:37
Wrapper class for pointers to entities.
Definition: entitypointer.hh:92
Store a reference to an entity with a minimal memory footprint.
Definition: entityseed.hh:24
Wrapper class for entities.
Definition: entity.hh:57
Wrapper class for geometries.
Definition: geometry.hh:102
Grid view abstract base class.
Definition: gridview.hh:57
Mesh entities of codimension 0 ("elements") allow to visit all intersections with "neighboring" eleme...
Definition: intersectioniterator.hh:83
Intersection of a mesh entities of codimension 0 ("elements") with a "neighboring" element or with th...
Definition: intersection.hh:161
Wrapper and interface classe for a static iterator (EntityPointer)
Wrapper and interface classes for element geometries.
Wrapper and interface classes for element geometries.
Dune namespace.
Definition: alignment.hh:14
Implements an utility class that provides collective communication methods for sequential programs.