dune-grid  2.4.1-rc2
geometrygrid/gridfamily.hh
Go to the documentation of this file.
1 // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 // vi: set et ts=4 sw=2 sts=2:
3 #ifndef DUNE_GEOGRID_GRIDFAMILY_HH
4 #define DUNE_GEOGRID_GRIDFAMILY_HH
5 
19 
20 namespace Dune
21 {
22 
26  namespace GeoGrid
27  {
28 
29  // ExportParams
30  // ------------
31 
32  template< class HG, class CF >
34  {
35  static const bool isCoordFunction = isCoordFunctionInterface< typename CF::Interface >::value;
36  static_assert(isCoordFunction, "Invalid CoordFunction.");
37 
38  public:
39  typedef HG HostGrid;
40  typedef CF CoordFunction;
41  };
42 
43 
44 
45  // GridFamily
46  // ----------
47 
48  template< class HG, class CF, class Allocator >
49  struct GridFamily
50  {
51  struct Traits
52  {
54 
55  typedef HG HostGrid;
56  typedef CF CoordFunction;
57 
58  typedef typename HostGrid::ctype ctype;
59 
60  static const int dimension = HostGrid::dimension;
61  static const int dimensionworld = CoordFunction::dimRange;
62 
65 
72 
75 
76  template< int codim >
77  struct Codim
78  {
79  typedef Dune::GeoGrid::Geometry< dimension-codim, dimensionworld, const Grid > GeometryImpl;
80  typedef Dune::Geometry< dimension-codim, dimensionworld, const Grid, Dune::GeoGrid::Geometry > Geometry;
81  typedef typename HostGrid::template Codim< codim >::LocalGeometry LocalGeometry;
82 
85 
87 
89 
90  template< PartitionIteratorType pitype >
91  struct Partition
92  {
95 
98  };
99 
102  };
103 
106 
111 
112  typedef typename HostGrid::Traits::CollectiveCommunication CollectiveCommunication;
113 
114  template< PartitionIteratorType pitype >
115  struct Partition
116  {
121  };
122  };
123  };
124 
125  } // namespace GeoGrid
126 
127 } // namespace Dune
128 
129 #endif // #ifndef DUNE_GEOGRID_GRIDFAMILY_HH
Dune::GridView< GeoGrid::GridViewTraits< typename HostGrid::LevelGridView, CoordFunction, Allocator, pitype > > LevelGridView
Definition: geometrygrid/gridfamily.hh:120
Dune::IntersectionIterator< const Grid, GeoGrid::IntersectionIterator< const Grid, typename HostGrid::LeafIntersectionIterator >, GeoGrid::Intersection< const Grid, typename HostGrid::LeafIntersection > > LeafIntersectionIterator
Definition: geometrygrid/gridfamily.hh:68
HostGrid::Traits::CollectiveCommunication CollectiveCommunication
Definition: geometrygrid/gridfamily.hh:112
GeoGrid::IdSet< const Grid, typename HostGrid::Traits::GlobalIdSet > GlobalIdSet
Definition: geometrygrid/gridfamily.hh:108
Intersection of a mesh entities of codimension 0 ("elements") with a "neighboring" element or with th...
Definition: albertagrid/dgfparser.hh:26
Definition: geometrygrid/indexsets.hh:25
Dune::GridView< GeoGrid::GridViewTraits< typename HostGrid::LeafGridView, CoordFunction, Allocator, pitype > > LeafGridView
Definition: geometrygrid/gridfamily.hh:118
Definition: geometrygrid/entity.hh:60
Wrapper class for geometries.
Definition: common/geometry.hh:65
Definition: geometrygrid/gridfamily.hh:51
Partition< All_Partition >::LeafIterator LeafIterator
Definition: geometrygrid/gridfamily.hh:100
Definition: geometrygrid/gridfamily.hh:49
Dune::Intersection< const Grid, GeoGrid::Intersection< const Grid, typename HostGrid::LeafIntersection > > LeafIntersection
Definition: geometrygrid/gridfamily.hh:63
Dune::Entity< codim, dimension, const Grid, GeoGrid::Entity > Entity
Definition: geometrygrid/gridfamily.hh:84
GeoGrid::IdSet< const Grid, typename HostGrid::Traits::LocalIdSet > LocalIdSet
Definition: geometrygrid/gridfamily.hh:110
Definition: idset.hh:18
Wrapper class for entities.
Definition: common/entity.hh:61
Dune::EntityIterator< 0, const Grid, GeoGrid::HierarchicIterator< const Grid > > HierarchicIterator
Definition: geometrygrid/gridfamily.hh:74
Wrapper and interface class for a static iterator (EntityPointer)
Dune::EntityIterator< codim, const Grid, LeafIteratorImp > LeafIterator
Definition: geometrygrid/gridfamily.hh:94
GeoGrid::IndexSet< const Grid, typename HostGrid::Traits::LeafIndexSet > LeafIndexSet
Definition: geometrygrid/gridfamily.hh:104
GeoGrid::IndexSet< const Grid, typename HostGrid::Traits::LevelIndexSet > LevelIndexSet
Definition: geometrygrid/gridfamily.hh:105
Dune::EntitySeed< const Grid, GeoGrid::EntitySeed< codim, const Grid > > EntitySeed
Definition: geometrygrid/gridfamily.hh:88
Partition< All_Partition >::LevelIterator LevelIterator
Definition: geometrygrid/gridfamily.hh:101
Definition: geometrygrid/gridfamily.hh:115
Dune::Intersection< const Grid, GeoGrid::Intersection< const Grid, typename HostGrid::LevelIntersection > > LevelIntersection
Definition: geometrygrid/gridfamily.hh:64
Wrapper class for pointers to entities.
Definition: common/entitypointer.hh:112
Definition: geometrygrid/gridfamily.hh:91
CF CoordFunction
Definition: geometrygrid/gridfamily.hh:40
grid wrapper replacing the geometriesGeometryGrid wraps another DUNE grid and replaces its geometry b...
Definition: geometrygrid/declaration.hh:10
Dune::EntityPointer< const Grid, Dune::DefaultEntityPointer< Entity > > EntityPointer
Definition: geometrygrid/gridfamily.hh:86
Definition: geometrygrid/gridfamily.hh:77
CF CoordFunction
Definition: geometrygrid/gridfamily.hh:56
HostGrid::template Codim< codim >::LocalGeometry LocalGeometry
Definition: geometrygrid/gridfamily.hh:81
Dune::IntersectionIterator< const Grid, GeoGrid::IntersectionIterator< const Grid, typename HostGrid::LevelIntersectionIterator >, GeoGrid::Intersection< const Grid, typename HostGrid::LevelIntersection > > LevelIntersectionIterator
Definition: geometrygrid/gridfamily.hh:71
Dune::Geometry< dimension-codim, dimensionworld, const Grid, Dune::GeoGrid::Geometry > Geometry
Definition: geometrygrid/gridfamily.hh:80
Definition: geometrygrid/gridfamily.hh:33
Grid view abstract base class.
Definition: common/gridview.hh:58
Definition: geometrygrid/intersection.hh:19
interface class for an iterator over grid entitiesAn entity iterator is an iterator over a subset of ...
Definition: entityiterator.hh:35
GeometryGrid< HG, CF, Allocator > Grid
Definition: geometrygrid/gridfamily.hh:53
Include standard header files.
Definition: agrid.hh:59
Mesh entities of codimension 0 ("elements") allow to visit all intersections with "neighboring" eleme...
Definition: common/grid.hh:360
GeoGrid::Iterator< typename HostGrid::LevelGridView, codim, pitype, const Grid > LevelIteratorImp
Definition: geometrygrid/gridfamily.hh:96
HG HostGrid
Definition: geometrygrid/gridfamily.hh:55
HG HostGrid
Definition: geometrygrid/gridfamily.hh:36
GeoGrid::Entity< codim, dimension, const Grid > EntityImpl
Definition: geometrygrid/gridfamily.hh:83
Different resources needed by all grid implementations.
Definition: geometrygrid/iterator.hh:29
Definition: coordfunction.hh:239
DUNE-conform implementation of the entityThis class merely changes the template parameters of the ent...
Definition: geometrygrid/entity.hh:49
HostGrid::ctype ctype
Definition: geometrygrid/gridfamily.hh:58
Dune::GeoGrid::Geometry< dimension-codim, dimensionworld, const Grid > GeometryImpl
Definition: geometrygrid/gridfamily.hh:79
Definition: geometrygrid/geometry.hh:86
GeoGrid::Iterator< typename HostGrid::LeafGridView, codim, pitype, const Grid > LeafIteratorImp
Definition: geometrygrid/gridfamily.hh:93
Dune::EntityIterator< codim, const Grid, LevelIteratorImp > LevelIterator
Definition: geometrygrid/gridfamily.hh:97
Store a reference to an entity with a minimal memory footprint.
Definition: common/entityseed.hh:23