DUNE PDELab (2.8)
#include <dune/grid/yaspgrid/ygrid.hh>
Classes | |
class | Iterator |
Public Member Functions | |
YGridComponent () | |
make uninitialized ygrid | |
YGridComponent (iTupel origin, iTupel size) | |
make ygrid without coordinate information More... | |
YGridComponent (iTupel origin, iTupel size, const YGridComponent< Coordinates > &enclosing) | |
make a subgrid by taking coordinates from a larger grid More... | |
YGridComponent (iTupel origin, std::bitset< d > shift, Coordinates *coords, iTupel size, iTupel offset, iTupel supersize) | |
Make YGridComponent by giving all parameters. More... | |
int | origin (int i) const |
Return origin in direction i. | |
const iTupel & | origin () const |
return reference to origin | |
bool | shift (int i) const |
Return shift in direction i. | |
const std::bitset< d > & | shift () const |
Return shift tupel. | |
int | offset (int i) const |
Return offset to origin of enclosing grid. | |
const iTupel & | offset () const |
Return offset to origin of enclosing grid. | |
int | supersize (int i) const |
return size of enclosing grid | |
const iTupel & | supersize () const |
return size of enclosing grid | |
int | size (int i) const |
return size in direction i | |
iTupel | size () const |
retrun size | |
int | totalsize () const |
Return total size of index set which is the product of all size per direction. | |
int | min (int i) const |
Return minimum index in direction i. | |
int | max (int i) const |
Return maximum index in direction i. | |
bool | empty () const |
Return true if YGrid is empty, i.e. has size 0 in all directions. | |
bool | inside (const iTupel &coord) const |
given a coordinate, return true if it is in the grid | |
int | index (const iTupel &coord) const |
given a tupel compute its index in the lexicographic numbering | |
YGridComponent< Coordinates > | move (iTupel v) const |
return grid moved by the vector v | |
YGridComponent< Coordinates > | intersection (const YGridComponent< Coordinates > &r) const |
Return YGridComponent of supergrid of self which is the intersection of self and another YGridComponent. | |
Iterator | begin () const |
return iterator to first element of index set | |
Iterator | begin (const iTupel &co) const |
return iterator to given element of index set | |
Iterator | end () const |
return subiterator to last element of index set | |
Detailed Description
class Dune::YGridComponent< Coordinates >
The YGrid considered here describes a finite set \(d\)-tupels of the form
\[ G = \{ (k_0,\ldots,k_{d-1}) | o_i \leq k_i < o_i+s_i \} \]
together with an affine mapping.
A YGrid is characterized by the following quantities:
- The origin \( o=(o_0,\ldots,o_{d-1}) \in Z^d\),
- the size \( s=(s_0,\ldots,s_{d-1}) \in Z^d\),
- The shift \( r=(r_0,\ldots,r_{d-1}) \in R^d\).
- a coordinate container, that gives the mapping of the index to global coordinates (see coordinates.hh)
The shift can be used to interpret the points of a grid as midpoints of cells, faces, edges, etc.
Here is a graphical illustration of a grid:
A YGrid allows to iterate over all its cells with an Iterator class.
A YGrid is always considered as being embedded in a larger grid. This embedding is characterized by an offset and an enclosing grid as shown in the following picture:
The iterator provides also a mapping to the consecutive index in the enclosing grid.
Note: as of november 2013 there are only YGrid and YGrid::Iterator. These represent the functionality of former SubYGrid and SubYGrid::TransformingSubIterator. All other classes in the hierarchy have not been used.
Constructor & Destructor Documentation
◆ YGridComponent() [1/3]
|
inline |
make ygrid without coordinate information
- Parameters
-
origin origin of the grid in global coordinates size size of the grid Such grid has no coordinate information stored but can be used to determine an intersection with a grid with coordinate information. This avoids sending coordinates in the parallel case.
◆ YGridComponent() [2/3]
|
inline |
make a subgrid by taking coordinates from a larger grid
- Parameters
-
origin origin of the grid to be constructed size size of the grid to be constructed enclosing the grid to take coordinates and shift vector from
References Dune::YGridComponent< Coordinates >::offset(), and Dune::YGridComponent< Coordinates >::origin().
◆ YGridComponent() [3/3]
|
inline |
Make YGridComponent by giving all parameters.
- Parameters
-
origin the origin of the grid in global coordinates shift the shift vector coords the coordinate vectors to be used size the size vector offset the offset in the enclosing grid supersize size of the enclosing grid
The documentation for this class was generated from the following file:
- dune/grid/yaspgrid/ygrid.hh