|
template<int codim> |
Codim< codim >::LeafIterator | leafbegin () const |
|
template<int codim> |
Codim< codim >::LeafIterator | leafend () const |
|
template<int codim, PartitionIteratorType pitype> |
Codim< codim >::template Partition< pitype >::LeafIterator | leafbegin () const |
|
template<int codim, PartitionIteratorType pitype> |
Codim< codim >::template Partition< pitype >::LeafIterator | leafend () const |
|
template<int codim> |
Codim< codim >::LevelIterator | lbegin (const int) const |
|
template<int codim> |
Codim< codim >::LevelIterator | lend (const int) const |
|
template<int codim, PartitionIteratorType pitype> |
Codim< codim >::template Partition< pitype >::LevelIterator | lbegin (const int) const |
|
template<int codim, PartitionIteratorType pitype> |
Codim< codim >::template Partition< pitype >::LevelIterator | lend (const int) const |
|
const GlobalIdSet & | globalIdSet () const |
|
const LocalIdSet & | localIdSet () const |
|
const LevelIndexSet & | levelIndexSet (int) const |
|
const LeafIndexSet & | leafIndexSet () const |
|
void | globalRefine (int) |
|
bool | mark (int, const typename Codim< 0 >::Entity &) |
|
int | getMark (const typename Codim< 0 >::Entity &) const |
|
bool | preAdapt () |
|
bool | adapt () |
|
template<class DataHandle > |
bool | adapt (DataHandle &) |
|
void | postAdapt () |
|
const std::array< int, 3 > & | logicalCartesianSize () const |
|
const int * | globalCell () const |
|
const int * | globalCellPtr () const |
|
void | getIJK (const int c, std::array< int, 3 > &ijk) const |
|
|
Methods extending the DUNE's parallel grid interface.
These are basically for scattering/gathering data to/from distributed views.
|
typedef Traits ::ExtraData | ExtraData |
|
UnstructuredGridPtr | gridPtr_ |
|
const UnstructuredGridType & | grid_ |
|
CollectiveCommunication | comm_ |
|
std::array< int, 3 > | cartDims_ |
|
std::vector< std::vector< GeometryType > > | geomTypes_ |
|
std::vector< std::vector< int > > | cellVertices_ |
|
std::vector< GlobalCoordinate > | unitOuterNormals_ |
|
LeafIndexSet | leafIndexSet_ |
|
GlobalIdSet | globalIdSet_ |
|
LocalIdSet | localIdSet_ |
|
size_t | nBndSegments_ |
|
template<class DataHandle > |
void | scatterData ([[maybe_unused]] DataHandle &handle) const |
| Moves data from the global (all data on process) view to the distributed view. More...
|
|
ExtraData | extraData () const |
|
template<class EntitySeed > |
int | corners (const EntitySeed &seed) const |
|
template<class EntitySeed > |
GlobalCoordinate | corner (const EntitySeed &seed, const int i) const |
|
template<class EntitySeed > |
int | subEntities (const EntitySeed &seed, const int codim) const |
|
template<int codim, class EntitySeedArg > |
Codim< codim >::EntitySeed | subEntitySeed (const EntitySeedArg &baseSeed, const int i) const |
|
template<int codim> |
Codim< codim >::EntitySeed | subEntitySeed (const typename Codim< 1 >::EntitySeed &faceSeed, const int i) const |
|
bool | hasBoundaryIntersections (const typename Codim< 0 >::EntitySeed &seed) const |
|
bool | isBoundaryFace (const int face) const |
|
bool | isBoundaryFace (const typename Codim< 1 >::EntitySeed &faceSeed) const |
|
int | boundarySegmentIndex (const typename Codim< 0 >::EntitySeed &seed, const int face) const |
|
const std::vector< GeometryType > & | geomTypes (const unsigned int codim) const |
|
template<class Seed > |
GeometryType | geometryType (const Seed &seed) const |
|
int | indexInInside (const typename Codim< 0 >::EntitySeed &seed, const int i) const |
|
int | cartesianIndexInInside (const typename Codim< 0 >::EntitySeed &seed, const int i) const |
|
Codim< 0 >::EntitySeed | neighbor (const typename Codim< 0 >::EntitySeed &seed, const int i) const |
|
int | indexInOutside (const typename Codim< 0 >::EntitySeed &seed, const int i) const |
|
template<class EntitySeed > |
GlobalCoordinate | outerNormal (const EntitySeed &seed, const int i) const |
|
template<class EntitySeed > |
GlobalCoordinate | unitOuterNormal (const EntitySeed &seed, const int i) const |
|
template<class EntitySeed > |
GlobalCoordinate | centroids (const EntitySeed &seed) const |
|
GlobalCoordinate | copyToGlobalCoordinate (const double *coords) const |
|
template<class EntitySeed > |
double | volumes (const EntitySeed &seed) const |
|
UnstructuredGridType * | createGrid (const std::vector< int > &n, const std::vector< double > &dx) const |
|
void | init () |
|
void | print (std::ostream &out, const UnstructuredGridType &grid) const |
|
|
int | overlapSize (int) const |
| obtain size of overlap region for the leaf grid More...
|
|
int | ghostSize (int codim) const |
| obtain size of ghost region for the leaf grid More...
|
|
int | overlapSize (int, int) const |
| obtain size of overlap region for a grid level More...
|
|
int | ghostSize (int, int codim) const |
| obtain size of ghost region for a grid level More...
|
|
template<class DataHandle > |
void | communicate (DataHandle &, InterfaceType, CommunicationDirection, int) const |
| communicate information on a grid level More...
|
|
template<class DataHandle > |
void | communicate (DataHandle &, InterfaceType, CommunicationDirection) const |
| communicate information on leaf entities More...
|
|
void | switchToGlobalView () |
| Switch to the global view.
|
|
void | switchToDistributedView () |
| Switch to the distributed view.
|
|
const CollectiveCommunication & | comm () const |
| obtain CollectiveCommunication object More...
|
|
bool | loadBalance () |
| rebalance the load each process has to handle More...
|
|
template<class DataHandle , class Data > |
bool | loadBalance (CommDataHandleIF< DataHandle, Data > &) |
| rebalance the load each process has to handle More...
|
|
template<class DofManager > |
bool | loadBalance (DofManager &) |
| rebalance the load each process has to handle More...
|
|
template<PartitionIteratorType pitype> |
Partition< pitype >::LevelGridView | levelGridView (int) const |
| View for a grid level.
|
|
template<PartitionIteratorType pitype> |
Partition< pitype >::LeafGridView | leafGridView () const |
| View for the leaf grid.
|
|
LevelGridView | levelGridView (int) const |
| View for a grid level for All_Partition.
|
|
LeafGridView | leafGridView () const |
| View for the leaf grid for All_Partition.
|
|
template<class EntitySeed > |
Traits::template Codim< EntitySeed::codimension >::EntityPointer | entityPointer (const EntitySeed &seed) const |
| obtain EntityPointer from EntitySeed.
|
|
template<class EntitySeed > |
Traits::template Codim< EntitySeed::codimension >::Entity | entity (const EntitySeed &seed) const |
| obtain EntityPointer from EntitySeed.
|
|
template<int dim, int dimworld, typename coord_t >
type of local id set
The id set assigns a unique identifier to each entity within the grid. This identifier needs only to be unique over this process.
Though the local id set may be identical to the global id set, it is often implemented more efficiently.
- Note
- Ids are neither consecutive nor necessarily of an integral type.
-
Local ids need not be compatible with global ids. Also, no mapping from local ids to global ones needs to exist.
The global id set is a model of Dune::IdSet.
template<int dim, int dimworld, typename coord_t >
template<class DataHandle , class Data >
bool Dune::PolyhedralGrid< dim, dimworld, coord_t >::loadBalance |
( |
CommDataHandleIF< DataHandle, Data > & |
| ) |
|
|
inline |
rebalance the load each process has to handle
A parallel grid is redistributed such that each process has about the same load (e.g., the same number of leaf entites).
The data handle is used to communicate the data associated with entities that move from one process to another.
- Note
- DUNE does not specify, how the load is measured.
- Parameters
-
datahandle | communication data handle (user defined) |
- Returns
- true, if the grid has changed.
template<int dim, int dimworld, typename coord_t >
template<class DofManager >
rebalance the load each process has to handle
A parallel grid is redistributed such that each process has about the same load (e.g., the same number of leaf entites).
The data handle is used to communicate the data associated with entities that move from one process to another.
- Note
- DUNE does not specify, how the load is measured.
- Parameters
-
dataHandle | data handle following the ALUGrid interface |
- Returns
- true, if the grid has changed.
template<int dim, int dimworld, typename coord_t >
template<class DataHandle >
void Dune::PolyhedralGrid< dim, dimworld, coord_t >::scatterData |
( |
[[maybe_unused] ] DataHandle & |
handle | ) |
const |
|
inline |
Moves data from the global (all data on process) view to the distributed view.
This method does not do communication but assumes that the global grid is present on every process and simply copies data to the distributed view.
- Template Parameters
-
DataHandle | The type of the data handle describing the data and responsible for gathering and scattering the data. |
- Parameters
-
handle | The data handle describing the data and responsible for gathering and scattering the data. |