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
GeometryGrid< HG, CF, Allocator > Grid
Definition: geometrygrid/gridfamily.hh:52
Dune::Geometry< dimension-codim, dimensionworld, const Grid, Dune::GeoGrid::Geometry > Geometry
Definition: geometrygrid/gridfamily.hh:79
Definition: iterator.hh:28
GeoGrid::IdSet< const Grid, typename HostGrid::Traits::LocalIdSet > LocalIdSet
Definition: geometrygrid/gridfamily.hh:107
GeoGrid::IndexSet< const Grid, typename HostGrid::Traits::LevelIndexSet > LevelIndexSet
Definition: geometrygrid/gridfamily.hh:102
GeoGrid::Entity< codim, dimension, const Grid > EntityImpl
Definition: geometrygrid/gridfamily.hh:82
Dune::EntityIterator< 0, const Grid, GeoGrid::HierarchicIterator< const Grid > > HierarchicIterator
Definition: geometrygrid/gridfamily.hh:73
Definition: geometrygrid/entity.hh:58
Definition: geometrygrid/geometry.hh:86
Definition: geometrygrid/gridfamily.hh:88
GeoGrid::Iterator< typename HostGrid::LeafGridView, codim, pitype, const Grid > LeafIteratorImp
Definition: geometrygrid/gridfamily.hh:90
HG HostGrid
Definition: geometrygrid/gridfamily.hh:35
Definition: coordfunction.hh:276
Partition< All_Partition >::LeafIterator LeafIterator
Definition: geometrygrid/gridfamily.hh:97
Definition: idset.hh:18
Definition: geometrygrid/gridfamily.hh:32
Mesh entities of codimension 0 ("elements") allow to visit all intersections with "neighboring" eleme...
Definition: common/grid.hh:345
Partition< All_Partition >::LevelIterator LevelIterator
Definition: geometrygrid/gridfamily.hh:98
grid wrapper replacing the geometriesGeometryGrid wraps another DUNE grid and replaces its geometry b...
Definition: declaration.hh:10
Definition: geometrygrid/gridfamily.hh:76
Wrapper class for entities.
Definition: common/entity.hh:63
Dune::Entity< codim, dimension, const Grid, GeoGrid::Entity > Entity
Definition: geometrygrid/gridfamily.hh:83
Dune::Intersection< const Grid, GeoGrid::Intersection< const Grid, typename HostGrid::LeafIntersection > > LeafIntersection
Definition: geometrygrid/gridfamily.hh:62
Definition: geometrygrid/intersection.hh:19
Dune::GridView< GeoGrid::GridViewTraits< typename HostGrid::LeafGridView, CoordFunction, Allocator > > LeafGridView
Definition: geometrygrid/gridfamily.hh:111
HG HostGrid
Definition: geometrygrid/gridfamily.hh:54
interface class for an iterator over grid entities
Definition: entityiterator.hh:29
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
Definition: geometrygrid/indexsets.hh:25
GeoGrid::IndexSet< const Grid, typename HostGrid::Traits::LeafIndexSet > LeafIndexSet
Definition: geometrygrid/gridfamily.hh:101
Wrapper class for geometries.
Definition: common/geometry.hh:66
Dune::EntitySeed< const Grid, GeoGrid::EntitySeed< codim, const Grid > > EntitySeed
Definition: geometrygrid/gridfamily.hh:85
Definition: geometrygrid/gridfamily.hh:50
Different resources needed by all grid implementations.
Store a reference to an entity with a minimal memory footprint.
Definition: common/entityseed.hh:23
Dune::IntersectionIterator< const Grid, GeoGrid::IntersectionIterator< const Grid, typename HostGrid::LevelIntersectionIterator >, GeoGrid::Intersection< const Grid, typename HostGrid::LevelIntersection > > LevelIntersectionIterator
Definition: geometrygrid/gridfamily.hh:70
Dune::EntityIterator< codim, const Grid, LevelIteratorImp > LevelIterator
Definition: geometrygrid/gridfamily.hh:94
CF CoordFunction
Definition: geometrygrid/gridfamily.hh:39
Intersection of a mesh entity of codimension 0 ("element") with a "neighboring" element or with the d...
Definition: albertagrid/dgfparser.hh:26
Definition: geometrygrid/gridfamily.hh:48
Grid view abstract base class.
Definition: common/gridview.hh:59
HostGrid::Traits::CollectiveCommunication CollectiveCommunication
Definition: geometrygrid/gridfamily.hh:109
Dune::GridView< GeoGrid::GridViewTraits< typename HostGrid::LevelGridView, CoordFunction, Allocator > > LevelGridView
Definition: geometrygrid/gridfamily.hh:112
Dune::EntityIterator< codim, const Grid, LeafIteratorImp > LeafIterator
Definition: geometrygrid/gridfamily.hh:91
Dune::Intersection< const Grid, GeoGrid::Intersection< const Grid, typename HostGrid::LevelIntersection > > LevelIntersection
Definition: geometrygrid/gridfamily.hh:63
Dune::IntersectionIterator< const Grid, GeoGrid::IntersectionIterator< const Grid, typename HostGrid::LeafIntersectionIterator >, GeoGrid::Intersection< const Grid, typename HostGrid::LeafIntersection > > LeafIntersectionIterator
Definition: geometrygrid/gridfamily.hh:67
GeoGrid::Iterator< typename HostGrid::LevelGridView, codim, pitype, const Grid > LevelIteratorImp
Definition: geometrygrid/gridfamily.hh:93
HostGrid::ctype ctype
Definition: geometrygrid/gridfamily.hh:57
DUNE-conform implementation of the entityThis class merely changes the template parameters of the ent...
Definition: geometrygrid/entity.hh:47
HostGrid::template Codim< codim >::LocalGeometry LocalGeometry
Definition: geometrygrid/gridfamily.hh:80
CF CoordFunction
Definition: geometrygrid/gridfamily.hh:55
Include standard header files.
Definition: agrid.hh:58