dune-grid
2.2.0
|
[ provides Dune::Grid ] More...
#include <dune/grid/alugrid/3d/grid.hh>
Public Types | |
enum | { refineStepsForHalf = 1 } |
typedef ALU3dGridIntersectionIterator < const ThisType > | IntersectionIteratorImp |
typedef ALU3dGridIntersectionIterator < const ThisType > | LeafIntersectionIteratorImp |
typedef ALU3dGridLevelIntersectionIterator < const ThisType > | LevelIntersectionIteratorImp |
typedef ALU3DSPACE GatherScatterType::ObjectStreamType | ObjectStreamType |
typedef ObjectStreamType | InStreamType |
typedef ObjectStreamType | OutStreamType |
typedef ALU3dGridFamily < elType, Comm > | GridFamily |
typedef GridFamily::Traits | Traits |
The traits of this class. | |
typedef ALU3dGridHierarchicIndexSet < elType, Comm > | HierarchicIndexSet |
Type of the hierarchic index set. | |
typedef GridFamily::LevelIndexSetImp | LevelIndexSetImp |
Type of the level index set, needed by data handle. | |
typedef GridFamily::LeafIndexSetImp | LeafIndexSetImp |
Type of the leaf index set, needed by data handle. | |
typedef GenericReferenceElement < alu3d_ctype, dimension > | ReferenceElementType |
reference element type | |
typedef Traits::DuneBoundaryProjectionType | DuneBoundaryProjectionType |
boundary projection type | |
typedef Traits::DuneBoundaryProjectionVector | DuneBoundaryProjectionVector |
boundary projection type | |
typedef ALU3DSPACE ProjectVertex | ALUGridVertexProjectionType |
type of ALUGrid Vertex Projection Interface | |
typedef Traits::CollectiveCommunication | CollectiveCommunication |
type of collective communication object | |
typedef MakeableInterfaceObject < typename Traits::template Codim< 0 >::Entity > | EntityObject |
typedef MakeableInterfaceObject < typename Traits::template Codim< 1 >::Entity > | FaceObject |
typedef MakeableInterfaceObject < typename Traits::template Codim< 2 >::Entity > | EdgeObject |
typedef MakeableInterfaceObject < typename Traits::template Codim< 3 >::Entity > | VertexObject |
typedef ALUGridObjectFactory < ThisType > | GridObjectFactoryType |
typedef Comm | MPICommunicatorType |
typedef ALU3dGridCommunications < elType, Comm > | Communications |
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 ct | ctype |
Define type used for coordinates in grid module. | |
Public Member Functions | |
virtual | ~ALU3dGrid () |
Desctructor. | |
int | maxLevel () const |
Return maximum level defined in this grid. Levels are numbered maxLevel with 0 the coarsest level. | |
template<int cd, PartitionIteratorType pitype> | |
Traits::template Codim< cd > ::template Partition< pitype > ::LevelIterator | lbegin (int level) const |
Iterator to first entity of given codim on level. | |
template<int cd, PartitionIteratorType pitype> | |
Traits::template Codim< cd > ::template Partition< pitype > ::LevelIterator | lend (int level) const |
one past the end on this level | |
template<int cd> | |
Traits::template Codim< cd > ::template Partition < All_Partition > ::LevelIterator | lbegin (int level) const |
Iterator to first entity of given codim on level. | |
template<int cd> | |
Traits::template Codim< cd > ::template Partition < All_Partition > ::LevelIterator | lend (int level) const |
one past the end on this level | |
template<int codim, PartitionIteratorType pitype> | |
Traits::template Codim< codim > ::template Partition< pitype > ::LeafIterator | leafbegin () const |
General definiton for a leaf iterator. | |
template<int codim, PartitionIteratorType pitype> | |
Traits::template Codim< codim > ::template Partition< pitype > ::LeafIterator | leafend () const |
General definition for an end iterator on leaf level. | |
template<int codim> | |
Traits::template Codim< codim > ::LeafIterator | leafbegin () const |
General definiton for a leaf iterator. | |
template<int codim> | |
Traits::template Codim< codim > ::LeafIterator | leafend () const |
General definition for an end iterator on leaf level. | |
int | size (int level, int cd) const |
number of grid entities per level and codim | |
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 | |
size_t | numBoundarySegments () const |
number of boundary segments | |
int | size (GeometryType type) const |
number of leaf entities per geometry type in this process | |
int | global_size (int cd) const |
number of grid entities on all levels for given codim | |
int | hierSetSize (int cd) const |
const GlobalIdSet & | globalIdSet () const |
get global id set of grid | |
const LocalIdSet & | localIdSet () const |
get global id set of grid | |
const Traits::LeafIndexSet & | leafIndexSet () const |
get leaf index set of the grid | |
const Traits::LevelIndexSet & | levelIndexSet (int level) const |
get level index set of the grid | |
bool | loadBalance () |
Calculates load of each process and repartition the grid if neccessary. For parameters of the load balancing process see the README file of the ALUGrid package. | |
template<class DataHandle > | |
bool | loadBalance (DataHandle &data) |
Calculates load of each process and repartition the grid if neccessary. For parameters of the load balancing process see the README file of the ALUGrid package. | |
template<class DataHandleImpl , class Data > | |
bool | loadBalance (CommDataHandleIF< DataHandleImpl, Data > &dataHandle) |
int | ghostSize (int level, int codim) const |
ghostSize is one for codim 0 and zero otherwise for this grid | |
int | overlapSize (int level, int codim) const |
overlapSize is zero for this grid | |
int | ghostSize (int codim) const |
ghostSize is one for codim 0 and zero otherwise for this grid | |
int | overlapSize (int codim) const |
overlapSize is zero for this grid | |
template<class DataHandleImp , class DataTypeImp > | |
void | communicate (CommDataHandleIF< DataHandleImp, DataTypeImp > &data, InterfaceType iftype, CommunicationDirection dir, int level) const |
template<class DataHandleImp , class DataTypeImp > | |
void | communicate (CommDataHandleIF< DataHandleImp, DataTypeImp > &data, InterfaceType iftype, CommunicationDirection dir) const |
Communicate information on distributed entities on the leaf grid. Template parameter is a model of Dune::CommDataHandleIF. | |
const CollectiveCommunication & | comm () const |
bool | preAdapt () |
returns if a least one entity was marked for coarsening | |
void | postAdapt () |
clear all entity new markers | |
bool | adapt () |
template<class GridImp , class DataHandle > | |
bool | adapt (AdaptDataHandleInterface< GridImp, DataHandle > &handle) |
void | globalRefine (int refCount) |
uses the interface, mark on entity and refineLocal | |
template<class GridImp , class DataHandle > | |
void | globalRefine (int refCount, AdaptDataHandleInterface< GridImp, DataHandle > &handle) |
template<GrapeIOFileFormatType ftype> | |
bool | writeGrid (const std::string filename, alu3d_ctype time) const |
write Grid to file in specified FileFormatType | |
bool | writeGrid_Xdr (const std::string filename, alu3d_ctype time) const |
bool | writeGrid_Ascii (const std::string filename, alu3d_ctype time, bool scientific=false) const |
write leaf grid in macro grid format to ascii file | |
bool | writeMacroGrid (const std::string path, const std::string filename) const |
write macro grid in ALUGrid macro format to path/filename.rank | |
template<GrapeIOFileFormatType ftype> | |
bool | readGrid (const std::string filename, alu3d_ctype &time) |
read Grid from file filename and store time of mesh in time | |
const HierarchicIndexSet & | hierarchicIndexSet () const |
void | setMaxLevel (int mxl) |
void | updateStatus () |
bool | mark (int refCount, const typename Traits::template Codim< 0 >::Entity &e) |
int | getMark (const typename Traits::template Codim< 0 >::Entity &e) const |
const std::vector< GeometryType > & | geomTypes (int codim) const |
deliver all geometry types used in this grid | |
GitterImplType & | myGrid () const |
virtual GitterImplType * | createALUGrid (const std::string ¯oName) |
ALUGridVertexProjectionType * | vertexProjection () |
virtual ALU3DSPACE Gitter::Geometric::BuilderIF & | getBuilder () const |
virtual void | duneNotifyMacroGridChanges () |
const ReferenceElementType & | referenceElement () const |
return reference to Dune reference element according to elType | |
template<class EntitySeed > | |
Traits::template Codim < EntitySeed::codimension > ::EntityPointer | entityPointer (const EntitySeed &seed) const |
obtain EntityPointer from EntitySeed. | |
int | nlinks () const |
LeafVertexListType & | getLeafVertexList () const |
int | getLevelOfLeafVertex (const typename ALU3dImplTraits< elType, Comm >::VertexType &vertex) const |
VertexListType & | getVertexList (int level) const |
ALU3dGridItemListType & | getGhostLeafList (int codim) const |
ALU3dGridItemListType & | getGhostLevelList (int codim, int level) const |
ALU3dGridItemListType & | getEdgeList (int level) const |
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 |
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. | |
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 std::string | name () |
for grid identification | |
static MPICommunicatorType | defaultCommunicator () |
template<class IntersectionType > | |
static const BaseType::template ReturnImplementationType < IntersectionType > ::ImplementationType & | getRealIntersection (const IntersectionType &intersection) |
Static Public Attributes | |
static const ALU3dGridElementType | elementType = elType |
static const int | dimension = BaseType::dimension |
The dimension of the grid. | |
static const int | dimensionworld = BaseType::dimensionworld |
The dimension of the world the grid lives in. | |
Protected Types | |
enum | { MAXL = 32 } |
max number of levels More... | |
enum | { newElementsChunk_ = 128 } |
element chunk for refinement More... | |
enum | { refineEstimate_ = 8 } |
upper estimate on number of elements that could be created when a new element is created More... | |
enum | { numberOfGeomTypes = 1 } |
typedef MakeableInterfaceObject < typename Traits::template Codim< 0 >::Geometry > | GeometryObject |
typedef ALUGridBoundaryProjection < ThisType, alu3d_ctype > | ALUGridBoundaryProjectionType |
typedef GridFamily::LocalIdSetImp | LocalIdSetImp |
Type of the local id set. | |
typedef GridFamily::GlobalIdSetImp | GlobalIdSetImp |
Type of the global id set. | |
typedef Traits::GlobalIdSet | GlobalIdSet |
Type of the global id set. | |
typedef Traits::LocalIdSet | LocalIdSet |
Type of the local id set. | |
typedef ALU3dGridLeafIterator < 0, All_Partition, const ThisType > | LeafIteratorImp |
a standard leaf iterator | |
typedef Traits::template Codim < 0 >::LeafIterator | LeafIteratorType |
typedef Traits::template Codim < 0 >::LeafIterator | LeafIterator |
typedef ALU3dGridHierarchicIterator < const ThisType > | HierarchicIteratorImp |
typedef ALU3dImplTraits < elType, Comm > ::GitterImplType | GitterImplType |
typedef ALU3dGridVertexList< Comm > | VertexListType |
typedef ALU3dGridLeafVertexList< Comm > | LeafVertexListType |
typedef SizeCache< MyType > | SizeCacheType |
Protected Member Functions | |
ALU3dGrid (const std::string ¯oTriangFilename, const MPICommunicatorType mpiComm, const DuneBoundaryProjectionType *bndPrj, const DuneBoundaryProjectionVector *bndVec, const ALUGridRefinementType refinementType) | |
ALU3dGrid (const ThisType &) | |
Copy constructor should not be used. | |
const ThisType & | operator= (const ThisType &) |
assignment operator should not be used | |
void | calcExtras () |
reset size and global size, update Level- and LeafIndexSet, if they exist | |
void | calcMaxLevel () |
calculate maxlevel | |
void | recalcGlobalSize () |
make grid walkthrough and calc global size | |
void | checkMacroGridFile (const std::string filename) |
check whether macro grid format is of our type | |
void | checkMacroGrid () |
check whether macro grid has the right element type | |
const DuneBoundaryProjectionType * | boundaryProjection (const int segmentIndex) const |
return boudanry projection for given segment Id | |
const Communications & | communications () const |
const GridObjectFactoryType & | factory () const |
bool | conformingRefinement () const |
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 | |
Protected Attributes | |
GitterImplType * | mygrid_ |
int | maxlevel_ |
int | coarsenMarked_ |
int | refineMarked_ |
std::vector< std::vector < GeometryType > > | geomTypes_ |
HierarchicIndexSet | hIndexSet_ |
GlobalIdSetImp * | globalIdSet_ |
LocalIdSetImp | localIdSet_ |
std::vector< LevelIndexSetImp * > | levelIndexVec_ |
LeafIndexSetImp * | leafIndexSet_ |
const ReferenceElementType & | referenceElement_ |
VertexListType | vertexList_ [MAXL] |
ALU3dGridItemListType | ghostLeafList_ [dimension] |
ALU3dGridItemListType | ghostLevelList_ [dimension][MAXL] |
ALU3dGridItemListType | levelEdgeList_ [MAXL] |
LeafVertexListType | leafVertexList_ |
SizeCacheType * | sizeCache_ |
GridObjectFactoryType | factory_ |
bool | lockPostAdapt_ |
const DuneBoundaryProjectionType * | bndPrj_ |
const DuneBoundaryProjectionVector * | bndVec_ |
ALUGridBoundaryProjectionType * | vertexProjection_ |
Communications * | communications_ |
const ALUGridRefinementType | refinementType_ |
Friends | |
class | ALU3dGridEntity< 0, 3, const ThisType > |
class | ALU3dGridEntity< 1, 3, const ThisType > |
class | ALU3dGridEntity< 2, 3, const ThisType > |
class | ALU3dGridEntity< 3, 3, const ThisType > |
class | ALU3dGridIntersectionIterator< ThisType > |
class | ALU3dGridEntityPointerBase< 0, const ThisType > |
class | ALU3dGridEntityPointerBase< 1, const ThisType > |
class | ALU3dGridEntityPointerBase< 2, const ThisType > |
class | ALU3dGridEntityPointerBase< 3, const ThisType > |
class | ALU3dGridEntityPointer< 0, const ThisType > |
class | ALU3dGridEntityPointer< 1, const ThisType > |
class | ALU3dGridEntityPointer< 2, const ThisType > |
class | ALU3dGridEntityPointer< 3, const ThisType > |
class | ALU3dGridIntersectionIterator< const ThisType > |
class | ALU3dGridHierarchicIterator< const ThisType > |
class | ALU3dGridHierarchicIndexSet< elType, Comm > |
class | ALU3dGridGlobalIdSet< elType, Comm > |
class | ALU3dGridLocalIdSet< elType, Comm > |
class | Conversion< ThisType, HasObjectStream > |
class | Conversion< const ThisType, HasObjectStream > |
class | Conversion< ThisType, HasHierarchicIndexSet > |
class | Conversion< const ThisType, HasHierarchicIndexSet > |
class | ALU3dGridCommHelper< elType, Comm > |
class | IntersectionIteratorWrapper< const ThisType, LeafIntersectionIteratorImp > |
class | IntersectionIteratorWrapper< const ThisType, LevelIntersectionIteratorImp > |
class | LeafIntersectionIteratorWrapper< const ThisType > |
class | LevelIntersectionIteratorWrapper< const ThisType > |
class | ALULocalGeometryStorage< const ThisType, GeometryObject, 8 > |
class | ALUGridBoundaryProjection< ThisType, alu3d_ctype > |
[ provides Dune::Grid ]
3D grid with support for hexahedrons and tetrahedrons. The ALU3dGrid implements the Dune GridInterface for 3d tetrahedral and hexahedral meshes. This grid can be locally adapted and used in parallel computations using dynamic load balancing.
(see ALUGrid homepage: http://www.mathematik.uni-freiburg.de/IAM/Research/alugrid/)
Two tools are available for partitioning :
For installation instructions see http://www.dune-project.org/external_libraries/install_alugrid.html .
typedef ALUGridBoundaryProjection< ThisType, alu3d_ctype > Dune::ALU3dGrid< elType, Comm >::ALUGridBoundaryProjectionType [protected] |
typedef ALU3DSPACE ProjectVertex Dune::ALU3dGrid< elType, Comm >::ALUGridVertexProjectionType |
type of ALUGrid Vertex Projection Interface
typedef Traits::CollectiveCommunication Dune::ALU3dGrid< elType, Comm >::CollectiveCommunication |
type of collective communication object
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
typedef ALU3dGridCommunications< elType, Comm > Dune::ALU3dGrid< elType, Comm >::Communications |
typedef ct Dune::Grid< dim, dimworld, ct, GridFamily >::ctype [inherited] |
Define type used for coordinates in grid module.
Reimplemented in Dune::YaspGrid< dim >, Dune::SGrid< dim, dimworld, _ctype >, Dune::SGrid< dim, dimworld >, Dune::UGGrid< dim >, Dune::UGGrid< dimworld >, Dune::ALUConformGrid< 2, dimw >, Dune::ALUSimplexGrid< 3, 3 >, Dune::ALUSimplexGrid< 2, dimw >, Dune::AlbertaGrid< dim, dimworld >, Dune::OneDGrid, Dune::ALUCubeGrid< 3, 3 >, and Dune::ALUCubeGrid< 2, dimw >.
typedef Traits::DuneBoundaryProjectionType Dune::ALU3dGrid< elType, Comm >::DuneBoundaryProjectionType |
boundary projection type
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef Traits::DuneBoundaryProjectionVector Dune::ALU3dGrid< elType, Comm >::DuneBoundaryProjectionVector |
boundary projection type
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef MakeableInterfaceObject<typename Traits::template Codim<2>::Entity> Dune::ALU3dGrid< elType, Comm >::EdgeObject |
typedef MakeableInterfaceObject<typename Traits::template Codim<0>::Entity> Dune::ALU3dGrid< elType, Comm >::EntityObject |
typedef MakeableInterfaceObject<typename Traits::template Codim<1>::Entity> Dune::ALU3dGrid< elType, Comm >::FaceObject |
typedef MakeableInterfaceObject< typename Traits::template Codim< 0 >::Geometry > Dune::ALU3dGrid< elType, Comm >::GeometryObject [protected] |
typedef ALU3dImplTraits< elType, Comm >::GitterImplType Dune::ALU3dGrid< elType, Comm >::GitterImplType [protected] |
typedef Traits::GlobalIdSet Dune::ALU3dGrid< elType, Comm >::GlobalIdSet [protected] |
Type of the global id set.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef GridFamily::GlobalIdSetImp Dune::ALU3dGrid< elType, Comm >::GlobalIdSetImp [protected] |
Type of the global id set.
typedef ALU3dGridFamily< elType, Comm > Dune::ALU3dGrid< elType, Comm >::GridFamily |
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef ALUGridObjectFactory< ThisType > Dune::ALU3dGrid< elType, Comm >::GridObjectFactoryType |
typedef ALU3dGridHierarchicIndexSet< elType, Comm > Dune::ALU3dGrid< elType, Comm >::HierarchicIndexSet |
Type of the hierarchic index set.
typedef GridFamily::Traits::HierarchicIterator Dune::Grid< dim, dimworld, ct, GridFamily >::HierarchicIterator [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 ALU3dGridHierarchicIterator< const ThisType > Dune::ALU3dGrid< elType, Comm >::HierarchicIteratorImp [protected] |
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef ObjectStreamType Dune::ALU3dGrid< elType, Comm >::InStreamType |
typedef ALU3dGridIntersectionIterator<const ThisType> Dune::ALU3dGrid< elType, Comm >::IntersectionIteratorImp |
typedef Partition< All_Partition >:: LeafGridView Dune::Grid< dim, dimworld, ct, GridFamily >::LeafGridView [inherited] |
typedef GridFamily::Traits::LeafIndexSet Dune::Grid< dim, dimworld, ct, GridFamily >::LeafIndexSet [inherited] |
A type that is a model of Dune::IndexSet which provides a consecutive, but non persistent, numbering for entities in the leaf grid.
Reimplemented in Dune::AlbertaGrid< dim, dimworld >.
typedef GridFamily::LeafIndexSetImp Dune::ALU3dGrid< elType, Comm >::LeafIndexSetImp |
Type of the leaf index set, needed by data handle.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef GridFamily::Traits::LeafIntersection Dune::Grid< dim, dimworld, ct, GridFamily >::LeafIntersection [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.
typedef GridFamily::Traits::LeafIntersectionIterator Dune::Grid< dim, dimworld, ct, GridFamily >::LeafIntersectionIterator [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.
typedef ALU3dGridIntersectionIterator<const ThisType> Dune::ALU3dGrid< elType, Comm >::LeafIntersectionIteratorImp |
typedef Traits::template Codim< 0 >::LeafIterator Dune::ALU3dGrid< elType, Comm >::LeafIterator [protected] |
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef ALU3dGridLeafIterator< 0, All_Partition, const ThisType > Dune::ALU3dGrid< elType, Comm >::LeafIteratorImp [protected] |
a standard leaf iterator
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef Traits::template Codim< 0 >::LeafIterator Dune::ALU3dGrid< elType, Comm >::LeafIteratorType [protected] |
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef ALU3dGridLeafVertexList< Comm > Dune::ALU3dGrid< elType, Comm >::LeafVertexListType [protected] |
typedef Partition< All_Partition >:: LevelGridView Dune::Grid< dim, dimworld, ct, GridFamily >::LevelGridView [inherited] |
View types for All_Partition.
Reimplemented in Dune::ALUConformGrid< 2, dimw >, Dune::ALUSimplexGrid< 3, 3 >, Dune::ALUSimplexGrid< 2, dimw >, Dune::ALUCubeGrid< 3, 3 >, and Dune::ALUCubeGrid< 2, dimw >.
typedef GridFamily::Traits::LevelIndexSet Dune::Grid< dim, dimworld, ct, GridFamily >::LevelIndexSet [inherited] |
A type that is a model of Dune::IndexSet which provides a consecutive, but non persistent, numbering for entities on a grid level.
Reimplemented in Dune::AlbertaGrid< dim, dimworld >.
typedef GridFamily::LevelIndexSetImp Dune::ALU3dGrid< elType, Comm >::LevelIndexSetImp |
Type of the level index set, needed by data handle.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef GridFamily::Traits::LevelIntersection Dune::Grid< dim, dimworld, ct, GridFamily >::LevelIntersection [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.
typedef GridFamily::Traits::LevelIntersectionIterator Dune::Grid< dim, dimworld, ct, GridFamily >::LevelIntersectionIterator [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.
typedef ALU3dGridLevelIntersectionIterator<const ThisType> Dune::ALU3dGrid< elType, Comm >::LevelIntersectionIteratorImp |
typedef Traits::LocalIdSet Dune::ALU3dGrid< elType, Comm >::LocalIdSet [protected] |
Type of the local id set.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef GridFamily::LocalIdSetImp Dune::ALU3dGrid< elType, Comm >::LocalIdSetImp [protected] |
Type of the local id set.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef Comm Dune::ALU3dGrid< elType, Comm >::MPICommunicatorType |
typedef ALU3DSPACE GatherScatterType::ObjectStreamType Dune::ALU3dGrid< elType, Comm >::ObjectStreamType |
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef ObjectStreamType Dune::ALU3dGrid< elType, Comm >::OutStreamType |
typedef GenericReferenceElement< alu3d_ctype, dimension > Dune::ALU3dGrid< elType, Comm >::ReferenceElementType |
reference element type
typedef SizeCache<MyType> Dune::ALU3dGrid< elType, Comm >::SizeCacheType [protected] |
typedef GridFamily::Traits Dune::ALU3dGrid< elType, Comm >::Traits |
The traits of this class.
Presents the typedefs as described in GridTraits.
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
typedef ALU3dGridVertexList< Comm > Dune::ALU3dGrid< elType, Comm >::VertexListType [protected] |
typedef MakeableInterfaceObject<typename Traits::template Codim<3>::Entity> Dune::ALU3dGrid< elType, Comm >::VertexObject |
anonymous enum [inherited] |
anonymous enum [inherited] |
anonymous enum [protected] |
anonymous enum [protected] |
anonymous enum [protected] |
anonymous enum [protected] |
Dune::ALU3dGrid< elType, Comm >::ALU3dGrid | ( | const std::string & | macroTriangFilename, |
const MPICommunicatorType | mpiComm, | ||
const DuneBoundaryProjectionType * | bndPrj, | ||
const DuneBoundaryProjectionVector * | bndVec, | ||
const ALUGridRefinementType | refinementType | ||
) | [inline, protected] |
Constructor which reads an ALU3dGrid Macro Triang file or given GridFile
References Dune::checkMacroGrid(), Dune::hexa, and Dune::tetra.
virtual Dune::ALU3dGrid< elType, Comm >::~ALU3dGrid | ( | ) | [virtual] |
Desctructor.
Dune::ALU3dGrid< elType, Comm >::ALU3dGrid | ( | const ThisType & | ) | [protected] |
Copy constructor should not be used.
bool Dune::ALU3dGrid< elType, Comm >::adapt | ( | ) |
Refine all positive marked leaf entities, coarsen all negative marked entities if possible.
The complete adaptation process works as follows:
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
bool Dune::ALU3dGrid< elType, Comm >::adapt | ( | AdaptDataHandleInterface< GridImp, DataHandle > & | handle | ) | [inline] |
Refine all positive marked leaf entities, coarsen all negative marked entities if possible.
The complete adaptation process works as follows:
handle | handler for restriction and prolongation operations which is a Model of the AdaptDataHandleInterface class. |
References ALU3DSPACE, Dune::Alberta::max(), Dune::AdaptDataHandleInterface< Grid, Impl >::postAdapt(), and Dune::AdaptDataHandleInterface< Grid, Impl >::preAdapt().
GridImp& Dune::Grid< dim, dimworld, ct, GridFamily >::asImp | ( | ) | [inline, protected, inherited] |
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 > >::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 > >::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().
const GridImp& Dune::Grid< dim, dimworld, ct, GridFamily >::asImp | ( | ) | const [inline, protected, inherited] |
Barton-Nackman trick.
const DuneBoundaryProjectionType* Dune::ALU3dGrid< elType, Comm >::boundaryProjection | ( | const int | segmentIndex | ) | const [inline, protected] |
return boudanry projection for given segment Id
void Dune::ALU3dGrid< elType, Comm >::calcExtras | ( | ) | [protected] |
reset size and global size, update Level- and LeafIndexSet, if they exist
void Dune::ALU3dGrid< elType, Comm >::calcMaxLevel | ( | ) | [protected] |
calculate maxlevel
void Dune::ALU3dGrid< elType, Comm >::checkMacroGrid | ( | ) | [protected] |
check whether macro grid has the right element type
void Dune::ALU3dGrid< elType, Comm >::checkMacroGridFile | ( | const std::string | filename | ) | [protected] |
check whether macro grid format is of our type
const CollectiveCommunication& Dune::ALU3dGrid< elType, Comm >::comm | ( | ) | const [inline] |
return const reference to a collective communication object. The return type is a model of Dune::CollectiveCommunication.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
void Dune::ALU3dGrid< elType, Comm >::communicate | ( | CommDataHandleIF< DataHandleImp, DataType > & | data, |
InterfaceType | iftype, | ||
CommunicationDirection | dir, | ||
int | level | ||
) | const [inline] |
void Dune::ALU3dGrid< elType, Comm >::communicate | ( | CommDataHandleIF< DataHandleImp, DataType > & | data, |
InterfaceType | iftype, | ||
CommunicationDirection | dir | ||
) | const [inline] |
void Dune::ALU3dGrid< elType, Comm >::communicate | ( | CommDataHandleIF< DataHandleImp, DataTypeImp > & | data, |
InterfaceType | iftype, | ||
CommunicationDirection | dir, | ||
int | level | ||
) | const |
Communicate information on distributed entities on a given level Template parameter is a model of Dune::CommDataHandleIF.
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
void Dune::ALU3dGrid< elType, Comm >::communicate | ( | CommDataHandleIF< DataHandleImp, DataTypeImp > & | data, |
InterfaceType | iftype, | ||
CommunicationDirection | dir | ||
) | const |
Communicate information on distributed entities on the leaf grid. Template parameter is a model of Dune::CommDataHandleIF.
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
const Communications& Dune::ALU3dGrid< elType, Comm >::communications | ( | ) | const [inline, protected] |
Referenced by Dune::ALU3dGrid< hexa >::comm(), and Dune::ALU3dGrid< hexa >::nlinks().
bool Dune::ALU3dGrid< elType, Comm >::conformingRefinement | ( | ) | const [inline, protected] |
virtual GitterImplType* Dune::ALU3dGrid< elType, Comm >::createALUGrid | ( | const std::string & | macroName | ) | [inline, virtual] |
static MPICommunicatorType Dune::ALU3dGrid< elType, Comm >::defaultCommunicator | ( | ) | [inline, static] |
virtual void Dune::ALU3dGrid< elType, Comm >::duneNotifyMacroGridChanges | ( | ) | [inline, virtual] |
Referenced by Dune::ALU3dGrid< hexa >::duneNotifyMacroGridChanges().
Traits :: template Codim< EntitySeed :: codimension >:: EntityPointer Dune::ALU3dGrid< elType, Comm >::entityPointer | ( | const EntitySeed & | seed | ) | const [inline] |
obtain EntityPointer from EntitySeed.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
const GridObjectFactoryType& Dune::ALU3dGrid< elType, Comm >::factory | ( | ) | const [inline, protected] |
Referenced by Dune::ALU3dGrid< hexa >::entityPointer().
const std::vector<GeometryType>& Dune::ALU3dGrid< elType, Comm >::geomTypes | ( | int | codim | ) | const [inline] |
deliver all geometry types used in this grid
Referenced by Dune::ALU3dGridHierarchicIndexSet< elType, Comm >::geomTypes().
virtual ALU3DSPACE Gitter::Geometric::BuilderIF& Dune::ALU3dGrid< elType, Comm >::getBuilder | ( | ) | const [inline, virtual] |
Referenced by Dune::ALU3dGrid< hexa >::getBuilder().
ALU3dGridItemListType& Dune::ALU3dGrid< elType, Comm >::getEdgeList | ( | int | level | ) | const [inline] |
ALU3dGridItemListType& Dune::ALU3dGrid< elType, Comm >::getGhostLeafList | ( | int | codim | ) | const [inline] |
ALU3dGridItemListType& Dune::ALU3dGrid< elType, Comm >::getGhostLevelList | ( | int | codim, |
int | level | ||
) | const [inline] |
LeafVertexListType& Dune::ALU3dGrid< elType, Comm >::getLeafVertexList | ( | ) | const [inline] |
int Dune::ALU3dGrid< elType, Comm >::getLevelOfLeafVertex | ( | const typename ALU3dImplTraits< elType, Comm >::VertexType & | vertex | ) | const [inline] |
int Dune::Grid< dim, dimworld, ct, GridFamily >::getMark | ( | const typename Codim< 0 >::Entity & | e | ) | const [inline, inherited] |
int Dune::ALU3dGrid< elType, Comm >::getMark | ( | const typename Traits::template Codim< 0 >::Entity & | e | ) | const [inline] |
returns adaptation mark for given entity
[in] | e | Entity for which adaptation mark should be determined |
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
static ReturnImplementationType<InterfaceType>::ImplementationType& Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::getRealImplementation | ( | InterfaceType & | i | ) | [inline, static, protected, inherited] |
return real implementation of interface class
Referenced by Dune::ALU3dGrid< hexa >::getRealIntersection(), Dune::ALU3dGridHierarchicIndexSet< elType, Comm >::index(), and Dune::ALU3dGridHierarchicIndexSet< elType, Comm >::subIndex().
static const BaseType :: template ReturnImplementationType< IntersectionType >:: ImplementationType& Dune::ALU3dGrid< elType, Comm >::getRealIntersection | ( | const IntersectionType & | intersection | ) | [inline, static] |
VertexListType& Dune::ALU3dGrid< elType, Comm >::getVertexList | ( | int | level | ) | const [inline] |
int Dune::ALU3dGrid< elType, Comm >::ghostSize | ( | int | level, |
int | codim | ||
) | const |
ghostSize is one for codim 0 and zero otherwise for this grid
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
int Dune::ALU3dGrid< elType, Comm >::ghostSize | ( | int | codim | ) | const |
ghostSize is one for codim 0 and zero otherwise for this grid
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
int Dune::ALU3dGrid< elType, Comm >::global_size | ( | int | cd | ) | const [inline] |
number of grid entities on all levels for given codim
const GlobalIdSet& Dune::ALU3dGrid< elType, Comm >::globalIdSet | ( | ) | const [inline] |
get global id set of grid
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
void Dune::ALU3dGrid< elType, Comm >::globalRefine | ( | int | refCount | ) |
uses the interface, mark on entity and refineLocal
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
void Dune::ALU3dGrid< elType, Comm >::globalRefine | ( | int | refCount, |
AdaptDataHandleInterface< GridImp, DataHandle > & | handle | ||
) | [inline] |
const HierarchicIndexSet& Dune::ALU3dGrid< elType, Comm >::hierarchicIndexSet | ( | ) | const [inline] |
int Dune::ALU3dGrid< elType, Comm >::hierSetSize | ( | int | cd | ) | const [inline] |
Referenced by Dune::ALU3dGridHierarchicIndexSet< elType, Comm >::size().
ALU3dGrid< elType, Comm >::Traits::template Codim< cd >::template Partition< All_Partition >::LevelIterator Dune::ALU3dGrid< elType, Comm >::lbegin | ( | int | level | ) | const [inline] |
Iterator to first entity of given codim on level.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Traits::template Codim<cd>:: template Partition<All_Partition>::LevelIterator Dune::ALU3dGrid< elType, Comm >::lbegin | ( | int | level | ) | const |
Iterator to first entity of given codim on level.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Traits::template Codim<codim>::template Partition<pitype>::LeafIterator Dune::ALU3dGrid< elType, Comm >::leafbegin | ( | ) | const |
General definiton for a leaf iterator.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Traits::template Codim<codim>::LeafIterator Dune::ALU3dGrid< elType, Comm >::leafbegin | ( | ) | const |
General definiton for a leaf iterator.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Traits::template Codim<codim>::template Partition<pitype>::LeafIterator Dune::ALU3dGrid< elType, Comm >::leafend | ( | ) | const |
General definition for an end iterator on leaf level.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Traits::template Codim<codim>::LeafIterator Dune::ALU3dGrid< elType, Comm >::leafend | ( | ) | const |
General definition for an end iterator on leaf level.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
const Traits :: LeafIndexSet& Dune::ALU3dGrid< elType, Comm >::leafIndexSet | ( | ) | const |
get leaf index set of the grid
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Traits::template Partition<pitype>::LeafGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::leafView | ( | ) | const [inline, inherited] |
View for the leaf grid.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, Dune::ALUSimplexGrid< 3, 3 >, Dune::ALUCubeGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
Traits::template Partition<All_Partition>::LeafGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::leafView | ( | ) | const [inline, inherited] |
View for the leaf grid for All_Partition.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, Dune::ALUSimplexGrid< 3, 3 >, Dune::ALUCubeGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
ALU3dGrid< elType, Comm >::Traits::template Codim< cd >::template Partition< All_Partition >::LevelIterator Dune::ALU3dGrid< elType, Comm >::lend | ( | int | level | ) | const [inline] |
one past the end on this level
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Traits::template Codim<cd>:: template Partition<All_Partition>::LevelIterator Dune::ALU3dGrid< elType, Comm >::lend | ( | int | level | ) | const |
one past the end on this level
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
const Traits :: LevelIndexSet& Dune::ALU3dGrid< elType, Comm >::levelIndexSet | ( | int | level | ) | const |
get level index set of the grid
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Traits::template Partition<pitype>::LevelGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::levelView | ( | int | level | ) | const [inline, inherited] |
View for a grid level.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, Dune::ALUSimplexGrid< 3, 3 >, Dune::ALUCubeGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
Traits::template Partition<All_Partition>::LevelGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::levelView | ( | int | level | ) | const [inline, inherited] |
View for a grid level for All_Partition.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, Dune::ALUSimplexGrid< 3, 3 >, Dune::ALUCubeGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
bool Dune::ALU3dGrid< elType, Comm >::loadBalance | ( | ) | [inline] |
Calculates load of each process and repartition the grid if neccessary. For parameters of the load balancing process see the README file of the ALUGrid package.
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
Referenced by Dune::ALU3dGrid< hexa >::loadBalance().
bool Dune::ALU3dGrid< elType, Comm >::loadBalance | ( | DataHandle & | data | ) | [inline] |
Calculates load of each process and repartition the grid if neccessary. For parameters of the load balancing process see the README file of the ALUGrid package.
data | the data handler class that must implement three methods: // calls data inline on macro element. From there the data of // all children can be written to the message buffer. // MessageBufferImp implements the MessageBufferIF interface. template<class MessageBufferImp> void inlineData ( MessageBufferImp& buff, Dune::Entity<0> & e); // calls data xtract on macro element. From there the data of // all children can be restored from the message buffer. // numChildren is the number of all children underneath the // macro element e. // MessageBufferImp implements the MessageBufferIF interface. template<class MessageBufferImp> void xtractData ( MessageBufferImp& buff, Dune::Entity<0> & e, size_t numChildren ); // This method is called at the end of the load balancing process // before adaptation markers are removed. Here the user can apply // a data compression or other features. This method can be // empty if nothing should be done. void compress (); |
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
bool Dune::ALU3dGrid< elType, Comm >::loadBalance | ( | CommDataHandleIF< DataHandleImpl, Data > & | dataHandle | ) | [inline] |
const LocalIdSet& Dune::ALU3dGrid< elType, Comm >::localIdSet | ( | ) | const [inline] |
get global id set of grid
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
bool Dune::Grid< dim, dimworld, ct, GridFamily >::mark | ( | int | refCount, |
const typename Codim< 0 >::Entity & | e | ||
) | [inline, inherited] |
bool Dune::ALU3dGrid< elType, Comm >::mark | ( | int | refCount, |
const typename Traits::template Codim< 0 >::Entity & | e | ||
) | [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 that should be marked |
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
int Dune::ALU3dGrid< elType, Comm >::maxLevel | ( | ) | const [inline] |
Return maximum level defined in this grid. Levels are numbered maxLevel with 0 the coarsest level.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Referenced by Dune::ALU3dGrid< hexa >::getEdgeList(), Dune::ALU3dGrid< hexa >::getGhostLevelList(), and Dune::ALU3dGrid< hexa >::getVertexList().
ALU3dGrid< elType, Comm >::GitterImplType & Dune::ALU3dGrid< elType, Comm >::myGrid | ( | ) | const [inline] |
std::string Dune::ALU3dGrid< elType, Comm >::name | ( | ) | [inline, static] |
for grid identification
References Dune::hexa.
int Dune::ALU3dGrid< elType, Comm >::nlinks | ( | ) | const [inline] |
Referenced by Dune::ALU3dGridGlobalIdSet< elType, Comm >::buildIdSet().
size_t Dune::ALU3dGrid< elType, Comm >::numBoundarySegments | ( | ) | const |
number of boundary segments
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
const ThisType& Dune::ALU3dGrid< elType, Comm >::operator= | ( | const ThisType & | ) | [protected] |
assignment operator should not be used
int Dune::ALU3dGrid< elType, Comm >::overlapSize | ( | int | level, |
int | codim | ||
) | const [inline] |
overlapSize is zero for this grid
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
int Dune::ALU3dGrid< elType, Comm >::overlapSize | ( | int | codim | ) | const [inline] |
overlapSize is zero for this grid
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
void Dune::ALU3dGrid< elType, Comm >::postAdapt | ( | ) |
clear all entity new markers
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
bool Dune::ALU3dGrid< elType, Comm >::preAdapt | ( | ) |
returns if a least one entity was marked for coarsening
Reimplemented from Dune::GridDefaultImplementation< 3, 3, alu3d_ctype, ALU3dGridFamily< elType, Comm > >.
bool Dune::ALU3dGrid< elType, Comm >::readGrid | ( | const std::string | filename, |
alu3d_ctype & | time | ||
) |
read Grid from file filename and store time of mesh in time
void Dune::ALU3dGrid< elType, Comm >::recalcGlobalSize | ( | ) | [protected] |
make grid walkthrough and calc global size
const ReferenceElementType& Dune::ALU3dGrid< elType, Comm >::referenceElement | ( | ) | const [inline] |
return reference to Dune reference element according to elType
void Dune::ALU3dGrid< elType, Comm >::setMaxLevel | ( | int | mxl | ) |
int Dune::ALU3dGrid< elType, Comm >::size | ( | int | level, |
int | cd | ||
) | const |
number of grid entities per level and codim
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
int Dune::ALU3dGrid< elType, Comm >::size | ( | int | codim | ) | const |
number of leaf entities per codim in this process
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
int Dune::ALU3dGrid< elType, Comm >::size | ( | int | level, |
GeometryType | type | ||
) | const |
number of entities per level and geometry type in this process
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
int Dune::ALU3dGrid< elType, Comm >::size | ( | GeometryType | type | ) | const |
number of leaf entities per geometry type in this process
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
void Dune::ALU3dGrid< elType, Comm >::updateStatus | ( | ) |
ALUGridVertexProjectionType* Dune::ALU3dGrid< elType, Comm >::vertexProjection | ( | ) | [inline] |
Referenced by Dune::ALU3dGrid< hexa >::createALUGrid().
bool Dune::ALU3dGrid< elType, Comm >::writeGrid | ( | const std::string | filename, |
alu3d_ctype | time | ||
) | const |
write Grid to file in specified FileFormatType
bool Dune::ALU3dGrid< elType, Comm >::writeGrid_Ascii | ( | const std::string | filename, |
alu3d_ctype | time, | ||
bool | scientific = false |
||
) | const |
write leaf grid in macro grid format to ascii file
bool Dune::ALU3dGrid< elType, Comm >::writeGrid_Xdr | ( | const std::string | filename, |
alu3d_ctype | time | ||
) | const |
bool Dune::ALU3dGrid< elType, Comm >::writeMacroGrid | ( | const std::string | path, |
const std::string | filename | ||
) | const |
write macro grid in ALUGrid macro format to path/filename.rank
friend class ALU3dGridCommHelper< elType, Comm > [friend] |
friend class ALU3dGridEntity< 0, 3, const ThisType > [friend] |
friend class ALU3dGridEntity< 1, 3, const ThisType > [friend] |
friend class ALU3dGridEntity< 2, 3, const ThisType > [friend] |
friend class ALU3dGridEntity< 3, 3, const ThisType > [friend] |
friend class ALU3dGridEntityPointer< 0, const ThisType > [friend] |
friend class ALU3dGridEntityPointer< 1, const ThisType > [friend] |
friend class ALU3dGridEntityPointer< 2, const ThisType > [friend] |
friend class ALU3dGridEntityPointer< 3, const ThisType > [friend] |
friend class ALU3dGridEntityPointerBase< 0, const ThisType > [friend] |
friend class ALU3dGridEntityPointerBase< 1, const ThisType > [friend] |
friend class ALU3dGridEntityPointerBase< 2, const ThisType > [friend] |
friend class ALU3dGridEntityPointerBase< 3, const ThisType > [friend] |
friend class ALU3dGridGlobalIdSet< elType, Comm > [friend] |
friend class ALU3dGridHierarchicIndexSet< elType, Comm > [friend] |
friend class ALU3dGridHierarchicIterator< const ThisType > [friend] |
friend class ALU3dGridIntersectionIterator< const ThisType > [friend] |
friend class ALU3dGridIntersectionIterator< ThisType > [friend] |
friend class ALU3dGridLocalIdSet< elType, Comm > [friend] |
friend class ALUGridBoundaryProjection< ThisType, alu3d_ctype > [friend] |
friend class ALULocalGeometryStorage< const ThisType, GeometryObject, 8 > [friend] |
friend class Conversion< const ThisType, HasHierarchicIndexSet > [friend] |
friend class Conversion< const ThisType, HasObjectStream > [friend] |
friend class Conversion< ThisType, HasHierarchicIndexSet > [friend] |
friend class Conversion< ThisType, HasObjectStream > [friend] |
friend class IntersectionIteratorWrapper< const ThisType, LeafIntersectionIteratorImp > [friend] |
friend class IntersectionIteratorWrapper< const ThisType, LevelIntersectionIteratorImp > [friend] |
friend class LeafIntersectionIteratorWrapper< const ThisType > [friend] |
friend class LevelIntersectionIteratorWrapper< const ThisType > [friend] |
const DuneBoundaryProjectionType* Dune::ALU3dGrid< elType, Comm >::bndPrj_ [protected] |
Referenced by Dune::ALU3dGrid< hexa >::boundaryProjection().
const DuneBoundaryProjectionVector* Dune::ALU3dGrid< elType, Comm >::bndVec_ [protected] |
Referenced by Dune::ALU3dGrid< hexa >::boundaryProjection().
int Dune::ALU3dGrid< elType, Comm >::coarsenMarked_ [mutable, protected] |
Communications* Dune::ALU3dGrid< elType, Comm >::communications_ [protected] |
Referenced by Dune::ALU3dGrid< hexa >::communications(), and Dune::ALU3dGrid< hexa >::createALUGrid().
const int Dune::ALU3dGrid< elType, Comm >::dimension = BaseType::dimension [static] |
The dimension of the grid.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
Referenced by Dune::ALU3dGridHierarchicIndexSet< elType, Comm >::size().
const int Dune::ALU3dGrid< elType, Comm >::dimensionworld = BaseType::dimensionworld [static] |
The dimension of the world the grid lives in.
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
Reimplemented in Dune::ALUSimplexGrid< 3, 3 >, and Dune::ALUCubeGrid< 3, 3 >.
const ALU3dGridElementType Dune::ALU3dGrid< elType, Comm >::elementType = elType [static] |
GridObjectFactoryType Dune::ALU3dGrid< elType, Comm >::factory_ [protected] |
Referenced by Dune::ALU3dGrid< hexa >::factory().
std::vector< std::vector<GeometryType> > Dune::ALU3dGrid< elType, Comm >::geomTypes_ [protected] |
Referenced by Dune::ALU3dGrid< hexa >::geomTypes().
ALU3dGridItemListType Dune::ALU3dGrid< elType, Comm >::ghostLeafList_[dimension] [mutable, protected] |
Referenced by Dune::ALU3dGrid< hexa >::getGhostLeafList().
ALU3dGridItemListType Dune::ALU3dGrid< elType, Comm >::ghostLevelList_[dimension][MAXL] [mutable, protected] |
Referenced by Dune::ALU3dGrid< hexa >::getGhostLevelList().
GlobalIdSetImp* Dune::ALU3dGrid< elType, Comm >::globalIdSet_ [mutable, protected] |
Referenced by Dune::ALU3dGrid< hexa >::globalIdSet().
HierarchicIndexSet Dune::ALU3dGrid< elType, Comm >::hIndexSet_ [protected] |
Referenced by Dune::ALU3dGrid< hexa >::hierarchicIndexSet().
LeafIndexSetImp* Dune::ALU3dGrid< elType, Comm >::leafIndexSet_ [mutable, protected] |
LeafVertexListType Dune::ALU3dGrid< elType, Comm >::leafVertexList_ [mutable, protected] |
ALU3dGridItemListType Dune::ALU3dGrid< elType, Comm >::levelEdgeList_[MAXL] [mutable, protected] |
Referenced by Dune::ALU3dGrid< hexa >::getEdgeList().
std::vector< LevelIndexSetImp * > Dune::ALU3dGrid< elType, Comm >::levelIndexVec_ [mutable, protected] |
LocalIdSetImp Dune::ALU3dGrid< elType, Comm >::localIdSet_ [protected] |
Referenced by Dune::ALU3dGrid< hexa >::localIdSet().
bool Dune::ALU3dGrid< elType, Comm >::lockPostAdapt_ [protected] |
int Dune::ALU3dGrid< elType, Comm >::maxlevel_ [protected] |
GitterImplType* Dune::ALU3dGrid< elType, Comm >::mygrid_ [mutable, protected] |
const ReferenceElementType& Dune::ALU3dGrid< elType, Comm >::referenceElement_ [protected] |
Referenced by Dune::ALU3dGrid< hexa >::referenceElement().
int Dune::ALU3dGrid< elType, Comm >::refineMarked_ [mutable, protected] |
const ALUGridRefinementType Dune::ALU3dGrid< elType, Comm >::refinementType_ [protected] |
Referenced by Dune::ALU3dGrid< hexa >::conformingRefinement().
SizeCacheType* Dune::ALU3dGrid< elType, Comm >::sizeCache_ [protected] |
VertexListType Dune::ALU3dGrid< elType, Comm >::vertexList_[MAXL] [mutable, protected] |
Referenced by Dune::ALU3dGrid< hexa >::getVertexList().
ALUGridBoundaryProjectionType* Dune::ALU3dGrid< elType, Comm >::vertexProjection_ [protected] |
Referenced by Dune::ALU3dGrid< hexa >::vertexProjection().