dune-grid
2.3.1
|
[ provides Dune::Grid ] More...
#include <dune/grid/yaspgrid.hh>
Classes | |
struct | Intersection |
class | MessageBuffer |
struct | mpifriendly_ygrid |
struct | YGridLevel |
A single grid level within a YaspGrid. More... |
Public Types | |
enum | { tag = 17 } |
typedef yaspgrid_ctype | ctype |
Type used for coordinates. | |
typedef FieldVector< int, dim > | iTupel |
define types used for arguments | |
typedef FieldVector< ctype, dim > | fTupel |
typedef ReservedVector < YGridLevel, 32 > ::const_iterator | YGridLevelIterator |
Iterator over the grid levels. | |
typedef bigunsignedint< dim *yaspgrid_dim_bits+yaspgrid_level_bits+yaspgrid_codim_bits > | PersistentIndexType |
typedef YaspGridFamily< dim > | GridFamily |
the GridFamily of this grid | |
typedef YaspGridFamily< dim > ::Traits | Traits |
typedef YaspIndexSet< YaspGrid < dim >, false > | LevelIndexSetType |
typedef YaspIndexSet< YaspGrid < dim >, true > | LeafIndexSetType |
typedef YaspGlobalIdSet < YaspGrid< dim > > | GlobalIdSetType |
typedef SubYGrid< dim, ctype > ::TransformingSubIterator | TSI |
shorthand for some data types | |
typedef std::deque < Intersection > ::const_iterator | ISIT |
Exported constants | |
enum | { dimension = dim } |
A constant that exports the template parameter dim. More... | |
enum | { dimensionworld = dimworld } |
A constant that exports the template parameter dimworld. More... | |
Exported types | |
typedef Partition < All_Partition > ::LevelGridView | LevelGridView |
View types for All_Partition. | |
typedef Partition < All_Partition > ::LeafGridView | LeafGridView |
typedef GridFamily::Traits::LeafIntersection | LeafIntersection |
A type that is a model of Dune::Intersection, an intersections of two codimension 1 of two codimension 0 entities in the leaf view. | |
typedef GridFamily::Traits::LevelIntersection | LevelIntersection |
A type that is a model of Dune::Intersection, an intersections of two codimension 1 of two codimension 0 entities in a level view. | |
typedef GridFamily::Traits::LeafIntersectionIterator | LeafIntersectionIterator |
A type that is a model of Dune::IntersectionIterator which is an iterator that allows to examine, but not to modify, the intersections of codimension 1 of an leaf element (entity of codimension 0) with other leaf elements. | |
typedef GridFamily::Traits::LevelIntersectionIterator | LevelIntersectionIterator |
A type that is a model of Dune::IntersectionIterator which is an iterator that allows to examine, but not to modify, the intersections of codimension 1 of an element (entity of codimension 0) with other elements on the same level. | |
typedef GridFamily::Traits::HierarchicIterator | HierarchicIterator |
A type that is a model of Dune::HierarchicIterator A type of iterator that allows to examine, but not to modify, entities of codimension 0 that result from refinement of an entity of codimension 0. | |
typedef GridFamily::Traits::LevelIndexSet | LevelIndexSet |
A type that is a model of Dune::IndexSet which provides a consecutive, but non persistent, numbering for entities on a grid level. | |
typedef GridFamily::Traits::LeafIndexSet | LeafIndexSet |
A type that is a model of Dune::IndexSet which provides a consecutive, but non persistent, numbering for entities in the leaf grid. | |
typedef GridFamily::Traits::GlobalIdSet | GlobalIdSet |
A type that is a model of Dune::IdSet which provides a unique and persistent numbering for all entities in the grid. The numbering is unique over all processes over which the grid is partitioned. The numbering is not necessarily consecutive. | |
typedef GridFamily::Traits::LocalIdSet | LocalIdSet |
A type that is a model of Dune::IdSet which provides a unique and persistent numbering for all entities in the grid. The numbering is only unique in a single process and it is not necessarily consecutive. | |
typedef GridFamily::Traits::CollectiveCommunication | CollectiveCommunication |
A type that is a model of Dune::CollectiveCommunication. It provides a portable way for collective communication on the set of processes used by the grid. |
Public Member Functions | |
const Torus< dim > & | torus () const |
return reference to torus | |
YGridLevelIterator | begin () const |
return iterator pointing to coarsest level | |
YGridLevelIterator | begin (int i) const |
return iterator pointing to given level | |
YGridLevelIterator | end () const |
return iterator pointing to one past the finest level | |
void | MultiYGridSetup (fTupel L, iTupel s, std::bitset< dim > periodic, int overlap, const YLoadBalance< dim > *lb=defaultLoadbalancer()) |
The constructor of the old MultiYGrid class. | |
void | MultiYGridSetup (fTupel L, Dune::array< int, dim > s, std::bitset< dim > periodic, int overlap, const YLoadBalance< dim > *lb=defaultLoadbalancer()) |
The constructor of the old MultiYGrid class. | |
YaspGrid (Dune::MPIHelper::MPICommunicator comm, Dune::FieldVector< ctype, dim > L, Dune::FieldVector< int, dim > s, Dune::FieldVector< bool, dim > periodic, int overlap, const YLoadBalance< dim > *lb=defaultLoadbalancer()) | |
YaspGrid (Dune::FieldVector< ctype, dim > L, Dune::FieldVector< int, dim > s, Dune::FieldVector< bool, dim > periodic, int overlap, const YLoadBalance< dim > *lb=defaultLoadbalancer()) | |
YaspGrid (Dune::MPIHelper::MPICommunicator comm, Dune::FieldVector< ctype, dim > L, Dune::array< int, dim > s, std::bitset< dim > periodic, int overlap, const YLoadBalance< dim > *lb=defaultLoadbalancer()) | |
YaspGrid (Dune::FieldVector< ctype, dim > L, Dune::array< int, dim > s, std::bitset< dim > periodic, int overlap, const YLoadBalance< dim > *lb=defaultLoadbalancer()) | |
YaspGrid (Dune::FieldVector< ctype, dim > L, Dune::array< int, dim > elements) | |
int | maxLevel () const |
void | globalRefine (int refCount) |
refine the grid refCount times. What about overlap? | |
void | refineOptions (bool keepPhysicalOverlap) |
set options for refinement | |
bool | mark (int refCount, const typename Traits::template Codim< 0 >::Entity &e) |
Marks an entity to be refined/coarsened in a subsequent adapt. | |
int | getMark (const typename Traits::template Codim< 0 >::Entity &e) const |
returns adaptation mark for given entity | |
bool | adapt () |
map adapt to global refine | |
bool | preAdapt () |
returns true, if the grid will be coarsened | |
void | postAdapt () |
clean up some markers | |
template<int cd, PartitionIteratorType pitype> | |
Traits::template Codim< cd > ::template Partition< pitype > ::LevelIterator | lbegin (int level) const |
one past the end on this level | |
template<int cd, PartitionIteratorType pitype> | |
Traits::template Codim< cd > ::template Partition< pitype > ::LevelIterator | lend (int level) const |
Iterator to one past the last entity of given codim on level for partition type. | |
template<int cd> | |
Traits::template Codim< cd > ::template Partition < All_Partition > ::LevelIterator | lbegin (int level) const |
version without second template parameter for convenience | |
template<int cd> | |
Traits::template Codim< cd > ::template Partition < All_Partition > ::LevelIterator | lend (int level) const |
version without second template parameter for convenience | |
template<int cd, PartitionIteratorType pitype> | |
Traits::template Codim< cd > ::template Partition< pitype > ::LeafIterator | leafbegin () const |
return LeafIterator which points to the first entity in maxLevel | |
template<int cd, PartitionIteratorType pitype> | |
Traits::template Codim< cd > ::template Partition< pitype > ::LeafIterator | leafend () const |
return LeafIterator which points behind the last entity in maxLevel | |
template<int cd> | |
Traits::template Codim< cd > ::template Partition < All_Partition > ::LeafIterator | leafbegin () const |
return LeafIterator which points to the first entity in maxLevel | |
template<int cd> | |
Traits::template Codim< cd > ::template Partition < All_Partition > ::LeafIterator | leafend () const |
return LeafIterator which points behind the last entity in maxLevel | |
template<typename Seed > | |
Traits::template Codim < Seed::codimension > ::EntityPointer | entityPointer (const Seed &seed) const |
int | overlapSize (int level, int codim) const |
return size (= distance in graph) of overlap region | |
int | overlapSize (int codim) const |
return size (= distance in graph) of overlap region | |
int | ghostSize (int level, int codim) const |
return size (= distance in graph) of ghost region | |
int | ghostSize (int codim) const |
return size (= distance in graph) of ghost region | |
int | size (int level, int codim) const |
number of entities per level and codim in this process | |
int | size (int codim) const |
number of leaf entities per codim in this process | |
int | size (int level, GeometryType type) const |
number of entities per level and geometry type in this process | |
int | size (GeometryType type) const |
number of leaf entities per geometry type in this process | |
size_t | numBoundarySegments () const |
returns the number of boundary segments within the macro grid | |
template<class DataHandleImp , class DataType > | |
void | communicate (CommDataHandleIF< DataHandleImp, DataType > &data, InterfaceType iftype, CommunicationDirection dir, int level) const |
template<class DataHandleImp , class DataType > | |
void | communicate (CommDataHandleIF< DataHandleImp, DataType > &data, InterfaceType iftype, CommunicationDirection dir) const |
template<class DataHandle , int codim> | |
void | communicateCodim (DataHandle &data, InterfaceType iftype, CommunicationDirection dir, int level) const |
const Traits::GlobalIdSet & | globalIdSet () const |
return const reference to the grids global id set | |
const Traits::LocalIdSet & | localIdSet () const |
return const reference to the grids local id set | |
const Traits::LevelIndexSet & | levelIndexSet (int level) const |
return const reference to the grids level index set for level level | |
const Traits::LeafIndexSet & | leafIndexSet () const |
return const reference to the grids leaf index set | |
const CollectiveCommunication < MPI_Comm > & | comm () const |
return a collective communication object | |
Traits::template Partition < pitype >::LevelGridView | levelView (int level) const |
View for a grid level. | |
Traits::template Partition < All_Partition > ::LevelGridView | levelView (int level) const |
View for a grid level for All_Partition. | |
Traits::template Partition < pitype >::LeafGridView | leafView () const |
View for the leaf grid. | |
Traits::template Partition < All_Partition > ::LeafGridView | leafView () const |
View for the leaf grid for All_Partition. | |
Traits::template Partition < pitype >::LevelGridView | levelGridView (int level) const |
View for a grid level. | |
Traits::template Partition < All_Partition > ::LevelGridView | levelGridView (int level) const |
View for a grid level for All_Partition. | |
Traits::template Partition < pitype >::LeafGridView | leafGridView () const |
View for the leaf grid. | |
Traits::template Partition < All_Partition > ::LeafGridView | leafGridView () const |
View for the leaf grid for All_Partition. | |
void | communicate (CommDataHandleIF< DataHandleImp, DataTypeImp > &data, InterfaceType iftype, CommunicationDirection dir, int level) const |
void | communicate (CommDataHandleIF< DataHandleImp, DataTypeImp > &data, InterfaceType iftype, CommunicationDirection dir) const |
bool | loadBalance () |
default implementation of load balance does nothing and returns false | |
bool | loadBalance (DataHandle &data) |
default implementation of load balance does nothing and returns false | |
template<class EntitySeed > | |
Codim< EntitySeed::codimension > ::EntityPointer | entityPointer (const EntitySeed &seed) const |
obtain EntityPointer from EntitySeed. | |
Adaptivity and grid refinement | |
bool | mark (int refCount, const typename Codim< 0 >::Entity &e) |
Marks an entity to be refined/coarsened in a subsequent adapt. | |
int | getMark (const typename Codim< 0 >::Entity &e) const |
returns adaptation mark for given entity |
Static Public Member Functions | |
static const YLoadBalance< dim > * | defaultLoadbalancer () |
Protected Types | |
typedef const YaspGrid< dim > | GridImp |
Protected Member Functions | |
YGridLevel | makelevel (int level, fTupel L, iTupel s, std::bitset< dim > periodic, iTupel o_interior, iTupel s_interior, int overlap) |
Make a new YGridLevel structure. | |
void | intersections (const SubYGrid< dim, ctype > &sendgrid, const SubYGrid< dim, ctype > &recvgrid, const iTupel &size, std::deque< Intersection > &sendlist, std::deque< Intersection > &recvlist) |
Construct list of intersections with neighboring processors. | |
void | init () |
void | boundarysegmentssize () |
GridImp & | asImp () |
Barton-Nackman trick. | |
const GridImp & | asImp () const |
Barton-Nackman trick. |
Static Protected Member Functions | |
static ReturnImplementationType < InterfaceType > ::ImplementationType & | getRealImplementation (InterfaceType &i) |
return real implementation of interface class |
[ provides Dune::Grid ]
Provides a distributed structured cube mesh.
YaspGrid stands for yet another structured parallel grid. It implements the dune grid interface for structured grids with codim 0 and dim, with arbitrary overlap (including zero), periodic boundaries and fast implementation allowing on-the-fly computations.
dim | The dimension of the grid and its surrounding world |
|
inherited |
A type that is a model of Dune::CollectiveCommunication. It provides a portable way for collective communication on the set of processes used by the grid.
typedef yaspgrid_ctype Dune::YaspGrid< dim >::ctype |
Type used for coordinates.
typedef FieldVector<ctype, dim> Dune::YaspGrid< dim >::fTupel |
|
inherited |
A type that is a model of Dune::IdSet which provides a unique and persistent numbering for all entities in the grid. The numbering is unique over all processes over which the grid is partitioned. The numbering is not necessarily consecutive.
typedef YaspGlobalIdSet<YaspGrid<dim> > Dune::YaspGrid< dim >::GlobalIdSetType |
typedef YaspGridFamily<dim> Dune::YaspGrid< dim >::GridFamily |
the GridFamily of this grid
|
protected |
|
inherited |
A type that is a model of Dune::HierarchicIterator A type of iterator that allows to examine, but not to modify, entities of codimension 0 that result from refinement of an entity of codimension 0.
typedef std::deque<Intersection>::const_iterator Dune::YaspGrid< dim >::ISIT |
typedef FieldVector<int, dim> Dune::YaspGrid< dim >::iTupel |
define types used for arguments
|
inherited |
|
inherited |
A type that is a model of Dune::IndexSet which provides a consecutive, but non persistent, numbering for entities in the leaf grid.
typedef YaspIndexSet<YaspGrid<dim>, true > Dune::YaspGrid< dim >::LeafIndexSetType |
|
inherited |
A type that is a model of Dune::Intersection, an intersections of two codimension 1 of two codimension 0 entities in the leaf view.
|
inherited |
A type that is a model of Dune::IntersectionIterator which is an iterator that allows to examine, but not to modify, the intersections of codimension 1 of an leaf element (entity of codimension 0) with other leaf elements.
|
inherited |
View types for All_Partition.
|
inherited |
A type that is a model of Dune::IndexSet which provides a consecutive, but non persistent, numbering for entities on a grid level.
typedef YaspIndexSet<YaspGrid<dim>, false > Dune::YaspGrid< dim >::LevelIndexSetType |
|
inherited |
A type that is a model of Dune::Intersection, an intersections of two codimension 1 of two codimension 0 entities in a level view.
|
inherited |
A type that is a model of Dune::IntersectionIterator which is an iterator that allows to examine, but not to modify, the intersections of codimension 1 of an element (entity of codimension 0) with other elements on the same level.
|
inherited |
A type that is a model of Dune::IdSet which provides a unique and persistent numbering for all entities in the grid. The numbering is only unique in a single process and it is not necessarily consecutive.
typedef bigunsignedint<dim*yaspgrid_dim_bits+yaspgrid_level_bits+yaspgrid_codim_bits> Dune::YaspGrid< dim >::PersistentIndexType |
typedef YaspGridFamily<dim>::Traits Dune::YaspGrid< dim >::Traits |
typedef SubYGrid<dim,ctype>::TransformingSubIterator Dune::YaspGrid< dim >::TSI |
shorthand for some data types
typedef ReservedVector<YGridLevel,32>::const_iterator Dune::YaspGrid< dim >::YGridLevelIterator |
Iterator over the grid levels.
|
inherited |
|
inherited |
|
inline |
Constructor
comm | MPI communicator where this mesh is distributed to |
L | extension of the domain |
s | number of cells on coarse mesh in each direction |
periodic | tells if direction is periodic or not |
overlap | size of overlap on coarsest grid (same in all directions) |
lb | pointer to an overloaded YLoadBalance instance |
References Dune::YaspGrid< dim >::init(), and Dune::YaspGrid< dim >::MultiYGridSetup().
|
inline |
Constructor for a sequential YaspGrid
Sequential here means that the whole grid is living on one process even if your program is running in parallel. @see YaspGrid(Dune::MPIHelper::MPICommunicator, Dune::FieldVector<ctype, dim>, Dune::FieldVector<int, dim>, Dune::FieldVector<bool, dim>, int) for constructing one parallel grid decomposed between the processors. @param L extension of the domain @param s number of cells on coarse mesh in each direction @param periodic tells if direction is periodic or not @param overlap size of overlap on coarsest grid (same in all directions) @param lb pointer to an overloaded YLoadBalance instance \xrefitem deprecated 102.
References Dune::YaspGrid< dim >::init(), and Dune::YaspGrid< dim >::MultiYGridSetup().
|
inline |
Constructor
comm | MPI communicator where this mesh is distributed to |
L | extension of the domain |
s | number of cells on coarse mesh in each direction |
periodic | tells if direction is periodic or not |
overlap | size of overlap on coarsest grid (same in all directions) |
lb | pointer to an overloaded YLoadBalance instance |
References Dune::YaspGrid< dim >::init(), and Dune::YaspGrid< dim >::MultiYGridSetup().
|
inline |
Constructor for a sequential YaspGrid
Sequential here means that the whole grid is living on one process even if your program is running in parallel. @see YaspGrid(Dune::MPIHelper::MPICommunicator, Dune::FieldVector<ctype, dim>, Dune::FieldVector<int, dim>, Dune::FieldVector<bool, dim>, int) for constructing one parallel grid decomposed between the processors. @param L extension of the domain @param s number of cells on coarse mesh in each direction @param periodic tells if direction is periodic or not @param overlap size of overlap on coarsest grid (same in all directions) @param lb pointer to an overloaded YLoadBalance instance
References Dune::YaspGrid< dim >::init(), and Dune::YaspGrid< dim >::MultiYGridSetup().
|
inline |
Constructor for a sequential YaspGrid without periodicity
Sequential here means that the whole grid is living on one process even if your program is running in parallel. @see YaspGrid(Dune::MPIHelper::MPICommunicator, Dune::FieldVector<ctype, dim>, Dune::FieldVector<int, dim>, Dune::FieldVector<bool, dim>, int) for constructing one parallel grid decomposed between the processors. @param L extension of the domain (lower left is always (0,...,0) @param elements number of cells on coarse mesh in each direction
References Dune::YaspGrid< dim >::init(), and Dune::YaspGrid< dim >::makelevel().
|
inline |
map adapt to global refine
Reimplemented from Dune::GridDefaultImplementation< dim, dim, yaspgrid_ctype, YaspGridFamily< dim > >.
References Dune::YaspGrid< dim >::globalRefine().
|
inlineprotectedinherited |
Barton-Nackman trick.
Referenced by Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::adapt(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::comm(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::communicate(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::entityPointer(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::getMark(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::ghostSize(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::globalIdSet(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::globalRefine(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::lbegin(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::leafbegin(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::leafend(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::leafGridView(), Dune::GridDefaultImplementation< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::leafGridView(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::leafIndexSet(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::leafView(), Dune::GridDefaultImplementation< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::leafView(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::lend(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::levelGridView(), Dune::GridDefaultImplementation< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::levelGridView(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::levelIndexSet(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::levelView(), Dune::GridDefaultImplementation< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::levelView(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::loadBalance(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::localIdSet(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::mark(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::maxLevel(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::numBoundarySegments(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::overlapSize(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::postAdapt(), Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::preAdapt(), and Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::size().
|
inlineprotectedinherited |
Barton-Nackman trick.
|
inline |
return iterator pointing to coarsest level
Referenced by Dune::YaspGrid< dim >::boundarysegmentssize(), Dune::YaspGrid< dim >::communicateCodim(), Dune::YaspGrid< dim >::entityPointer(), and Dune::YaspGrid< dim >::overlapSize().
|
inline |
return iterator pointing to given level
References Dune::YaspGrid< dim >::maxLevel().
|
inlineprotected |
References Dune::YaspGrid< dim >::begin(), and Dune::YaspGrid< dim >::size().
Referenced by Dune::YaspGrid< dim >::init().
|
inline |
return a collective communication object
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Referenced by Dune::YaspGrid< dim >::communicate(), and Dune::YaspGrid< dim >::preAdapt().
|
inline |
The new communication interface
communicate objects for all codims on a given level
References Dune::YaspGrid< dim >::comm().
|
inline |
The new communication interface
communicate objects for all codims on the leaf grid
References Dune::YaspGrid< dim >::comm(), and Dune::YaspGrid< dim >::maxLevel().
|
inlineinherited |
dummy communicate, doing nothing
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inlineinherited |
dummy communicate, doing nothing
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
The new communication interface
communicate objects for one codim
References Dune::All_All_Interface, Dune::BackwardCommunication, Dune::YaspGrid< dim >::begin(), Dune::InteriorBorder_All_Interface, Dune::InteriorBorder_InteriorBorder_Interface, Dune::Overlap_All_Interface, Dune::Overlap_OverlapFront_Interface, and Dune::YaspGrid< dim >::torus().
|
inlinestatic |
|
inline |
return iterator pointing to one past the finest level
References Dune::YaspGrid< dim >::maxLevel().
|
inlineinherited |
obtain EntityPointer from EntitySeed.
Reimplemented in Dune::ALU3dGrid< elType, Comm >, Dune::ALU3dGrid< tetra >, Dune::ALU3dGrid< hexa >, Dune::ALU2dGrid< dim, dimworld, eltype >, Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >, Dune::ALU2dGrid< 2, dimw, ALU2DSPACE quadrilateral >, and Dune::AlbertaGrid< dim, dimworld >.
Referenced by Dune::Grid< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::entityPointer().
|
inline |
|
inlineinherited |
|
inline |
returns adaptation mark for given entity
[in] | e | Entity for which adaptation mark should be determined |
Reimplemented from Dune::GridDefaultImplementation< dim, dim, yaspgrid_ctype, YaspGridFamily< dim > >.
References Dune::YaspGrid< dim >::maxLevel().
|
inlinestaticprotectedinherited |
return real implementation of interface class
Referenced by Dune::YaspGrid< dim >::entityPointer().
|
inline |
return size (= distance in graph) of ghost region
Reimplemented from Dune::GridDefaultImplementation< dim, dim, yaspgrid_ctype, YaspGridFamily< dim > >.
|
inline |
return size (= distance in graph) of ghost region
Reimplemented from Dune::GridDefaultImplementation< dim, dim, yaspgrid_ctype, YaspGridFamily< dim > >.
|
inline |
return const reference to the grids global id set
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
refine the grid refCount times. What about overlap?
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
References Dune::YaspGrid< dim >::YGridLevel::cell_global, Dune::YaspGrid< dim >::YGridLevel::cell_interior, Dune::YaspGrid< dim >::makelevel(), Dune::YaspGrid< dim >::maxLevel(), and Dune::YaspGrid< dim >::YGridLevel::overlap.
Referenced by Dune::YaspGrid< dim >::adapt().
|
inlineprotected |
References Dune::YaspGrid< dim >::boundarysegmentssize().
Referenced by Dune::YaspGrid< dim >::YaspGrid().
|
inlineprotected |
Construct list of intersections with neighboring processors.
recvgrid | the grid stored in this processor |
sendgrid | the subgrid to be sent to neighboring processors |
size | needed to shift local grid in periodic case |
References Dune::YaspGrid< dim >::Intersection::distance, Dune::YaspGrid< dim >::Intersection::grid, Dune::YaspGrid< dim >::mpifriendly_ygrid::h, Dune::YaspGrid< dim >::mpifriendly_ygrid::origin, Dune::YaspGrid< dim >::mpifriendly_ygrid::r, Dune::YaspGrid< dim >::Intersection::rank, and Dune::YaspGrid< dim >::mpifriendly_ygrid::size.
Referenced by Dune::YaspGrid< dim >::makelevel().
|
inline |
one past the end on this level
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
version without second template parameter for convenience
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
return LeafIterator which points to the first entity in maxLevel
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
References Dune::YaspGrid< dim >::maxLevel().
|
inline |
return LeafIterator which points to the first entity in maxLevel
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
References Dune::YaspGrid< dim >::maxLevel().
|
inline |
return LeafIterator which points behind the last entity in maxLevel
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
References Dune::YaspGrid< dim >::maxLevel().
|
inline |
return LeafIterator which points behind the last entity in maxLevel
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
References Dune::YaspGrid< dim >::maxLevel().
|
inlineinherited |
View for the leaf grid.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inlineinherited |
View for the leaf grid for All_Partition.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
return const reference to the grids leaf index set
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inlineinherited |
View for the leaf grid.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inlineinherited |
View for the leaf grid for All_Partition.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
Iterator to one past the last entity of given codim on level for partition type.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
version without second template parameter for convenience
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inlineinherited |
View for a grid level.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inlineinherited |
View for a grid level for All_Partition.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
return const reference to the grids level index set for level level
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
References Dune::YaspGrid< dim >::maxLevel().
|
inlineinherited |
View for a grid level.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inlineinherited |
View for a grid level for All_Partition.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inlineinherited |
default implementation of load balance does nothing and returns false
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inlineinherited |
default implementation of load balance does nothing and returns false
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
return const reference to the grids local id set
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inlineprotected |
Make a new YGridLevel structure.
L | size of the whole domain in each direction |
s | number of cells in each direction |
periodic | indicate periodicity for each direction |
o_interior | origin of interior (non-overlapping) cell decomposition |
s_interior | size of interior cell decomposition |
overlap | to be used on this grid level |
References Dune::YaspGrid< dim >::YGridLevel::cell_global, Dune::YaspGrid< dim >::YGridLevel::cell_interior, Dune::YaspGrid< dim >::YGridLevel::cell_overlap, Dune::YaspGrid< dim >::intersections(), Dune::YaspGrid< dim >::YGridLevel::level_, Dune::Alberta::max(), Dune::YaspGrid< dim >::YGridLevel::mg, Dune::Alberta::min(), Dune::YaspGrid< dim >::YGridLevel::overlap, Dune::YaspGrid< dim >::YGridLevel::recv_cell_overlap_interior, Dune::YaspGrid< dim >::YGridLevel::recv_cell_overlap_overlap, Dune::YaspGrid< dim >::YGridLevel::recv_vertex_interiorborder_interiorborder, Dune::YaspGrid< dim >::YGridLevel::recv_vertex_overlapfront_interiorborder, Dune::YaspGrid< dim >::YGridLevel::recv_vertex_overlapfront_overlap, Dune::YaspGrid< dim >::YGridLevel::recv_vertex_overlapfront_overlapfront, Dune::YaspGrid< dim >::YGridLevel::send_cell_interior_overlap, Dune::YaspGrid< dim >::YGridLevel::send_cell_overlap_overlap, Dune::YaspGrid< dim >::YGridLevel::send_vertex_interiorborder_interiorborder, Dune::YaspGrid< dim >::YGridLevel::send_vertex_interiorborder_overlapfront, Dune::YaspGrid< dim >::YGridLevel::send_vertex_overlap_overlapfront, Dune::YaspGrid< dim >::YGridLevel::send_vertex_overlapfront_overlapfront, Dune::YaspGrid< dim >::YGridLevel::vertex_global, Dune::YaspGrid< dim >::YGridLevel::vertex_interior, Dune::YaspGrid< dim >::YGridLevel::vertex_interiorborder, Dune::YaspGrid< dim >::YGridLevel::vertex_overlap, and Dune::YaspGrid< dim >::YGridLevel::vertex_overlapfront.
Referenced by Dune::YaspGrid< dim >::globalRefine(), Dune::YaspGrid< dim >::MultiYGridSetup(), and Dune::YaspGrid< dim >::YaspGrid().
|
inlineinherited |
|
inline |
Marks an entity to be refined/coarsened in a subsequent adapt.
[in] | refCount | Number of subdivisions that should be applied. Negative value means coarsening. |
[in] | e | Entity to Entity that should be refined |
Reimplemented from Dune::GridDefaultImplementation< dim, dim, yaspgrid_ctype, YaspGridFamily< dim > >.
References Dune::Alberta::max(), and Dune::YaspGrid< dim >::maxLevel().
|
inline |
Return maximum level defined in this grid. Levels are numbered 0 ... maxlevel with 0 the coarsest level.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Referenced by Dune::YaspGrid< dim >::begin(), Dune::YaspGrid< dim >::communicate(), Dune::YaspGrid< dim >::end(), Dune::YaspGrid< dim >::getMark(), Dune::YaspGrid< dim >::globalRefine(), Dune::YaspGrid< dim >::leafbegin(), Dune::YaspGrid< dim >::leafend(), Dune::YaspGrid< dim >::levelIndexSet(), Dune::YaspGrid< dim >::mark(), Dune::YaspGrid< dim >::overlapSize(), and Dune::YaspGrid< dim >::size().
|
inline |
The constructor of the old MultiYGrid class.
References Dune::YaspGrid< dim >::makelevel().
Referenced by Dune::YaspGrid< dim >::YaspGrid().
|
inline |
The constructor of the old MultiYGrid class.
References Dune::YaspGrid< dim >::makelevel().
|
inline |
returns the number of boundary segments within the macro grid
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
return size (= distance in graph) of overlap region
Reimplemented from Dune::GridDefaultImplementation< dim, dim, yaspgrid_ctype, YaspGridFamily< dim > >.
References Dune::YaspGrid< dim >::begin().
|
inline |
return size (= distance in graph) of overlap region
Reimplemented from Dune::GridDefaultImplementation< dim, dim, yaspgrid_ctype, YaspGridFamily< dim > >.
References Dune::YaspGrid< dim >::begin(), and Dune::YaspGrid< dim >::maxLevel().
|
inline |
clean up some markers
Reimplemented from Dune::GridDefaultImplementation< dim, dim, yaspgrid_ctype, YaspGridFamily< dim > >.
|
inline |
returns true, if the grid will be coarsened
Reimplemented from Dune::GridDefaultImplementation< dim, dim, yaspgrid_ctype, YaspGridFamily< dim > >.
References Dune::YaspGrid< dim >::comm().
|
inline |
set options for refinement
keepPhysicalOverlap | [true] keep the physical size of the overlap, [false] keep the number of cells in the overlap. Default is [true]. |
|
inline |
number of entities per level and codim in this process
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Referenced by Dune::YaspGrid< dim >::boundarysegmentssize(), and Dune::YaspGrid< dim >::size().
|
inline |
number of leaf entities per codim in this process
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
References Dune::YaspGrid< dim >::maxLevel().
|
inline |
number of entities per level and geometry type in this process
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
|
inline |
number of leaf entities per geometry type in this process
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
References Dune::YaspGrid< dim >::maxLevel(), and Dune::YaspGrid< dim >::size().
|
inline |
return reference to torus
Referenced by Dune::YaspGrid< dim >::communicateCodim().
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |