dune-grid  2.3.1-rc1
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
Dune::ALU3dGrid< ALU3dGridElementType, class > Class Template Reference

[ provides Dune::Grid ] More...

#include <dune/grid/alugrid/3d/entity.hh>

Inheritance diagram for Dune::ALU3dGrid< ALU3dGridElementType, class >:
Inheritance graph

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
 
typedef
ALU3dGridHierarchicIndexSet
< elType, Comm > 
HierarchicIndexSet
 Type of the hierarchic index set. More...
 
typedef
GridFamily::LevelIndexSetImp 
LevelIndexSetImp
 Type of the level index set, needed by data handle. More...
 
typedef GridFamily::LeafIndexSetImp LeafIndexSetImp
 Type of the leaf index set, needed by data handle. More...
 
typedef ReferenceElement
< alu3d_ctype, dimension
ReferenceElementType
 reference element type More...
 
typedef
Traits::DuneBoundaryProjectionType 
DuneBoundaryProjectionType
 boundary projection type More...
 
typedef
Traits::DuneBoundaryProjectionVector 
DuneBoundaryProjectionVector
 boundary projection type More...
 
typedef ALU3DSPACE ProjectVertex ALUGridVertexProjectionType
 type of ALUGrid Vertex Projection Interface More...
 
typedef
Traits::CollectiveCommunication 
CollectiveCommunication
 type of collective communication object More...
 
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 Traits::GlobalIdSet GlobalIdSet
 Type of the global id set. More...
 
typedef Traits::LocalIdSet LocalIdSet
 Type of the local id set. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
typedef ct ctype
 Define type used for coordinates in grid module. More...
 

Public Member Functions

virtual ~ALU3dGrid ()
 Desctructor. More...
 
int maxLevel () const
 Return maximum level defined in this grid. Levels are numbered maxLevel with 0 the coarsest level. More...
 
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. More...
 
template<int cd, PartitionIteratorType pitype>
Traits::template Codim< cd >
::template Partition< pitype >
::LevelIterator 
lend (int level) const
 one past the end on this level More...
 
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. More...
 
template<int cd>
Traits::template Codim< cd >
::template Partition
< All_Partition >
::LevelIterator 
lend (int level) const
 one past the end on this level More...
 
template<int codim, PartitionIteratorType pitype>
Traits::template Codim< codim >
::template Partition< pitype >
::LeafIterator 
leafbegin () const
 General definiton for a leaf iterator. More...
 
template<int codim, PartitionIteratorType pitype>
Traits::template Codim< codim >
::template Partition< pitype >
::LeafIterator 
leafend () const
 General definition for an end iterator on leaf level. More...
 
template<int codim>
Traits::template Codim< codim >
::LeafIterator 
leafbegin () const
 General definiton for a leaf iterator. More...
 
template<int codim>
Traits::template Codim< codim >
::LeafIterator 
leafend () const
 General definition for an end iterator on leaf level. More...
 
int size (int level, int cd) const
 number of grid entities per level and codim More...
 
int size (int codim) const
 number of leaf entities per codim in this process More...
 
int size (int level, GeometryType type) const
 number of entities per level and geometry type in this process More...
 
size_t numBoundarySegments () const
 number of boundary segments More...
 
int size (GeometryType type) const
 number of leaf entities per geometry type in this process More...
 
int global_size (int cd) const
 number of grid entities on all levels for given codim More...
 
int hierSetSize (int cd) const
 
const GlobalIdSetglobalIdSet () const
 get global id set of grid More...
 
const LocalIdSetlocalIdSet () const
 get global id set of grid More...
 
const Traits::LeafIndexSetleafIndexSet () const
 get leaf index set of the grid More...
 
const Traits::LevelIndexSetlevelIndexSet (int level) const
 get level index set of the grid More...
 
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. More...
 
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. More...
 
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 More...
 
int overlapSize (int level, int codim) const
 overlapSize is zero for this grid More...
 
int ghostSize (int codim) const
 ghostSize is one for codim 0 and zero otherwise for this grid More...
 
int overlapSize (int codim) const
 overlapSize is zero for this grid More...
 
template<class DataHandleImp , class DataTypeImp >
void 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. More...
 
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. More...
 
const CollectiveCommunicationcomm () const
 return const reference to a collective communication object. The return type is a model of Dune::CollectiveCommunication. More...
 
bool preAdapt ()
 returns if a least one entity was marked for coarsening More...
 
void postAdapt ()
 clear all entity new markers More...
 
bool adapt ()
 Refine all positive marked leaf entities, coarsen all negative marked entities if possible. More...
 
template<class GridImp , class DataHandle >
bool adapt (AdaptDataHandleInterface< GridImp, DataHandle > &handle)
 Refine all positive marked leaf entities, coarsen all negative marked entities if possible. More...
 
void globalRefine (int refCount)
 uses the interface, mark on entity and refineLocal More...
 
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 More...
 
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 More...
 
bool writeMacroGrid (const std::string path, const std::string filename) const
 write macro grid in ALUGrid macro format to path/filename.rank More...
 
template<GrapeIOFileFormatType ftype>
bool readGrid (const std::string filename, alu3d_ctype &time)
 read Grid from file filename and store time of mesh in time More...
 
void backup (std::ostream &) const
 backup to ostream More...
 
void restore (std::istream &)
 restore from istream More...
 
const HierarchicIndexSethierarchicIndexSet () const
 
void setMaxLevel (int mxl)
 
void updateStatus ()
 
bool mark (int refCount, const typename Traits::template Codim< 0 >::Entity &e)
 Marks an entity to be refined/coarsened in a subsequent adapt. More...
 
int getMark (const typename Traits::template Codim< 0 >::Entity &e) const
 returns adaptation mark for given entity More...
 
const std::vector< GeometryType > & geomTypes (int codim) const
 deliver all geometry types used in this grid More...
 
GitterImplTypemyGrid () const
 
virtual GitterImplTypecreateALUGrid (const std::string &macroName)
 
virtual GitterImplTypecreateALUGrid (std::istream &stream)
 
ALUGridVertexProjectionTypevertexProjection ()
 
virtual ALU3DSPACE
Gitter::Geometric::BuilderIF & 
getBuilder () const
 
virtual void duneNotifyMacroGridChanges ()
 
const ReferenceElementTypereferenceElement () const
 return reference to Dune reference element according to elType More...
 
template<class EntitySeed >
Traits::template Codim
< EntitySeed::codimension >
::EntityPointer 
entityPointer (const EntitySeed &seed) const
 
int nlinks () const
 
LeafVertexListTypegetLeafVertexList () const
 
int getLevelOfLeafVertex (const typename ALU3dImplTraits< elType, Comm >::VertexType &vertex) const
 
VertexListTypegetVertexList (int level) const
 
ALU3dGridItemListTypegetGhostLeafList (int codim) const
 
ALU3dGridItemListTypegetGhostLevelList (int codim, int level) const
 
ALU3dGridItemListTypegetEdgeList (int level) const
 
bool conformingRefinement () const
 
bool ghostCellsEnabled () const
 
template<int cd, PartitionIteratorType pitype>
ALU3dGrid< elType, Comm >
::Traits::template Codim< cd >
::template Partition< pitype >
::LevelIterator 
lbegin (int level) const
 
template<int cd, PartitionIteratorType pitype>
ALU3dGrid< elType, Comm >
::Traits::template Codim< cd >
::template Partition< pitype >
::LevelIterator 
lend (int level) const
 
template<int cd>
ALU3dGrid< elType, Comm >
::Traits::template Codim< cd >
::template Partition
< All_Partition >
::LevelIterator 
lbegin (int level) const
 
template<int cd>
ALU3dGrid< elType, Comm >
::Traits::template Codim< cd >
::template Partition
< All_Partition >
::LevelIterator 
lend (int level) const
 
template<int cd, PartitionIteratorType pitype>
ALU3dGrid< elType, Comm >
::Traits::template Codim< cd >
::template Partition< pitype >
::LeafIterator 
createLeafIteratorBegin (int level) const
 
template<int cd, PartitionIteratorType pitype>
ALU3dGrid< elType, Comm >
::Traits::template Codim< cd >
::template Partition< pitype >
::LeafIterator 
createLeafIteratorEnd (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. More...
 
Traits::template Partition
< All_Partition >
::LevelGridView 
levelView (int level) const
 View for a grid level for All_Partition. More...
 
Traits::template Partition
< pitype >::LeafGridView 
leafView () const
 View for the leaf grid. More...
 
Traits::template Partition
< All_Partition >
::LeafGridView 
leafView () const
 View for the leaf grid for All_Partition. More...
 
Traits::template Partition
< pitype >::LevelGridView 
levelGridView (int level) const
 View for a grid level. More...
 
Traits::template Partition
< All_Partition >
::LevelGridView 
levelGridView (int level) const
 View for a grid level for All_Partition. More...
 
Traits::template Partition
< pitype >::LeafGridView 
leafGridView () const
 View for the leaf grid. More...
 
Traits::template Partition
< All_Partition >
::LeafGridView 
leafGridView () const
 View for the leaf grid for All_Partition. More...
 
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. More...
 
int getMark (const typename Codim< 0 >::Entity &e) const
 returns adaptation mark for given entity More...
 

Static Public Member Functions

static std::string name ()
 for grid identification More...
 
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
 
static const int dimensionworld = BaseType::dimensionworld
 

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. More...
 
typedef GridFamily::GlobalIdSetImp GlobalIdSetImp
 
typedef ALU3dGridLeafIterator
< 0, All_Partition, const
ThisType
LeafIteratorImp
 
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< MyTypeSizeCacheType
 

Protected Member Functions

 ALU3dGrid (const std::string &macroTriangFilename, const MPICommunicatorType mpiComm, const DuneBoundaryProjectionType *bndPrj, const DuneBoundaryProjectionVector *bndVec, const ALUGridRefinementType refinementType)
 
 ALU3dGrid (const ThisType &)
 Copy constructor should not be used. More...
 
const ThisTypeoperator= (const ThisType &)
 assignment operator should not be used More...
 
void calcExtras ()
 reset size and global size, update Level- and LeafIndexSet, if they exist More...
 
void calcMaxLevel ()
 calculate maxlevel More...
 
void recalcGlobalSize ()
 make grid walkthrough and calc global size More...
 
void checkMacroGridFile (const std::string filename)
 check whether macro grid format is of our type More...
 
void checkMacroGrid ()
 check whether macro grid has the right element type More...
 
const DuneBoundaryProjectionTypeboundaryProjection (const int segmentIndex) const
 return boudanry projection for given segment Id More...
 
const Communicationscommunications () const
 
const GridObjectFactoryTypefactory () const
 
GridImp & asImp ()
 Barton-Nackman trick. More...
 
const GridImp & asImp () const
 Barton-Nackman trick. More...
 

Static Protected Member Functions

static
ReturnImplementationType
< InterfaceType >
::ImplementationType & 
getRealImplementation (InterfaceType &i)
 return real implementation of interface class More...
 

Protected Attributes

GitterImplTypemygrid_
 
int maxlevel_
 
int coarsenMarked_
 
int refineMarked_
 
std::vector< std::vector
< GeometryType > > 
geomTypes_
 
HierarchicIndexSet hIndexSet_
 
GlobalIdSetImpglobalIdSet_
 
LocalIdSetImp localIdSet_
 
std::vector< LevelIndexSetImp * > levelIndexVec_
 
LeafIndexSetImpleafIndexSet_
 
const ReferenceElementTypereferenceElement_
 
VertexListType vertexList_ [MAXL]
 
ALU3dGridItemListType ghostLeafList_ [dimension]
 
ALU3dGridItemListType ghostLevelList_ [dimension][MAXL]
 
ALU3dGridItemListType levelEdgeList_ [MAXL]
 
LeafVertexListType leafVertexList_
 
SizeCacheTypesizeCache_
 
GridObjectFactoryType factory_
 
bool lockPostAdapt_
 
const DuneBoundaryProjectionTypebndPrj_
 
const
DuneBoundaryProjectionVector
bndVec_
 
ALUGridBoundaryProjectionTypevertexProjection_
 
Communicationscommunications_
 
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 >
 
struct 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 >
 

Detailed Description

template<ALU3dGridElementType, class>
class Dune::ALU3dGrid< ALU3dGridElementType, class >

[ 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.

Note
Adaptive parallel grid supporting dynamic load balancing, written mainly by Bernard Schupp. This grid supports hexahedrons and tetrahedrons.

(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 .

Author
Robert Kloefkorn

Member Typedef Documentation

template<ALU3dGridElementType , class >
typedef ALUGridBoundaryProjection< ThisType, alu3d_ctype > Dune::ALU3dGrid< ALU3dGridElementType, class >::ALUGridBoundaryProjectionType
protected
template<ALU3dGridElementType , class >
typedef ALU3DSPACE ProjectVertex Dune::ALU3dGrid< ALU3dGridElementType, class >::ALUGridVertexProjectionType

type of ALUGrid Vertex Projection Interface

template<ALU3dGridElementType , class >
typedef Traits::CollectiveCommunication Dune::ALU3dGrid< ALU3dGridElementType, class >::CollectiveCommunication

type of collective communication object

template<ALU3dGridElementType , class >
typedef ALU3dGridCommunications< elType, Comm > Dune::ALU3dGrid< ALU3dGridElementType, class >::Communications
template<int dim, int dimworld, class ct , class GridFamily >
typedef ct Dune::Grid< dim, dimworld, ct, GridFamily >::ctype
inherited

Define type used for coordinates in grid module.

template<ALU3dGridElementType , class >
typedef Traits::DuneBoundaryProjectionType Dune::ALU3dGrid< ALU3dGridElementType, class >::DuneBoundaryProjectionType

boundary projection type

boundary projection type

template<ALU3dGridElementType , class >
typedef MakeableInterfaceObject<typename Traits::template Codim<2>::Entity> Dune::ALU3dGrid< ALU3dGridElementType, class >::EdgeObject
template<ALU3dGridElementType , class >
typedef MakeableInterfaceObject<typename Traits::template Codim<0>::Entity> Dune::ALU3dGrid< ALU3dGridElementType, class >::EntityObject
template<ALU3dGridElementType , class >
typedef MakeableInterfaceObject<typename Traits::template Codim<1>::Entity> Dune::ALU3dGrid< ALU3dGridElementType, class >::FaceObject
template<ALU3dGridElementType , class >
typedef MakeableInterfaceObject< typename Traits::template Codim< 0 >::Geometry > Dune::ALU3dGrid< ALU3dGridElementType, class >::GeometryObject
protected
template<ALU3dGridElementType , class >
typedef ALU3dImplTraits< elType, Comm >::GitterImplType Dune::ALU3dGrid< ALU3dGridElementType, class >::GitterImplType
protected
template<ALU3dGridElementType , class >
typedef Traits::GlobalIdSet Dune::ALU3dGrid< ALU3dGridElementType, class >::GlobalIdSet

Type of the global id set.

template<ALU3dGridElementType , class >
typedef GridFamily::GlobalIdSetImp Dune::ALU3dGrid< ALU3dGridElementType, class >::GlobalIdSetImp
protected
template<ALU3dGridElementType , class >
typedef ALU3dGridFamily< elType, Comm > Dune::ALU3dGrid< ALU3dGridElementType, class >::GridFamily
template<ALU3dGridElementType , class >
typedef ALUGridObjectFactory< ThisType > Dune::ALU3dGrid< ALU3dGridElementType, class >::GridObjectFactoryType
template<ALU3dGridElementType , class >
typedef ALU3dGridHierarchicIndexSet< elType, Comm > Dune::ALU3dGrid< ALU3dGridElementType, class >::HierarchicIndexSet

Type of the hierarchic index set.

template<int dim, int dimworld, class ct , class GridFamily >
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.

template<ALU3dGridElementType , class >
typedef ALU3dGridHierarchicIterator< const ThisType > Dune::ALU3dGrid< ALU3dGridElementType, class >::HierarchicIteratorImp
protected
template<ALU3dGridElementType , class >
typedef ObjectStreamType Dune::ALU3dGrid< ALU3dGridElementType, class >::InStreamType
template<ALU3dGridElementType , class >
typedef ALU3dGridIntersectionIterator<const ThisType> Dune::ALU3dGrid< ALU3dGridElementType, class >::IntersectionIteratorImp
template<int dim, int dimworld, class ct , class GridFamily >
typedef Partition< All_Partition >:: LeafGridView Dune::Grid< dim, dimworld, ct, GridFamily >::LeafGridView
inherited
template<int dim, int dimworld, class ct , class GridFamily >
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.

template<ALU3dGridElementType , class >
typedef GridFamily::LeafIndexSetImp Dune::ALU3dGrid< ALU3dGridElementType, class >::LeafIndexSetImp

Type of the leaf index set, needed by data handle.

template<int dim, int dimworld, class ct , class GridFamily >
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.

template<int dim, int dimworld, class ct , class GridFamily >
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.

template<ALU3dGridElementType , class >
typedef ALU3dGridIntersectionIterator<const ThisType> Dune::ALU3dGrid< ALU3dGridElementType, class >::LeafIntersectionIteratorImp
template<ALU3dGridElementType , class >
typedef Traits::template Codim< 0 >::LeafIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::LeafIterator
protected
template<ALU3dGridElementType , class >
typedef ALU3dGridLeafIterator< 0, All_Partition, const ThisType > Dune::ALU3dGrid< ALU3dGridElementType, class >::LeafIteratorImp
protected
template<ALU3dGridElementType , class >
typedef Traits::template Codim< 0 >::LeafIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::LeafIteratorType
protected
template<ALU3dGridElementType , class >
typedef ALU3dGridLeafVertexList< Comm > Dune::ALU3dGrid< ALU3dGridElementType, class >::LeafVertexListType
protected
template<int dim, int dimworld, class ct , class GridFamily >
typedef Partition< All_Partition >:: LevelGridView Dune::Grid< dim, dimworld, ct, GridFamily >::LevelGridView
inherited

View types for All_Partition.

template<int dim, int dimworld, class ct , class GridFamily >
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.

template<ALU3dGridElementType , class >
typedef GridFamily::LevelIndexSetImp Dune::ALU3dGrid< ALU3dGridElementType, class >::LevelIndexSetImp

Type of the level index set, needed by data handle.

template<int dim, int dimworld, class ct , class GridFamily >
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.

template<int dim, int dimworld, class ct , class GridFamily >
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.

template<ALU3dGridElementType , class >
typedef ALU3dGridLevelIntersectionIterator<const ThisType> Dune::ALU3dGrid< ALU3dGridElementType, class >::LevelIntersectionIteratorImp
template<ALU3dGridElementType , class >
typedef Traits::LocalIdSet Dune::ALU3dGrid< ALU3dGridElementType, class >::LocalIdSet

Type of the local id set.

template<ALU3dGridElementType , class >
typedef GridFamily::LocalIdSetImp Dune::ALU3dGrid< ALU3dGridElementType, class >::LocalIdSetImp
protected

Type of the local id set.

template<ALU3dGridElementType , class >
typedef Comm Dune::ALU3dGrid< ALU3dGridElementType, class >::MPICommunicatorType
template<ALU3dGridElementType , class >
typedef ALU3DSPACE GatherScatterType::ObjectStreamType Dune::ALU3dGrid< ALU3dGridElementType, class >::ObjectStreamType
template<ALU3dGridElementType , class >
typedef ObjectStreamType Dune::ALU3dGrid< ALU3dGridElementType, class >::OutStreamType
template<ALU3dGridElementType , class >
typedef ReferenceElement< alu3d_ctype, dimension > Dune::ALU3dGrid< ALU3dGridElementType, class >::ReferenceElementType

reference element type

template<ALU3dGridElementType , class >
typedef SizeCache<MyType> Dune::ALU3dGrid< ALU3dGridElementType, class >::SizeCacheType
protected
template<ALU3dGridElementType , class >
typedef GridFamily::Traits Dune::ALU3dGrid< ALU3dGridElementType, class >::Traits
template<ALU3dGridElementType , class >
typedef ALU3dGridVertexList< Comm > Dune::ALU3dGrid< ALU3dGridElementType, class >::VertexListType
protected
template<ALU3dGridElementType , class >
typedef MakeableInterfaceObject<typename Traits::template Codim<3>::Entity> Dune::ALU3dGrid< ALU3dGridElementType, class >::VertexObject

Member Enumeration Documentation

template<int dim, int dimworld, class ct , class GridFamily >
anonymous enum
inherited

A constant that exports the template parameter dim.

Enumerator
dimension 

The dimension of the grid.

template<int dim, int dimworld, class ct , class GridFamily >
anonymous enum
inherited

A constant that exports the template parameter dimworld.

Enumerator
dimensionworld 

The dimension of the world the grid lives in.

template<ALU3dGridElementType , class >
anonymous enum
Enumerator
refineStepsForHalf 
template<ALU3dGridElementType , class >
anonymous enum
protected

max number of levels

Enumerator
MAXL 

maximal number of levels is 32

template<ALU3dGridElementType , class >
anonymous enum
protected

element chunk for refinement

Enumerator
newElementsChunk_ 

normal default number of new elements for new adapt method

template<ALU3dGridElementType , class >
anonymous enum
protected

upper estimate on number of elements that could be created when a new element is created

Enumerator
refineEstimate_ 

if one element is refined then it causes apporximately not more than this number of new elements

template<ALU3dGridElementType , class >
anonymous enum
protected
Enumerator
numberOfGeomTypes 

Constructor & Destructor Documentation

template<ALU3dGridElementType elType, class Comm >
Dune::ALU3dGrid< elType, Comm >::ALU3dGrid ( const std::string &  macroTriangFilename,
const MPICommunicatorType  mpiComm,
const DuneBoundaryProjectionType bndPrj,
const DuneBoundaryProjectionVector bndVec,
const ALUGridRefinementType  refinementType 
)
inlineprotected

Constructor which reads an ALU3dGrid Macro Triang file or given GridFile

References Dune::checkMacroGrid(), Dune::hexa, and Dune::tetra.

template<ALU3dGridElementType , class >
virtual Dune::ALU3dGrid< ALU3dGridElementType, class >::~ALU3dGrid ( )
virtual

Desctructor.

template<ALU3dGridElementType , class >
Dune::ALU3dGrid< ALU3dGridElementType, class >::ALU3dGrid ( const ThisType )
protected

Copy constructor should not be used.

Member Function Documentation

template<ALU3dGridElementType , class >
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::adapt ( )

Refine all positive marked leaf entities, coarsen all negative marked entities if possible.

Returns
true if a least one entity was refined

The complete adaptation process works as follows:

template<ALU3dGridElementType elType, class Comm >
template<class GridImp , class DataHandle >
bool Dune::ALU3dGrid< elType, Comm >::adapt ( AdaptDataHandleInterface< GridImp, DataHandle > &  handle)
inline

Refine all positive marked leaf entities, coarsen all negative marked entities if possible.

Returns
true if a least one entity was refined

The complete adaptation process works as follows:

References ALU3DSPACE, Dune::Alberta::max(), Dune::AdaptDataHandleInterface< Grid, Impl >::postAdapt(), and Dune::AdaptDataHandleInterface< Grid, Impl >::preAdapt().

template<int dim, int dimworld, class ct , class GridFamily >
GridImp& Dune::Grid< dim, dimworld, ct, GridFamily >::asImp ( )
inlineprotectedinherited

Barton-Nackman trick.

Referenced by Dune::Grid< dim, dimworld, ct, GridFamily >::adapt(), Dune::Grid< dim, dimworld, ct, GridFamily >::comm(), Dune::Grid< dim, dimworld, ct, GridFamily >::communicate(), Dune::Grid< dim, dimworld, ct, GridFamily >::entityPointer(), Dune::Grid< dim, dimworld, ct, GridFamily >::getMark(), Dune::Grid< dim, dimworld, ct, GridFamily >::ghostSize(), Dune::Grid< dim, dimworld, ct, GridFamily >::globalIdSet(), Dune::Grid< dim, dimworld, ct, GridFamily >::globalRefine(), Dune::Grid< dim, dimworld, ct, GridFamily >::lbegin(), Dune::Grid< dim, dimworld, ct, GridFamily >::leafbegin(), Dune::Grid< dim, dimworld, ct, GridFamily >::leafend(), Dune::Grid< dim, dimworld, ct, GridFamily >::leafGridView(), Dune::GridDefaultImplementation< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::leafGridView(), Dune::Grid< dim, dimworld, ct, GridFamily >::leafIndexSet(), Dune::Grid< dim, dimworld, ct, GridFamily >::leafView(), Dune::GridDefaultImplementation< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::leafView(), Dune::Grid< dim, dimworld, ct, GridFamily >::lend(), Dune::Grid< dim, dimworld, ct, GridFamily >::levelGridView(), Dune::GridDefaultImplementation< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::levelGridView(), Dune::Grid< dim, dimworld, ct, GridFamily >::levelIndexSet(), Dune::Grid< dim, dimworld, ct, GridFamily >::levelView(), Dune::GridDefaultImplementation< dim, dimworld, _ctype, SGridFamily< dim, dimworld, _ctype > >::levelView(), Dune::Grid< dim, dimworld, ct, GridFamily >::loadBalance(), Dune::Grid< dim, dimworld, ct, GridFamily >::localIdSet(), Dune::Grid< dim, dimworld, ct, GridFamily >::mark(), Dune::Grid< dim, dimworld, ct, GridFamily >::maxLevel(), Dune::Grid< dim, dimworld, ct, GridFamily >::numBoundarySegments(), Dune::Grid< dim, dimworld, ct, GridFamily >::overlapSize(), Dune::Grid< dim, dimworld, ct, GridFamily >::postAdapt(), Dune::Grid< dim, dimworld, ct, GridFamily >::preAdapt(), and Dune::Grid< dim, dimworld, ct, GridFamily >::size().

template<int dim, int dimworld, class ct , class GridFamily >
const GridImp& Dune::Grid< dim, dimworld, ct, GridFamily >::asImp ( ) const
inlineprotectedinherited

Barton-Nackman trick.

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::backup ( std::ostream &  ) const

backup to ostream

template<ALU3dGridElementType , class >
const DuneBoundaryProjectionType* Dune::ALU3dGrid< ALU3dGridElementType, class >::boundaryProjection ( const int  segmentIndex) const
inlineprotected

return boudanry projection for given segment Id

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::calcExtras ( )
protected

reset size and global size, update Level- and LeafIndexSet, if they exist

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::calcMaxLevel ( )
protected

calculate maxlevel

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::checkMacroGrid ( )
protected

check whether macro grid has the right element type

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::checkMacroGridFile ( const std::string  filename)
protected

check whether macro grid format is of our type

template<ALU3dGridElementType , class >
const CollectiveCommunication& Dune::ALU3dGrid< ALU3dGridElementType, class >::comm ( ) const
inline

return const reference to a collective communication object. The return type is a model of Dune::CollectiveCommunication.

template<ALU3dGridElementType , class >
template<class DataHandleImp , class DataType >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::communicate ( CommDataHandleIF< DataHandleImp, DataType > &  data,
InterfaceType  iftype,
CommunicationDirection  dir,
int  level 
) const
inline
template<ALU3dGridElementType , class >
template<class DataHandleImp , class DataType >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::communicate ( CommDataHandleIF< DataHandleImp, DataType > &  data,
InterfaceType  iftype,
CommunicationDirection  dir 
) const
inline
template<ALU3dGridElementType , class >
template<class DataHandleImp , class DataTypeImp >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::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.

Parameters
dataA data handle telling the method what data is communicated and how this should be done.
interfaceThe communication interface to use.
dirThe direction of the communication along the interface (forward or backward.
levelThe index of the grid level where the communication should happen.
template<ALU3dGridElementType , class >
template<class DataHandleImp , class DataTypeImp >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::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.

template<ALU3dGridElementType , class >
const Communications& Dune::ALU3dGrid< ALU3dGridElementType, class >::communications ( ) const
inlineprotected
template<ALU3dGridElementType , class >
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::conformingRefinement ( ) const
inline
template<ALU3dGridElementType , class >
virtual GitterImplType* Dune::ALU3dGrid< ALU3dGridElementType, class >::createALUGrid ( const std::string &  macroName)
inlinevirtual
template<ALU3dGridElementType , class >
virtual GitterImplType* Dune::ALU3dGrid< ALU3dGridElementType, class >::createALUGrid ( std::istream &  stream)
inlinevirtual
template<ALU3dGridElementType , class >
template<int cd, PartitionIteratorType pitype>
ALU3dGrid< elType, Comm >::Traits::template Codim< cd >::template Partition< pitype >::LeafIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::createLeafIteratorBegin ( int  level) const
inline
template<ALU3dGridElementType , class >
template<int cd, PartitionIteratorType pitype>
ALU3dGrid< elType, Comm >::Traits::template Codim< cd >::template Partition< pitype >::LeafIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::createLeafIteratorEnd ( int  level) const
inline
template<ALU3dGridElementType , class >
static MPICommunicatorType Dune::ALU3dGrid< ALU3dGridElementType, class >::defaultCommunicator ( )
inlinestatic
template<ALU3dGridElementType , class >
virtual void Dune::ALU3dGrid< ALU3dGridElementType, class >::duneNotifyMacroGridChanges ( )
inlinevirtual
template<ALU3dGridElementType , class >
template<class EntitySeed >
Traits :: template Codim< EntitySeed :: codimension >:: EntityPointer Dune::ALU3dGrid< ALU3dGridElementType, class >::entityPointer ( const EntitySeed seed) const
inline
template<ALU3dGridElementType , class >
const GridObjectFactoryType& Dune::ALU3dGrid< ALU3dGridElementType, class >::factory ( ) const
inlineprotected
template<ALU3dGridElementType , class >
const std::vector<GeometryType>& Dune::ALU3dGrid< ALU3dGridElementType, class >::geomTypes ( int  codim) const
inline

deliver all geometry types used in this grid

Referenced by Dune::ALU3dGridHierarchicIndexSet< elType, Comm >::geomTypes().

template<ALU3dGridElementType , class >
virtual ALU3DSPACE Gitter::Geometric::BuilderIF& Dune::ALU3dGrid< ALU3dGridElementType, class >::getBuilder ( ) const
inlinevirtual
template<ALU3dGridElementType , class >
ALU3dGridItemListType& Dune::ALU3dGrid< ALU3dGridElementType, class >::getEdgeList ( int  level) const
inline
template<ALU3dGridElementType , class >
ALU3dGridItemListType& Dune::ALU3dGrid< ALU3dGridElementType, class >::getGhostLeafList ( int  codim) const
inline
template<ALU3dGridElementType , class >
ALU3dGridItemListType& Dune::ALU3dGrid< ALU3dGridElementType, class >::getGhostLevelList ( int  codim,
int  level 
) const
inline
template<ALU3dGridElementType , class >
LeafVertexListType& Dune::ALU3dGrid< ALU3dGridElementType, class >::getLeafVertexList ( ) const
inline
template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::getLevelOfLeafVertex ( const typename ALU3dImplTraits< elType, Comm >::VertexType &  vertex) const
inline
template<int dim, int dimworld, class ct , class GridFamily >
int Dune::Grid< dim, dimworld, ct, GridFamily >::getMark ( const typename Codim< 0 >::Entity e) const
inlineinherited

returns adaptation mark for given entity

Parameters
[in]eEntity for which adaptation mark should be determined
Returns
int adaptation mark currently set for given Entity e

References Dune::Grid< dim, dimworld, ct, GridFamily >::asImp().

template<ALU3dGridElementType elType, class Comm >
int Dune::ALU3dGrid< elType, Comm >::getMark ( const typename Traits::template Codim< 0 >::Entity e) const
inline

returns adaptation mark for given entity

Parameters
[in]eEntity for which adaptation mark should be determined
Returns
int adaptation mark currently set for given Entity e
static ReturnImplementationType<InterfaceType>::ImplementationType& Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::getRealImplementation ( InterfaceType i)
inlinestaticprotectedinherited
template<ALU3dGridElementType , class >
template<class IntersectionType >
static const BaseType :: template ReturnImplementationType< IntersectionType >:: ImplementationType& Dune::ALU3dGrid< ALU3dGridElementType, class >::getRealIntersection ( const IntersectionType &  intersection)
inlinestatic
template<ALU3dGridElementType , class >
VertexListType& Dune::ALU3dGrid< ALU3dGridElementType, class >::getVertexList ( int  level) const
inline
template<ALU3dGridElementType , class >
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::ghostCellsEnabled ( ) const
inline
template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::ghostSize ( int  level,
int  codim 
) const

ghostSize is one for codim 0 and zero otherwise for this grid

template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::ghostSize ( int  codim) const

ghostSize is one for codim 0 and zero otherwise for this grid

template<ALU3dGridElementType elType, class Comm >
int Dune::ALU3dGrid< elType, Comm >::global_size ( int  cd) const
inline

number of grid entities on all levels for given codim

template<ALU3dGridElementType , class >
const GlobalIdSet& Dune::ALU3dGrid< ALU3dGridElementType, class >::globalIdSet ( ) const
inline

get global id set of grid

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::globalRefine ( int  refCount)

uses the interface, mark on entity and refineLocal

template<ALU3dGridElementType elType, class Comm >
template<class GridImp , class DataHandle >
void Dune::ALU3dGrid< elType, Comm >::globalRefine ( int  refCount,
AdaptDataHandleInterface< GridImp, DataHandle > &  handle 
)
inline
template<ALU3dGridElementType , class >
const HierarchicIndexSet& Dune::ALU3dGrid< ALU3dGridElementType, class >::hierarchicIndexSet ( ) const
inline
template<ALU3dGridElementType elType, class Comm >
int Dune::ALU3dGrid< elType, Comm >::hierSetSize ( int  cd) const
inline
template<ALU3dGridElementType , class >
template<int cd, PartitionIteratorType pitype>
ALU3dGrid< elType, Comm >::Traits::template Codim< cd >::template Partition< pitype >::LevelIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::lbegin ( int  level) const
inline
template<ALU3dGridElementType , class >
template<int cd>
ALU3dGrid< elType, Comm >::Traits::template Codim< cd >::template Partition< All_Partition >::LevelIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::lbegin ( int  level) const
inline
template<ALU3dGridElementType , class >
template<int cd, PartitionIteratorType pitype>
Traits::template Codim<cd>::template Partition<pitype>::LevelIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::lbegin ( int  level) const

Iterator to first entity of given codim on level.

template<ALU3dGridElementType , class >
template<int cd>
Traits::template Codim<cd>:: template Partition<All_Partition>::LevelIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::lbegin ( int  level) const

Iterator to first entity of given codim on level.

template<ALU3dGridElementType , class >
template<int codim, PartitionIteratorType pitype>
Traits::template Codim<codim>::template Partition<pitype>::LeafIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::leafbegin ( ) const

General definiton for a leaf iterator.

template<ALU3dGridElementType , class >
template<int codim>
Traits::template Codim<codim>::LeafIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::leafbegin ( ) const

General definiton for a leaf iterator.

template<ALU3dGridElementType , class >
template<int codim, PartitionIteratorType pitype>
Traits::template Codim<codim>::template Partition<pitype>::LeafIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::leafend ( ) const

General definition for an end iterator on leaf level.

template<ALU3dGridElementType , class >
template<int codim>
Traits::template Codim<codim>::LeafIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::leafend ( ) const

General definition for an end iterator on leaf level.

Traits::template Partition<pitype>::LeafGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::leafGridView ( ) const
inlineinherited

View for the leaf grid.

Traits::template Partition<All_Partition>::LeafGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::leafGridView ( ) const
inlineinherited

View for the leaf grid for All_Partition.

template<ALU3dGridElementType , class >
const Traits :: LeafIndexSet& Dune::ALU3dGrid< ALU3dGridElementType, class >::leafIndexSet ( ) const

get leaf index set of the grid

Traits::template Partition<pitype>::LeafGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::leafView ( ) const
inlineinherited

View for the leaf grid.

Deprecated:
"The method levelView has been renamed to leafGridView."
Traits::template Partition<All_Partition>::LeafGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::leafView ( ) const
inlineinherited

View for the leaf grid for All_Partition.

Deprecated:
"The method leafView has been renamed to leafGridView."
template<ALU3dGridElementType , class >
template<int cd, PartitionIteratorType pitype>
ALU3dGrid< elType, Comm >::Traits::template Codim< cd >::template Partition< pitype >::LevelIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::lend ( int  level) const
inline
template<ALU3dGridElementType , class >
template<int cd>
ALU3dGrid< elType, Comm >::Traits::template Codim< cd >::template Partition< All_Partition >::LevelIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::lend ( int  level) const
inline
template<ALU3dGridElementType , class >
template<int cd, PartitionIteratorType pitype>
Traits::template Codim<cd>::template Partition<pitype>::LevelIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::lend ( int  level) const

one past the end on this level

template<ALU3dGridElementType , class >
template<int cd>
Traits::template Codim<cd>:: template Partition<All_Partition>::LevelIterator Dune::ALU3dGrid< ALU3dGridElementType, class >::lend ( int  level) const

one past the end on this level

Traits::template Partition<pitype>::LevelGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::levelGridView ( int  level) const
inlineinherited

View for a grid level.

Traits::template Partition<All_Partition>::LevelGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::levelGridView ( int  level) const
inlineinherited

View for a grid level for All_Partition.

template<ALU3dGridElementType , class >
const Traits :: LevelIndexSet& Dune::ALU3dGrid< ALU3dGridElementType, class >::levelIndexSet ( int  level) const

get level index set of the grid

Traits::template Partition<pitype>::LevelGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::levelView ( int  level) const
inlineinherited

View for a grid level.

Deprecated:
"The method levelView has been renamed to levelGridView."
Traits::template Partition<All_Partition>::LevelGridView Dune::GridDefaultImplementation< dim, dimworld, alu3d_ctype , ALU3dGridFamily< elType, Comm > >::levelView ( int  level) const
inlineinherited

View for a grid level for All_Partition.

Deprecated:
"The method levelView has been renamed to levelGridView."
template<ALU3dGridElementType elType, class Comm >
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.

Referenced by Dune::ALU3dGrid< hexa >::loadBalance().

template<ALU3dGridElementType elType, class Comm >
template<class DataHandle >
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.

Parameters
datathe 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 ();
template<ALU3dGridElementType , class >
template<class DataHandleImpl , class Data >
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::loadBalance ( CommDataHandleIF< DataHandleImpl, Data > &  dataHandle)
inline
template<ALU3dGridElementType , class >
const LocalIdSet& Dune::ALU3dGrid< ALU3dGridElementType, class >::localIdSet ( ) const
inline

get global id set of grid

template<int dim, int dimworld, class ct , class GridFamily >
bool Dune::Grid< dim, dimworld, ct, GridFamily >::mark ( int  refCount,
const typename Codim< 0 >::Entity e 
)
inlineinherited

Marks an entity to be refined/coarsened in a subsequent adapt.

Parameters
[in]refCountNumber of subdivisions that should be applied. Negative value means coarsening.
[in]eEntity that should be marked
Returns
true if Entity was marked, false otherwise.

References Dune::Grid< dim, dimworld, ct, GridFamily >::asImp().

template<ALU3dGridElementType elType, class Comm >
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.

Parameters
[in]refCountNumber of subdivisions that should be applied. Negative value means coarsening.
[in]eEntity that should be marked
Returns
true if Entity was marked, false otherwise.
template<ALU3dGridElementType elType, class 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.

Referenced by Dune::ALU3dGrid< hexa >::getEdgeList(), Dune::ALU3dGrid< hexa >::getGhostLevelList(), and Dune::ALU3dGrid< hexa >::getVertexList().

template<ALU3dGridElementType elType, class Comm >
ALU3dGrid< elType, Comm >::GitterImplType & Dune::ALU3dGrid< elType, Comm >::myGrid ( ) const
inline
template<ALU3dGridElementType elType, class Comm >
std::string Dune::ALU3dGrid< elType, Comm >::name ( )
inlinestatic

for grid identification

References Dune::hexa.

template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::nlinks ( ) const
inline
template<ALU3dGridElementType , class >
size_t Dune::ALU3dGrid< ALU3dGridElementType, class >::numBoundarySegments ( ) const

number of boundary segments

template<ALU3dGridElementType , class >
const ThisType& Dune::ALU3dGrid< ALU3dGridElementType, class >::operator= ( const ThisType )
protected

assignment operator should not be used

template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::overlapSize ( int  level,
int  codim 
) const
inline

overlapSize is zero for this grid

template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::overlapSize ( int  codim) const
inline

overlapSize is zero for this grid

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::postAdapt ( )

clear all entity new markers

template<ALU3dGridElementType , class >
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::preAdapt ( )

returns if a least one entity was marked for coarsening

template<ALU3dGridElementType , class >
template<GrapeIOFileFormatType ftype>
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::readGrid ( const std::string  filename,
alu3d_ctype time 
)

read Grid from file filename and store time of mesh in time

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::recalcGlobalSize ( )
protected

make grid walkthrough and calc global size

template<ALU3dGridElementType , class >
const ReferenceElementType& Dune::ALU3dGrid< ALU3dGridElementType, class >::referenceElement ( ) const
inline

return reference to Dune reference element according to elType

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::restore ( std::istream &  )

restore from istream

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::setMaxLevel ( int  mxl)
template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::size ( int  level,
int  cd 
) const

number of grid entities per level and codim

template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::size ( int  codim) const

number of leaf entities per codim in this process

template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::size ( int  level,
GeometryType  type 
) const

number of entities per level and geometry type in this process

template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::size ( GeometryType  type) const

number of leaf entities per geometry type in this process

template<ALU3dGridElementType , class >
void Dune::ALU3dGrid< ALU3dGridElementType, class >::updateStatus ( )
template<ALU3dGridElementType , class >
ALUGridVertexProjectionType* Dune::ALU3dGrid< ALU3dGridElementType, class >::vertexProjection ( )
inline
template<ALU3dGridElementType , class >
template<GrapeIOFileFormatType ftype>
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::writeGrid ( const std::string  filename,
alu3d_ctype  time 
) const

write Grid to file in specified FileFormatType

template<ALU3dGridElementType , class >
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::writeGrid_Ascii ( const std::string  filename,
alu3d_ctype  time,
bool  scientific = false 
) const

write leaf grid in macro grid format to ascii file

template<ALU3dGridElementType , class >
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::writeGrid_Xdr ( const std::string  filename,
alu3d_ctype  time 
) const
template<ALU3dGridElementType , class >
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::writeMacroGrid ( const std::string  path,
const std::string  filename 
) const

write macro grid in ALUGrid macro format to path/filename.rank

Friends And Related Function Documentation

template<ALU3dGridElementType , class >
friend struct ALU3dGridCommHelper< elType, Comm >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntity< 0, 3, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntity< 1, 3, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntity< 2, 3, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntity< 3, 3, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntityPointer< 0, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntityPointer< 1, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntityPointer< 2, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntityPointer< 3, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntityPointerBase< 0, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntityPointerBase< 1, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntityPointerBase< 2, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridEntityPointerBase< 3, const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridGlobalIdSet< elType, Comm >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridHierarchicIndexSet< elType, Comm >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridHierarchicIterator< const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridIntersectionIterator< const ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridIntersectionIterator< ThisType >
friend
template<ALU3dGridElementType , class >
friend class ALU3dGridLocalIdSet< elType, Comm >
friend
template<ALU3dGridElementType , class >
friend class ALUGridBoundaryProjection< ThisType, alu3d_ctype >
friend
template<ALU3dGridElementType , class >
friend class ALULocalGeometryStorage< const ThisType, GeometryObject, 8 >
friend
template<ALU3dGridElementType , class >
friend class Conversion< const ThisType, HasHierarchicIndexSet >
friend
template<ALU3dGridElementType , class >
friend class Conversion< const ThisType, HasObjectStream >
friend
template<ALU3dGridElementType , class >
friend class Conversion< ThisType, HasHierarchicIndexSet >
friend
template<ALU3dGridElementType , class >
friend class Conversion< ThisType, HasObjectStream >
friend
template<ALU3dGridElementType , class >
friend class IntersectionIteratorWrapper< const ThisType, LeafIntersectionIteratorImp >
friend
template<ALU3dGridElementType , class >
friend class IntersectionIteratorWrapper< const ThisType, LevelIntersectionIteratorImp >
friend
template<ALU3dGridElementType , class >
friend class LeafIntersectionIteratorWrapper< const ThisType >
friend
template<ALU3dGridElementType , class >
friend class LevelIntersectionIteratorWrapper< const ThisType >
friend

Member Data Documentation

template<ALU3dGridElementType , class >
const DuneBoundaryProjectionType* Dune::ALU3dGrid< ALU3dGridElementType, class >::bndPrj_
protected
template<ALU3dGridElementType , class >
const DuneBoundaryProjectionVector* Dune::ALU3dGrid< ALU3dGridElementType, class >::bndVec_
protected
template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::coarsenMarked_
mutableprotected
template<ALU3dGridElementType , class >
Communications* Dune::ALU3dGrid< ALU3dGridElementType, class >::communications_
protected
template<ALU3dGridElementType , class >
const int Dune::ALU3dGrid< ALU3dGridElementType, class >::dimension = BaseType::dimension
static
template<ALU3dGridElementType , class >
const int Dune::ALU3dGrid< ALU3dGridElementType, class >::dimensionworld = BaseType::dimensionworld
static
template<ALU3dGridElementType , class >
const ALU3dGridElementType Dune::ALU3dGrid< ALU3dGridElementType, class >::elementType = elType
static
template<ALU3dGridElementType , class >
GridObjectFactoryType Dune::ALU3dGrid< ALU3dGridElementType, class >::factory_
protected
template<ALU3dGridElementType , class >
std::vector< std::vector<GeometryType> > Dune::ALU3dGrid< ALU3dGridElementType, class >::geomTypes_
protected
template<ALU3dGridElementType , class >
ALU3dGridItemListType Dune::ALU3dGrid< ALU3dGridElementType, class >::ghostLeafList_[dimension]
mutableprotected
template<ALU3dGridElementType , class >
ALU3dGridItemListType Dune::ALU3dGrid< ALU3dGridElementType, class >::ghostLevelList_[dimension][MAXL]
mutableprotected
template<ALU3dGridElementType , class >
GlobalIdSetImp* Dune::ALU3dGrid< ALU3dGridElementType, class >::globalIdSet_
mutableprotected
template<ALU3dGridElementType , class >
HierarchicIndexSet Dune::ALU3dGrid< ALU3dGridElementType, class >::hIndexSet_
protected
template<ALU3dGridElementType , class >
LeafIndexSetImp* Dune::ALU3dGrid< ALU3dGridElementType, class >::leafIndexSet_
mutableprotected
template<ALU3dGridElementType , class >
LeafVertexListType Dune::ALU3dGrid< ALU3dGridElementType, class >::leafVertexList_
mutableprotected
template<ALU3dGridElementType , class >
ALU3dGridItemListType Dune::ALU3dGrid< ALU3dGridElementType, class >::levelEdgeList_[MAXL]
mutableprotected
template<ALU3dGridElementType , class >
std::vector< LevelIndexSetImp * > Dune::ALU3dGrid< ALU3dGridElementType, class >::levelIndexVec_
mutableprotected
template<ALU3dGridElementType , class >
LocalIdSetImp Dune::ALU3dGrid< ALU3dGridElementType, class >::localIdSet_
protected
template<ALU3dGridElementType , class >
bool Dune::ALU3dGrid< ALU3dGridElementType, class >::lockPostAdapt_
protected
template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::maxlevel_
protected
template<ALU3dGridElementType , class >
GitterImplType* Dune::ALU3dGrid< ALU3dGridElementType, class >::mygrid_
mutableprotected
template<ALU3dGridElementType , class >
const ReferenceElementType& Dune::ALU3dGrid< ALU3dGridElementType, class >::referenceElement_
protected
template<ALU3dGridElementType , class >
int Dune::ALU3dGrid< ALU3dGridElementType, class >::refineMarked_
mutableprotected
template<ALU3dGridElementType , class >
const ALUGridRefinementType Dune::ALU3dGrid< ALU3dGridElementType, class >::refinementType_
protected
template<ALU3dGridElementType , class >
SizeCacheType* Dune::ALU3dGrid< ALU3dGridElementType, class >::sizeCache_
protected
template<ALU3dGridElementType , class >
VertexListType Dune::ALU3dGrid< ALU3dGridElementType, class >::vertexList_[MAXL]
mutableprotected
template<ALU3dGridElementType , class >
ALUGridBoundaryProjectionType* Dune::ALU3dGrid< ALU3dGridElementType, class >::vertexProjection_
protected

The documentation for this class was generated from the following files: