dune-grid  2.9.0
albertagrid/gridfamily.hh
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (C) DUNE Project contributors, see file LICENSE.md in module root
2 // SPDX-License-Identifier: LicenseRef-GPL-2.0-only-with-DUNE-exception
3 // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
4 // vi: set et ts=4 sw=2 sts=2:
5 #ifndef DUNE_ALBERTAGRID_GRIDFAMILTY_HH
6 #define DUNE_ALBERTAGRID_GRIDFAMILTY_HH
7 
13 #include <dune/common/parallel/communication.hh>
14 
20 
24 
25 #if HAVE_ALBERTA
26 
27 namespace Dune
28 {
29 
30  // External Forward Declarations
31  // -----------------------------
32 
33  template< int dim, int dimworld >
34  class AlbertaGrid;
35 
36  template< int codim, int dim, class GridImp >
37  class AlbertaGridEntity;
38 
39  template< int codim, class GridImp >
41 
42  template< int codim, class Grid >
44 
45  template< int mydim, int cdim, class GridImp >
46  class AlbertaGridGeometry;
47 
48  template< int mydim, int cdim, class GridImp >
50 
51  template< int dim, int dimworld >
53 
54  template< class GridImp >
56 
57  template< class GridImp >
59 
60  template< class GridImp >
62 
63  template< int dim, int dimworld >
64  class AlbertaGridIdSet;
65 
66  template< int dim, int dimworld >
67  class AlbertaGridIndexSet;
68 
69  template< int codim, PartitionIteratorType pitype, class GridImp >
71 
72  template< int codim, PartitionIteratorType pitype, class GridImp >
74 
75 
76 
77 
78  // AlbertaGridFamily
79  // -----------------
80 
81  template <int dim, int dimworld>
83  {
85 
87 
88  static const int dimension = dim;
89  static const int dimensionworld = dimworld;
90 
93 
95  typedef unsigned int IdType;
96 
97  struct Traits
98  {
99  typedef GridImp Grid;
100 
109 
111 
114 
115  template< int cd >
116  struct Codim
117  {
118  typedef AlbertaGridGlobalGeometry< dim-cd, dimworld, const Grid > GeometryImpl;
119  typedef AlbertaGridGeometry< dim-cd, dim, const Grid > LocalGeometryImpl;
120  typedef Dune::Geometry< dim-cd, dimworld, const Grid, AlbertaGridGlobalGeometry > Geometry;
121  typedef Dune::Geometry< dim-cd, dim, const Grid, LocalGeometryReference > LocalGeometry;
122 
125 
127 
128  template <PartitionIteratorType pitype>
129  struct Partition
130  {
133  };
134 
137  };
138 
141 
147 
148  typedef Dune::Communication< No_Comm > Communication;
149 
153  [[deprecated("Use Communication instead!")]]
155  };
156  };
157 
158 }
159 
160 #endif // #if HAVE_ALBERTA
161 
162 #endif // #ifndef DUNE_ALBERTAGRID_GRIDFAMILTY_HH
Wrapper and interface classes for element geometries.
Include standard header files.
Definition: agrid.hh:60
ALBERTA REAL Real
Definition: misc.hh:48
[ provides Dune::Grid ]
Definition: agrid.hh:109
Intersection of a mesh entity of codimension 0 ("element") with a "neighboring" element or with the d...
Definition: common/intersection.hh:164
Definition: hierarchiciterator.hh:29
Definition: albertagrid/intersection.hh:105
Definition: albertagrid/intersectioniterator.hh:27
Definition: albertagrid/entity.hh:46
Definition: albertagrid/entityseed.hh:18
geometry implementation for AlbertaGrid
Definition: albertagrid/geometry.hh:108
Definition: albertagrid/geometry.hh:303
Definition: geometryreference.hh:139
Definition: albertagrid/gridfamily.hh:40
Definition: albertagrid/indexsets.hh:42
hierarchic index set of AlbertaGrid
Definition: albertagrid/indexsets.hh:534
Definition: albertagrid/indexsets.hh:335
Definition: leafiterator.hh:23
Definition: leveliterator.hh:23
Definition: albertagrid/gridfamily.hh:83
static const int dimension
Definition: albertagrid/gridfamily.hh:88
AlbertaGridIndexSet< dim, dimworld > LevelIndexSetImp
Definition: albertagrid/gridfamily.hh:91
unsigned int IdType
Definition: albertagrid/gridfamily.hh:95
static const int dimensionworld
Definition: albertagrid/gridfamily.hh:89
AlbertaGrid< dim, dimworld > GridImp
Definition: albertagrid/gridfamily.hh:84
AlbertaGridIdSet< dim, dimworld > IdSetImp
Definition: albertagrid/gridfamily.hh:94
AlbertaGridIndexSet< dim, dimworld > LeafIndexSetImp
Definition: albertagrid/gridfamily.hh:92
Alberta::Real ctype
Definition: albertagrid/gridfamily.hh:86
Definition: albertagrid/gridfamily.hh:98
GridImp Grid
Definition: albertagrid/gridfamily.hh:99
Dune::Intersection< const GridImp, AlbertaGridLeafIntersection< const GridImp > > LevelIntersection
Definition: albertagrid/gridfamily.hh:102
Dune::GridView< AlbertaLevelGridViewTraits< const GridImp > > LevelGridView
Definition: albertagrid/gridfamily.hh:139
AlbertaGridHierarchicIndexSet< dim, dimworld > HierarchicIndexSet
Definition: albertagrid/gridfamily.hh:144
IndexSet< GridImp, LeafIndexSetImp, int, std::array< GeometryType, 1 > > LeafIndexSet
Definition: albertagrid/gridfamily.hh:143
IdType LocalIdType
Definition: albertagrid/gridfamily.hh:113
Dune::IntersectionIterator< const GridImp, AlbertaGridLeafIntersectionIterator< const GridImp >, AlbertaGridLeafIntersection< const GridImp > > LevelIntersectionIterator
Definition: albertagrid/gridfamily.hh:108
IdSet< GridImp, IdSetImp, IdType > GlobalIdSet
Definition: albertagrid/gridfamily.hh:145
Dune::Intersection< const GridImp, AlbertaGridLeafIntersection< const GridImp > > LeafIntersection
Definition: albertagrid/gridfamily.hh:101
Dune::IntersectionIterator< const GridImp, AlbertaGridLeafIntersectionIterator< const GridImp >, AlbertaGridLeafIntersection< const GridImp > > LeafIntersectionIterator
Definition: albertagrid/gridfamily.hh:105
IdSet< GridImp, IdSetImp, IdType > LocalIdSet
Definition: albertagrid/gridfamily.hh:146
IndexSet< GridImp, LevelIndexSetImp, int, std::array< GeometryType, 1 > > LevelIndexSet
Definition: albertagrid/gridfamily.hh:142
Communication CollectiveCommunication
Definition: albertagrid/gridfamily.hh:154
Dune::Communication< No_Comm > Communication
Definition: albertagrid/gridfamily.hh:148
IdType GlobalIdType
Definition: albertagrid/gridfamily.hh:112
Dune::EntityIterator< 0, const GridImp, AlbertaGridHierarchicIterator< const GridImp > > HierarchicIterator
Definition: albertagrid/gridfamily.hh:110
Dune::GridView< AlbertaLeafGridViewTraits< const GridImp > > LeafGridView
Definition: albertagrid/gridfamily.hh:140
Definition: albertagrid/gridfamily.hh:117
AlbertaGridGeometry< dim-cd, dim, const Grid > LocalGeometryImpl
Definition: albertagrid/gridfamily.hh:119
Dune::Entity< cd, dim, const GridImp, AlbertaGridEntity > Entity
Definition: albertagrid/gridfamily.hh:124
Dune::Geometry< dim-cd, dimworld, const Grid, AlbertaGridGlobalGeometry > Geometry
Definition: albertagrid/gridfamily.hh:120
AlbertaGridEntity< cd, dim, const GridImp > EntityImpl
Definition: albertagrid/gridfamily.hh:123
Partition< All_Partition >::LeafIterator LeafIterator
Definition: albertagrid/gridfamily.hh:136
Dune::Geometry< dim-cd, dim, const Grid, LocalGeometryReference > LocalGeometry
Definition: albertagrid/gridfamily.hh:121
Dune::EntitySeed< const GridImp, AlbertaGridEntitySeed< cd, const GridImp > > EntitySeed
Definition: albertagrid/gridfamily.hh:126
Partition< All_Partition >::LevelIterator LevelIterator
Definition: albertagrid/gridfamily.hh:135
AlbertaGridGlobalGeometry< dim-cd, dimworld, const Grid > GeometryImpl
Definition: albertagrid/gridfamily.hh:118
Definition: albertagrid/gridfamily.hh:130
Dune::EntityIterator< cd, const GridImp, AlbertaGridLevelIterator< cd, pitype, const GridImp > > LevelIterator
Definition: albertagrid/gridfamily.hh:131
Dune::EntityIterator< cd, const GridImp, AlbertaGridLeafIterator< cd, pitype, const GridImp > > LeafIterator
Definition: albertagrid/gridfamily.hh:132
Wrapper class for entities.
Definition: common/entity.hh:66
interface class for an iterator over grid entities
Definition: entityiterator.hh:32
Store a reference to an entity with a minimal memory footprint.
Definition: common/entityseed.hh:26
Wrapper class for geometries.
Definition: common/geometry.hh:71
Mesh entities of codimension 0 ("elements") allow to visit all intersections with "neighboring" eleme...
Definition: common/intersectioniterator.hh:83
Index Set Interface base class.
Definition: indexidset.hh:78
Id Set Interface.
Definition: indexidset.hh:452
Grid view abstract base class.
Definition: common/gridview.hh:66
Wrapper and interface classes for element geometries.