dune-grid 2.9.0
geometrygrid/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_GEOGRID_GRIDFAMILY_HH
6#define DUNE_GEOGRID_GRIDFAMILY_HH
7
20
21namespace Dune
22{
23
27 namespace GeoGrid
28 {
29
30 // ExportParams
31 // ------------
32
33 template< class HG, class CF >
35 {
36 static const bool isCoordFunction = isCoordFunctionInterface< typename CF::Interface >::value;
37 static_assert(isCoordFunction, "Invalid CoordFunction.");
38
39 public:
40 typedef HG HostGrid;
41 typedef CF CoordFunction;
42 };
43
44
45
46 // GridFamily
47 // ----------
48
49 template< class HG, class CF, class Allocator >
51 {
52 struct Traits
53 {
55
56 typedef HG HostGrid;
57 typedef CF CoordFunction;
58
59 typedef typename HostGrid::ctype ctype;
60
61 static const int dimension = HostGrid::dimension;
62 static const int dimensionworld = CoordFunction::dimRange;
63
66
73
76
77 template< int codim >
78 struct Codim
79 {
82 typedef typename HostGrid::template Codim< codim >::LocalGeometry LocalGeometry;
83
86
88
89 template< PartitionIteratorType pitype >
90 struct Partition
91 {
94
97 };
98
101 };
102
105
110
111 typedef typename HostGrid::Traits::Communication Communication;
112
116 [[deprecated("Use Communication instead!")]]
118
121 };
122 };
123
124 } // namespace GeoGrid
125
126} // namespace Dune
127
128#endif // #ifndef DUNE_GEOGRID_GRIDFAMILY_HH
Include standard header files.
Definition: agrid.hh:60
Intersection of a mesh entity of codimension 0 ("element") with a "neighboring" element or with the d...
Definition: common/intersection.hh:164
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
Grid view abstract base class.
Definition: common/gridview.hh:66
Definition: coordfunction.hh:282
grid wrapper replacing the geometries
Definition: geometrygrid/grid.hh:86
DUNE-conform implementation of the entity.
Definition: geometrygrid/entity.hh:694
Definition: geometrygrid/intersectioniterator.hh:21
Definition: geometrygrid/geometry.hh:89
Definition: geometrygrid/gridfamily.hh:35
HG HostGrid
Definition: geometrygrid/gridfamily.hh:40
CF CoordFunction
Definition: geometrygrid/gridfamily.hh:41
Definition: geometrygrid/gridfamily.hh:51
Definition: geometrygrid/gridfamily.hh:53
GeoGrid::IndexSet< const Grid, typename HostGrid::Traits::LevelIndexSet > LevelIndexSet
Definition: geometrygrid/gridfamily.hh:104
Dune::Intersection< const Grid, GeoGrid::Intersection< const Grid, typename HostGrid::LeafIntersection > > LeafIntersection
Definition: geometrygrid/gridfamily.hh:64
Dune::EntityIterator< 0, const Grid, GeoGrid::HierarchicIterator< const Grid > > HierarchicIterator
Definition: geometrygrid/gridfamily.hh:75
HostGrid::Traits::Communication Communication
Definition: geometrygrid/gridfamily.hh:111
Dune::GridView< GeoGrid::GridViewTraits< typename HostGrid::LevelGridView, CoordFunction, Allocator > > LevelGridView
Definition: geometrygrid/gridfamily.hh:120
GeoGrid::IdSet< const Grid, typename HostGrid::Traits::GlobalIdSet > GlobalIdSet
Definition: geometrygrid/gridfamily.hh:107
Dune::GridView< GeoGrid::GridViewTraits< typename HostGrid::LeafGridView, CoordFunction, Allocator > > LeafGridView
Definition: geometrygrid/gridfamily.hh:119
GeoGrid::IndexSet< const Grid, typename HostGrid::Traits::LeafIndexSet > LeafIndexSet
Definition: geometrygrid/gridfamily.hh:103
Dune::IntersectionIterator< const Grid, GeoGrid::IntersectionIterator< const Grid, typename HostGrid::LevelIntersectionIterator >, GeoGrid::Intersection< const Grid, typename HostGrid::LevelIntersection > > LevelIntersectionIterator
Definition: geometrygrid/gridfamily.hh:72
Dune::IntersectionIterator< const Grid, GeoGrid::IntersectionIterator< const Grid, typename HostGrid::LeafIntersectionIterator >, GeoGrid::Intersection< const Grid, typename HostGrid::LeafIntersection > > LeafIntersectionIterator
Definition: geometrygrid/gridfamily.hh:69
CF CoordFunction
Definition: geometrygrid/gridfamily.hh:57
static const int dimension
Definition: geometrygrid/gridfamily.hh:61
Dune::Intersection< const Grid, GeoGrid::Intersection< const Grid, typename HostGrid::LevelIntersection > > LevelIntersection
Definition: geometrygrid/gridfamily.hh:65
static const int dimensionworld
Definition: geometrygrid/gridfamily.hh:62
Communication CollectiveCommunication
Definition: geometrygrid/gridfamily.hh:117
HG HostGrid
Definition: geometrygrid/gridfamily.hh:56
GeoGrid::IdSet< const Grid, typename HostGrid::Traits::LocalIdSet > LocalIdSet
Definition: geometrygrid/gridfamily.hh:109
GeometryGrid< HG, CF, Allocator > Grid
Definition: geometrygrid/gridfamily.hh:54
HostGrid::ctype ctype
Definition: geometrygrid/gridfamily.hh:59
Definition: geometrygrid/gridfamily.hh:79
Dune::Entity< codim, dimension, const Grid, GeoGrid::Entity > Entity
Definition: geometrygrid/gridfamily.hh:85
Dune::Geometry< dimension-codim, dimensionworld, const Grid, Dune::GeoGrid::Geometry > Geometry
Definition: geometrygrid/gridfamily.hh:81
Partition< All_Partition >::LevelIterator LevelIterator
Definition: geometrygrid/gridfamily.hh:100
Dune::EntitySeed< const Grid, GeoGrid::EntitySeed< codim, const Grid > > EntitySeed
Definition: geometrygrid/gridfamily.hh:87
Partition< All_Partition >::LeafIterator LeafIterator
Definition: geometrygrid/gridfamily.hh:99
GeoGrid::Entity< codim, dimension, const Grid > EntityImpl
Definition: geometrygrid/gridfamily.hh:84
Dune::GeoGrid::Geometry< dimension-codim, dimensionworld, const Grid > GeometryImpl
Definition: geometrygrid/gridfamily.hh:80
HostGrid::template Codim< codim >::LocalGeometry LocalGeometry
Definition: geometrygrid/gridfamily.hh:82
Definition: geometrygrid/gridfamily.hh:91
GeoGrid::Iterator< typename HostGrid::LeafGridView, codim, pitype, const Grid > LeafIteratorImp
Definition: geometrygrid/gridfamily.hh:92
Dune::EntityIterator< codim, const Grid, LevelIteratorImp > LevelIterator
Definition: geometrygrid/gridfamily.hh:96
Dune::EntityIterator< codim, const Grid, LeafIteratorImp > LeafIterator
Definition: geometrygrid/gridfamily.hh:93
GeoGrid::Iterator< typename HostGrid::LevelGridView, codim, pitype, const Grid > LevelIteratorImp
Definition: geometrygrid/gridfamily.hh:95
Definition: idset.hh:22
Definition: geometrygrid/indexsets.hh:29
Definition: geometrygrid/intersection.hh:22
Definition: iterator.hh:30
Different resources needed by all grid implementations.