dune-grid  2.6-git
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 
18 
19 namespace Dune
20 {
21 
25  namespace GeoGrid
26  {
27 
28  // ExportParams
29  // ------------
30 
31  template< class HG, class CF >
33  {
34  static const bool isCoordFunction = isCoordFunctionInterface< typename CF::Interface >::value;
35  static_assert(isCoordFunction, "Invalid CoordFunction.");
36 
37  public:
38  typedef HG HostGrid;
39  typedef CF CoordFunction;
40  };
41 
42 
43 
44  // GridFamily
45  // ----------
46 
47  template< class HG, class CF, class Allocator >
48  struct GridFamily
49  {
50  struct Traits
51  {
53 
54  typedef HG HostGrid;
55  typedef CF CoordFunction;
56 
57  typedef typename HostGrid::ctype ctype;
58 
59  static const int dimension = HostGrid::dimension;
60  static const int dimensionworld = CoordFunction::dimRange;
61 
64 
71 
74 
75  template< int codim >
76  struct Codim
77  {
78  typedef Dune::GeoGrid::Geometry< dimension-codim, dimensionworld, const Grid > GeometryImpl;
79  typedef Dune::Geometry< dimension-codim, dimensionworld, const Grid, Dune::GeoGrid::Geometry > Geometry;
80  typedef typename HostGrid::template Codim< codim >::LocalGeometry LocalGeometry;
81 
84 
86 
87  template< PartitionIteratorType pitype >
88  struct Partition
89  {
92 
95  };
96 
99  };
100 
103 
108 
109  typedef typename HostGrid::Traits::CollectiveCommunication CollectiveCommunication;
110 
113  };
114  };
115 
116  } // namespace GeoGrid
117 
118 } // namespace Dune
119 
120 #endif // #ifndef DUNE_GEOGRID_GRIDFAMILY_HH
Include standard header files.
Definition: agrid.hh:58
Dune::Entity< codim, dimension, const Grid, GeoGrid::Entity > Entity
Definition: geometrygrid/gridfamily.hh:83
Dune::GeoGrid::Geometry< dimension-codim, dimensionworld, const Grid > GeometryImpl
Definition: geometrygrid/gridfamily.hh:78
GeoGrid::IdSet< const Grid, typename HostGrid::Traits::GlobalIdSet > GlobalIdSet
Definition: geometrygrid/gridfamily.hh:105
Dune::IntersectionIterator< const Grid, GeoGrid::IntersectionIterator< const Grid, typename HostGrid::LevelIntersectionIterator >, GeoGrid::Intersection< const Grid, typename HostGrid::LevelIntersection > > LevelIntersectionIterator
Definition: geometrygrid/gridfamily.hh:70
Intersection of a mesh entity of codimension 0 ("element") with a "neighboring" element or with the d...
Definition: albertagrid/dgfparser.hh:26
Grid view abstract base class.
Definition: common/gridview.hh:59
Definition: geometrygrid/entity.hh:58
HostGrid::Traits::CollectiveCommunication CollectiveCommunication
Definition: geometrygrid/gridfamily.hh:109
Definition: iterator.hh:28
Definition: geometrygrid/gridfamily.hh:76
grid wrapper replacing the geometriesGeometryGrid wraps another DUNE grid and replaces its geometry b...
Definition: declaration.hh:10
Definition: coordfunction.hh:276
Dune::Intersection< const Grid, GeoGrid::Intersection< const Grid, typename HostGrid::LeafIntersection > > LeafIntersection
Definition: geometrygrid/gridfamily.hh:62
Definition: idset.hh:18
Dune::IntersectionIterator< const Grid, GeoGrid::IntersectionIterator< const Grid, typename HostGrid::LeafIntersectionIterator >, GeoGrid::Intersection< const Grid, typename HostGrid::LeafIntersection > > LeafIntersectionIterator
Definition: geometrygrid/gridfamily.hh:67
Mesh entities of codimension 0 ("elements") allow to visit all intersections with "neighboring" eleme...
Definition: common/grid.hh:345
Definition: geometrygrid/geometry.hh:86
Wrapper class for entities.
Definition: common/entity.hh:63
Dune::EntityIterator< codim, const Grid, LevelIteratorImp > LevelIterator
Definition: geometrygrid/gridfamily.hh:94
Dune::Intersection< const Grid, GeoGrid::Intersection< const Grid, typename HostGrid::LevelIntersection > > LevelIntersection
Definition: geometrygrid/gridfamily.hh:63
GeoGrid::Iterator< typename HostGrid::LeafGridView, codim, pitype, const Grid > LeafIteratorImp
Definition: geometrygrid/gridfamily.hh:90
Definition: geometrygrid/intersection.hh:19
HostGrid::ctype ctype
Definition: geometrygrid/gridfamily.hh:57
HG HostGrid
Definition: geometrygrid/gridfamily.hh:35
Definition: geometrygrid/gridfamily.hh:32
interface class for an iterator over grid entities
Definition: entityiterator.hh:29
Partition< All_Partition >::LevelIterator LevelIterator
Definition: geometrygrid/gridfamily.hh:98
CF CoordFunction
Definition: geometrygrid/gridfamily.hh:55
GeoGrid::IndexSet< const Grid, typename HostGrid::Traits::LevelIndexSet > LevelIndexSet
Definition: geometrygrid/gridfamily.hh:102
DUNE-conform implementation of the entityThis class merely changes the template parameters of the ent...
Definition: geometrygrid/entity.hh:47
Wrapper class for geometries.
Definition: common/geometry.hh:66
Definition: geometrygrid/gridfamily.hh:50
GeometryGrid< HG, CF, Allocator > Grid
Definition: geometrygrid/gridfamily.hh:52
Store a reference to an entity with a minimal memory footprint.
Definition: common/entityseed.hh:23
GeoGrid::IndexSet< const Grid, typename HostGrid::Traits::LeafIndexSet > LeafIndexSet
Definition: geometrygrid/gridfamily.hh:101
GeoGrid::Iterator< typename HostGrid::LevelGridView, codim, pitype, const Grid > LevelIteratorImp
Definition: geometrygrid/gridfamily.hh:93
Dune::GridView< GeoGrid::GridViewTraits< typename HostGrid::LevelGridView, CoordFunction, Allocator > > LevelGridView
Definition: geometrygrid/gridfamily.hh:112
Definition: geometrygrid/gridfamily.hh:88
GeoGrid::Entity< codim, dimension, const Grid > EntityImpl
Definition: geometrygrid/gridfamily.hh:82
Definition: geometrygrid/gridfamily.hh:48
Dune::EntityIterator< 0, const Grid, GeoGrid::HierarchicIterator< const Grid > > HierarchicIterator
Definition: geometrygrid/gridfamily.hh:73
Dune::EntitySeed< const Grid, GeoGrid::EntitySeed< codim, const Grid > > EntitySeed
Definition: geometrygrid/gridfamily.hh:85
Dune::Geometry< dimension-codim, dimensionworld, const Grid, Dune::GeoGrid::Geometry > Geometry
Definition: geometrygrid/gridfamily.hh:79
Dune::EntityIterator< codim, const Grid, LeafIteratorImp > LeafIterator
Definition: geometrygrid/gridfamily.hh:91
Different resources needed by all grid implementations.
Partition< All_Partition >::LeafIterator LeafIterator
Definition: geometrygrid/gridfamily.hh:97
HostGrid::template Codim< codim >::LocalGeometry LocalGeometry
Definition: geometrygrid/gridfamily.hh:80
Dune::GridView< GeoGrid::GridViewTraits< typename HostGrid::LeafGridView, CoordFunction, Allocator > > LeafGridView
Definition: geometrygrid/gridfamily.hh:111
CF CoordFunction
Definition: geometrygrid/gridfamily.hh:39
Definition: geometrygrid/indexsets.hh:25
HG HostGrid
Definition: geometrygrid/gridfamily.hh:54
GeoGrid::IdSet< const Grid, typename HostGrid::Traits::LocalIdSet > LocalIdSet
Definition: geometrygrid/gridfamily.hh:107