dune-grid  2.2.0
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends
Dune::ALUConformGrid< 2, dimw > Class Template Reference

[ provides Dune::Grid ] More...

#include <dune/grid/alugrid/2d/alugrid.hh>

Inheritance diagram for Dune::ALUConformGrid< 2, dimw >:
Inheritance graph

List of all members.

Classes

struct  Partition

Public Types

enum  { dimension = BaseType::dimension, dimensionworld = BaseType::dimensionworld }
enum  { refineStepsForHalf = 2 }
typedef
BaseType::DuneBoundaryProjectionType 
DuneBoundaryProjectionType
 type of boundary projection
typedef
BaseType::DuneBoundaryProjectionVector 
DuneBoundaryProjectionVector
 type of boundary projection
typedef BaseType::ctype ctype
 Define type used for coordinates in grid module.
typedef BaseType::GridFamily GridFamily
 my Traits class
typedef GridFamily::Traits Traits
 The traits of this class.
typedef BaseType::LocalIdSetImp LocalIdSetImp
 Type of the local id set.
typedef Traits::GlobalIdSet GlobalIdSet
 Type of the global id set.
typedef Traits::LocalIdSet LocalIdSet
 Type of the local id set.
typedef
GridFamily::LevelIndexSetImp 
LevelIndexSetImp
 Type of the level index set.
typedef GridFamily::LeafIndexSetImp LeafIndexSetImp
 Type of the leaf index set.
typedef BaseType::LeafIteratorImp LeafIteratorImp
 a standard leaf iterator
typedef Traits::template Codim
< 0 >::LeafIterator 
LeafIteratorType
typedef Traits::template Codim
< 0 >::LeafIterator 
LeafIterator
typedef
BaseType::HierarchicIteratorImp 
HierarchicIteratorImp
typedef Partition
< All_Partition >
::LevelGridView 
LevelGridView
 View types for All_Partition.
typedef Partition
< All_Partition >
::LeafGridView 
LeafGridView
enum  
 maximal number of levels More...
enum  
 element chunk for refinement More...
enum  
 upper estimate on number of elements that could be created when a new element is created More...
typedef
ALU2dGridLeafIntersectionIterator
< const ThisType
LeafIntersectionIteratorImp
typedef
ALU2dGridLevelIntersectionIterator
< const ThisType
LevelIntersectionIteratorImp
typedef ALUGridObjectFactory
< ThisType
GridObjectFactoryType
typedef ALU2dGridObjectStream ObjectStreamType
 dummy object stream
typedef ObjectStreamType InStreamType
typedef ObjectStreamType OutStreamType
typedef
ALU2dGridHierarchicIndexSet
< dim, dimworld, elementType
HierarchicIndexSet
 Type of the hierarchic index set.
typedef LocalIdSetImp GlobalIdSetImp
typedef ALU2dGridLevelIterator
< 0, All_Partition, const
ThisType
LevelIteratorImp
 a standard leaf iterator
typedef Traits::template Codim
< 0 >::LevelIterator 
LevelIteratorType
typedef Traits::template Codim
< 0 >::LevelIterator 
LevelIterator
typedef
Traits::CollectiveCommunication 
CollectiveCommunicationType
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
VertexObject
typedef ALU2dGridLeafMarkerVector ALU2dGridLeafMarkerVectorType
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
GridFamily::Traits::LeafIntersection 
LeafIntersection
 A type that is a model of Dune::Intersection, an intersections of two codimension 1 of two codimension 0 entities in the leaf view.
typedef
GridFamily::Traits::LevelIntersection 
LevelIntersection
 A type that is a model of Dune::Intersection, an intersections of two codimension 1 of two codimension 0 entities in a level view.
typedef
GridFamily::Traits::LeafIntersectionIterator 
LeafIntersectionIterator
 A type that is a model of Dune::IntersectionIterator which is an iterator that allows to examine, but not to modify, the intersections of codimension 1 of an leaf element (entity of codimension 0) with other leaf elements.
typedef
GridFamily::Traits::LevelIntersectionIterator 
LevelIntersectionIterator
 A type that is a model of Dune::IntersectionIterator which is an iterator that allows to examine, but not to modify, the intersections of codimension 1 of an element (entity of codimension 0) with other elements on the same level.
typedef
GridFamily::Traits::HierarchicIterator 
HierarchicIterator
 A type that is a model of Dune::HierarchicIterator A type of iterator that allows to examine, but not to modify, entities of codimension 0 that result from refinement of an entity of codimension 0.
typedef
GridFamily::Traits::LevelIndexSet 
LevelIndexSet
 A type that is a model of Dune::IndexSet which provides a consecutive, but non persistent, numbering for entities on a grid level.
typedef
GridFamily::Traits::LeafIndexSet 
LeafIndexSet
 A type that is a model of Dune::IndexSet which provides a consecutive, but non persistent, numbering for entities in the leaf grid.
typedef
GridFamily::Traits::CollectiveCommunication 
CollectiveCommunication
 A type that is a model of Dune::CollectiveCommunication. It provides a portable way for collective communication on the set of processes used by the grid.

Public Member Functions

 ALUConformGrid (const std::string macroName, const DuneBoundaryProjectionType *bndProject=0, const DuneBoundaryProjectionVector *bndVector=0, const bool verbose=true)
 constructor for creating ALUConformGrid from given macro grid file
 ALUConformGrid (const std::string macroName, std::istream &macroFile, const DuneBoundaryProjectionType *bndProject=0, const DuneBoundaryProjectionVector *bndVector=0, const bool verbose=true)
 constructor for creating ALUConformGrid from given macro grid file
 ALUConformGrid ()
 constructor creating empty grid
template<PartitionIteratorType pitype>
Partition< pitype >::LevelGridView levelView (int level) const
 View for a grid level.
template<PartitionIteratorType pitype>
Partition< pitype >::LeafGridView leafView () const
 View for the leaf grid.
LevelGridView levelView (int level) const
 View for a grid level.
LeafGridView leafView () const
 View for the leaf grid.
int maxLevel () const
Traits::template Codim< cd >
::template Partition< pitype >
::LevelIterator 
lbegin (int level) const
Traits::template Codim< cd >
::template Partition
< All_Partition >
::LevelIterator 
lbegin (int level) const
 Iterator to first entity of given codim on level.
LevelIteratorType lbegin (int level) const
 Iterator to first entity of codim 0 on level.
Traits::template Codim< cd >
::template Partition< pitype >
::LevelIterator 
lend (int level) const
 one past the end on this level
Traits::template Codim< cd >
::template Partition
< All_Partition >
::LevelIterator 
lend (int level) const
 one past the end on this level
LevelIteratorType lend (int level) const
 last entity of codim 0 on level
Traits::template Codim< codim >
::template Partition< pitype >
::LeafIterator 
leafbegin () const
 General definiton for a leaf iterator.
Traits::template Codim< codim >
::LeafIterator 
leafbegin () const
 General definiton for a leaf iterator.
Traits::template Codim< codim >
::template Partition< pitype >
::LeafIterator 
leafend () const
 General definition for an end iterator on leaf level.
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, codim and geometry type in this process
int size (GeometryType type) const
 number of leaf entities per codim and geometry type in this process
const std::vector< GeometryType > & geomTypes (int codim) const
 deliver all geometry types used in this grid
const GlobalIdSetglobalIdSet () const
 get global id set of grid
const LocalIdSetlocalIdSet () const
 get global id set of grid
int hierSetSize (int cd) const
 number of grid entities in the entire grid for given codim
const HierarchicIndexSethierarchicIndexSet () const
 get hierarchic index set of the 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
HmeshType & myGrid ()
HmeshType & myGrid () const
void globalRefine (int refCount)
 refine grid refCount times
void globalRefine (int refCount, AdaptDataHandleInterface< GridImp, DataHandle > &hamdle)
bool preAdapt ()
 returns if a least one entity was marked for coarsening
void postAdapt ()
 clear all entity new markers
bool adapt ()
bool adapt (AdaptDataHandleInterface< GridImp, DataHandle > &handle)
bool refineGrid ()
int getMark (const typename Traits::template Codim< 0 >::Entity &e) const
 returns adaptation mark for given entity
bool mark (int refCount, const typename Traits::template Codim< 0 >::Entity &e)
 Marks an entity to be refined/coarsened in a subsequent adapt.
const CollectiveCommunicationTypecomm () const
 return dummy communication
size_t numBoundarySegments () const
 return number of macro boundary segments
bool hasBoundaryProjection () const
 return true if boudanry projection is set
const BaseType::template
ReturnImplementationType
< IntersectionType >
::ImplementationType & 
getRealIntersection (const IntersectionType &intersection) const
const GridObjectFactoryTypefactory () const
Traits::template Codim
< EntitySeed::codimension >
::EntityPointer 
entityPointer (const EntitySeed &seed) const
 obtain EntityPointer from EntitySeed.
ALU2dGridMarkerVectorgetMarkerVector (int level) const
ALU2dGridLeafMarkerVectorTypegetLeafMarker () const
bool writeGrid (const std::string filename, alu2d_ctype time) const
 write Grid to file in specified FileFormatType
bool writeGrid_Xdr (const std::string filename, alu2d_ctype time) const
bool writeGrid_Ascii (const std::string filename, alu2d_ctype time) const
bool readGrid (const std::string filename, alu2d_ctype &time)
 read Grid from file filename and store time of mesh in time
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.
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.
int ghostSize (int level, int codim) const
 ghostSize is zero by default
int ghostSize (int codim) const
 ghostSize is zero by default
bool loadBalance ()
 Re-balances the load each process has to handle for a parallel grid, if grid has changed , true is returned.
bool loadBalance (DataHandle &data)
 Re-balances the load each process has to handle for a parallel grid, if grid has changed , true is returned.
void checkManager ()
int overlapSize (int level, int codim) const
 overlapSize is zero by default
int overlapSize (int codim) const
 overlapSize is zero by default
Adaptivity and grid refinement
int getMark (const typename Codim< 0 >::Entity &e) const
 returns adaptation mark for given entity
bool mark (int refCount, const typename Codim< 0 >::Entity &e)
 Marks an entity to be refined/coarsened in a subsequent adapt.

Static Public Member Functions

static std::string name ()
 return name of the grid

Static Public Attributes

static const ALU2DSPACE ElementType elementType

Protected Types

enum  
typedef
MakeableInterfaceObject
< typename Traits::template
Codim< 0 >::Geometry
GeometryObject
typedef
ALU2dGridBoundaryProjection
< ThisType
ALUGridBoundaryProjectionType
typedef SizeCache< ThisTypeSizeCacheType
 the type of our size cache

Protected Member Functions

HmeshType * createGrid (const std::string &, const int, std::istream *)
void makeGeomTypes ()
const char * checkMacroGridFile (const std::string &filename)
HmeshType & mesh () const
const DuneBoundaryProjectionTypeglobalProjection () const
const DuneBoundaryProjectionTypeboundaryProjection (const int segmentIndex) const
 return boudanry projection for given segment Id
bool nonConform () 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

HmeshType * mygrid_
 the real grid
GridObjectFactoryType factory_
HierarchicIndexSet hIndexSet_
 the hierarchic index set
LocalIdSetImp localIdSet_
 out global id set
std::vector< LevelIndexSetImp * > levelIndexVec_
 the level index set ( default type )
std::vector< std::vector
< GeometryType > > 
geomTypes_
LeafIndexSetImpleafIndexSet_
 the leaf index set
int maxLevel_
int refineMarked_
int coarsenMarked_
const int nrOfHangingNodes_
SizeCacheTypesizeCache_
bool lockPostAdapt_
const DuneBoundaryProjectionTypebndPrj_
const
DuneBoundaryProjectionVector
bndVec_
ALUGridBoundaryProjectionTypevertexProjection_
int maxlevel_
ALU2dGridMarkerVector marker_ [MAXL]

Friends

class Conversion< ALUConformGrid< dimension, dimensionworld >, HasObjectStream >
class Conversion< const ALUConformGrid< dimension, dimensionworld >, HasObjectStream >
class Conversion< ALUConformGrid< dimension, dimensionworld >, HasHierarchicIndexSet >
class Conversion< const ALUConformGrid< dimension, dimensionworld >, HasHierarchicIndexSet >
class ALU2dGridFactory

Detailed Description

template<int dimw>
class Dune::ALUConformGrid< 2, dimw >

[ provides Dune::Grid ]

grid with support for simplicial mesh in 2d and 3d.The ALUConformGrid implements the Dune GridInterface for 2d triangular and 3d tetrahedral meshes. This grid can be locally adapted (conforming) 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 triangular/tetrahedral elements - a 3d cube grid is also available via the grid implementation ALUCubeGrid or ALUSimplexGrid.

(see ALUGrid homepage: http://www.mathematik.uni-freiburg.de/IAM/Research/alugrid/)

For installation instructions see http://www.dune-project.org/external_libraries/install_alugrid.html .

Note:
The unspecialized version of ALUConformGrid is defined for documentation purposes only, only the specializations can actually be used.
[ provides Dune::Grid ] grid with support for simplicial mesh in 2d.


Member Typedef Documentation

typedef ALU2dGridLeafMarkerVector Dune::ALU2dGrid< dim, dimworld, eltype >::ALU2dGridLeafMarkerVectorType
inherited
typedef ALU2dGridBoundaryProjection< ThisType > Dune::ALU2dGrid< dim, dimworld, eltype >::ALUGridBoundaryProjectionType
protectedinherited
template<int dim, int dimworld, class ct, class GridFamily>
typedef GridFamily::Traits::CollectiveCommunication Dune::Grid< dim, dimworld, ct, GridFamily >::CollectiveCommunication
inherited

A type that is a model of Dune::CollectiveCommunication. It provides a portable way for collective communication on the set of processes used by the grid.

Reimplemented in Dune::ALU3dGrid< elType, Comm >, Dune::ALU3dGrid< tetra >, Dune::ALU3dGrid< hexa >, and Dune::AlbertaGrid< dim, dimworld >.

typedef Traits::CollectiveCommunication Dune::ALU2dGrid< dim, dimworld, eltype >::CollectiveCommunicationType
inherited
template<int dimw>
typedef BaseType::ctype Dune::ALUConformGrid< 2, dimw >::ctype

Define type used for coordinates in grid module.

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

type of boundary projection

Reimplemented from Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >.

type of boundary projection

Reimplemented from Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >.

typedef MakeableInterfaceObject<typename Traits::template Codim<0>::Entity> Dune::ALU2dGrid< dim, dimworld, eltype >::EntityObject
inherited
typedef MakeableInterfaceObject<typename Traits::template Codim<1>::Entity> Dune::ALU2dGrid< dim, dimworld, eltype >::FaceObject
inherited
typedef MakeableInterfaceObject<typename Traits::template Codim<0>::Geometry> Dune::ALU2dGrid< dim, dimworld, eltype >::GeometryObject
protectedinherited
template<int dimw>
typedef Traits :: GlobalIdSet Dune::ALUConformGrid< 2, dimw >::GlobalIdSet

Type of the global id set.

Reimplemented from Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >.

typedef LocalIdSetImp Dune::ALU2dGrid< dim, dimworld, eltype >::GlobalIdSetImp
inherited
template<int dimw>
typedef BaseType::GridFamily Dune::ALUConformGrid< 2, dimw >::GridFamily

my Traits class

Reimplemented from Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >.

typedef ALUGridObjectFactory< ThisType > Dune::ALU2dGrid< dim, dimworld, eltype >::GridObjectFactoryType
inherited
typedef ALU2dGridHierarchicIndexSet<dim,dimworld,elementType> Dune::ALU2dGrid< dim, dimworld, eltype >::HierarchicIndexSet
inherited

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.

typedef ObjectStreamType Dune::ALU2dGrid< dim, dimworld, eltype >::InStreamType
inherited
template<int dimw>
typedef Partition< All_Partition >:: LeafGridView Dune::ALUConformGrid< 2, dimw >::LeafGridView
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.

Reimplemented in Dune::AlbertaGrid< dim, dimworld >.

template<int dimw>
typedef GridFamily :: LeafIndexSetImp Dune::ALUConformGrid< 2, dimw >::LeafIndexSetImp

Type of the leaf index set.

Reimplemented from Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >.

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.

typedef ALU2dGridLeafIntersectionIterator<const ThisType> Dune::ALU2dGrid< dim, dimworld, eltype >::LeafIntersectionIteratorImp
inherited
template<int dimw>
typedef Traits::template Codim<0>::LeafIterator Dune::ALUConformGrid< 2, dimw >::LeafIterator
template<int dimw>
typedef BaseType::LeafIteratorImp Dune::ALUConformGrid< 2, dimw >::LeafIteratorImp

a standard leaf iterator

Reimplemented from Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >.

template<int dimw>
typedef Traits::template Codim<0>::LeafIterator Dune::ALUConformGrid< 2, dimw >::LeafIteratorType
template<int dimw>
typedef Partition< All_Partition >:: LevelGridView Dune::ALUConformGrid< 2, dimw >::LevelGridView

View types for All_Partition.

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

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.

Reimplemented in Dune::AlbertaGrid< dim, dimworld >.

template<int dimw>
typedef GridFamily :: LevelIndexSetImp Dune::ALUConformGrid< 2, dimw >::LevelIndexSetImp

Type of the level index set.

Reimplemented from Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >.

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.

typedef Traits::template Codim<0>::LevelIterator Dune::ALU2dGrid< dim, dimworld, eltype >::LevelIterator
inherited
typedef ALU2dGridLevelIterator<0, All_Partition, const ThisType> Dune::ALU2dGrid< dim, dimworld, eltype >::LevelIteratorImp
inherited

a standard leaf iterator

typedef Traits::template Codim<0>::LevelIterator Dune::ALU2dGrid< dim, dimworld, eltype >::LevelIteratorType
inherited
template<int dimw>
typedef Traits :: LocalIdSet Dune::ALUConformGrid< 2, dimw >::LocalIdSet

Type of the local id set.

Reimplemented from Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >.

template<int dimw>
typedef BaseType::LocalIdSetImp Dune::ALUConformGrid< 2, dimw >::LocalIdSetImp

Type of the local id set.

Reimplemented from Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >.

typedef ALU2dGridObjectStream Dune::ALU2dGrid< dim, dimworld, eltype >::ObjectStreamType
inherited

dummy object stream

typedef ObjectStreamType Dune::ALU2dGrid< dim, dimworld, eltype >::OutStreamType
inherited
typedef SizeCache<ThisType> Dune::ALU2dGrid< dim, dimworld, eltype >::SizeCacheType
protectedinherited

the type of our size cache

template<int dimw>
typedef GridFamily::Traits Dune::ALUConformGrid< 2, dimw >::Traits

The traits of this class.

Presents the typedefs as described in GridTraits.

Reimplemented from Dune::ALU2dGrid< 2, dimw, ALU2DSPACE triangle >.

typedef MakeableInterfaceObject<typename Traits::template Codim<2>::Entity> Dune::ALU2dGrid< dim, dimworld, eltype >::VertexObject
inherited

Member Enumeration Documentation

template<int dimw>
anonymous enum
Enumerator:
dimension 

The dimension of the grid.

dimensionworld 

The dimension of the world the grid lives in.

template<int dimw>
anonymous enum
Enumerator:
refineStepsForHalf 
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.

anonymous enum
inherited

maximal number of levels

anonymous enum
inherited

element chunk for refinement

anonymous enum
inherited

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

anonymous enum
protectedinherited

Constructor & Destructor Documentation

template<int dimw>
Dune::ALUConformGrid< 2, dimw >::ALUConformGrid ( const std::string  macroName,
const DuneBoundaryProjectionType bndProject = 0,
const DuneBoundaryProjectionVector bndVector = 0,
const bool  verbose = true 
)
inline

constructor for creating ALUConformGrid from given macro grid file

Parameters:
macroNamefilename for macro grid in ALUGrid triangle format
bndProjectglobal boundary projection pointer
bndVectorpointer to vector holding boundary projection for each boundary segment. ALUGrid takes ownership of this pointer and will delete it in the desctructor
verboseWhether to write a notice about grid creation to stdout.
template<int dimw>
Dune::ALUConformGrid< 2, dimw >::ALUConformGrid ( const std::string  macroName,
std::istream &  macroFile,
const DuneBoundaryProjectionType bndProject = 0,
const DuneBoundaryProjectionVector bndVector = 0,
const bool  verbose = true 
)
inline

constructor for creating ALUConformGrid from given macro grid file

Parameters:
macroNamefilename for macro grid in ALUGrid triangle format
macroFileStream to read macro grid file contents from.
bndProjectglobal boundary projection pointer
bndVectorpointer to vector holding boundary projection for each boundary segment. ALUGrid takes ownership of this pointer and will delete it in the desctructor
verboseWhether to write a notice about grid creation to stdout.
template<int dimw>
Dune::ALUConformGrid< 2, dimw >::ALUConformGrid ( )
inline

constructor creating empty grid


Member Function Documentation

bool Dune::ALU2dGrid< dim, dimworld, eltype >::adapt ( )
inherited

! refine all positive marked leaf entities, return true if a least one entity was refined

Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype, ALU2dGridFamily< dim, dimworld, eltype > >.

bool Dune::ALU2dGrid< dim, dimworld, eltype >::adapt ( AdaptDataHandleInterface< GridImp, DataHandle > &  handle)
inherited
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, _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().

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

Barton-Nackman trick.

const DuneBoundaryProjectionType* Dune::ALU2dGrid< dim, dimworld, eltype >::boundaryProjection ( const int  segmentIndex) const
inlineprotectedinherited

return boudanry projection for given segment Id

const char* Dune::ALU2dGrid< dim, dimworld, eltype >::checkMacroGridFile ( const std::string &  filename)
protectedinherited
void Dune::ALU2dGrid< dim, dimworld, eltype >::checkManager ( )
inlineinherited
const CollectiveCommunicationType& Dune::ALU2dGrid< dim, dimworld, eltype >::comm ( ) const
inherited

return dummy communication

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

void Dune::ALU2dGrid< dim, dimworld, eltype >::communicate ( CommDataHandleIF< DataHandleImp, DataTypeImp > &  data,
InterfaceType  iftype,
CommunicationDirection  dir,
int  level 
) const
inherited

Communicate information on distributed entities on a given level Template parameter is a model of Dune::CommDataHandleIF.

Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype, ALU2dGridFamily< dim, dimworld, eltype > >.

void Dune::ALU2dGrid< dim, dimworld, eltype >::communicate ( CommDataHandleIF< DataHandleImp, DataTypeImp > &  data,
InterfaceType  iftype,
CommunicationDirection  dir 
) const
inherited

Communicate information on distributed entities on the leaf grid. Template parameter is a model of Dune::CommDataHandleIF.

Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype, ALU2dGridFamily< dim, dimworld, eltype > >.

HmeshType* Dune::ALU2dGrid< dim, dimworld, eltype >::createGrid ( const std::string &  ,
const int  ,
std::istream *   
)
protectedinherited
Traits :: template Codim< EntitySeed :: codimension >:: EntityPointer Dune::ALU2dGrid< dim, dimworld, eltype >::entityPointer ( const EntitySeed &  seed) const
inlineinherited

obtain EntityPointer from EntitySeed.

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

const GridObjectFactoryType& Dune::ALU2dGrid< dim, dimworld, eltype >::factory ( ) const
inlineinherited
const std::vector<GeometryType>& Dune::ALU2dGrid< dim, dimworld, eltype >::geomTypes ( int  codim) const
inlineinherited

deliver all geometry types used in this grid

ALU2dGridLeafMarkerVectorType& Dune::ALU2dGrid< dim, dimworld, eltype >::getLeafMarker ( ) const
inlineinherited

return reference to vector determing on which element a face is visited

int Dune::ALU2dGrid< dim, dimworld, eltype >::getMark ( const typename Traits::template Codim< 0 >::Entity e) const
inherited

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

Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype, ALU2dGridFamily< dim, dimworld, eltype > >.

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
ALU2dGridMarkerVector& Dune::ALU2dGrid< dim, dimworld, eltype >::getMarkerVector ( int  level) const
inlineinherited

return reference to vector telling on which element a face is visted for this level

static ReturnImplementationType<InterfaceType>::ImplementationType& Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype , ALU2dGridFamily< dim, dimworld, eltype > >::getRealImplementation ( InterfaceType i)
inlinestaticprotectedinherited
const BaseType :: template ReturnImplementationType< IntersectionType>:: ImplementationType& Dune::ALU2dGrid< dim, dimworld, eltype >::getRealIntersection ( const IntersectionType &  intersection) const
inlineinherited
int Dune::ALU2dGrid< dim, dimworld, eltype >::ghostSize ( int  level,
int  codim 
) const
inlineinherited
int Dune::ALU2dGrid< dim, dimworld, eltype >::ghostSize ( int  codim) const
inlineinherited
const GlobalIdSet& Dune::ALU2dGrid< dim, dimworld, eltype >::globalIdSet ( ) const
inherited

get global id set of grid

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

const DuneBoundaryProjectionType* Dune::ALU2dGrid< dim, dimworld, eltype >::globalProjection ( ) const
inlineprotectedinherited
void Dune::ALU2dGrid< dim, dimworld, eltype >::globalRefine ( int  refCount)
inherited

refine grid refCount times

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

void Dune::ALU2dGrid< dim, dimworld, eltype >::globalRefine ( int  refCount,
AdaptDataHandleInterface< GridImp, DataHandle > &  hamdle 
)
inherited
bool Dune::ALU2dGrid< dim, dimworld, eltype >::hasBoundaryProjection ( ) const
inlineinherited

return true if boudanry projection is set

const HierarchicIndexSet& Dune::ALU2dGrid< dim, dimworld, eltype >::hierarchicIndexSet ( ) const
inherited

get hierarchic index set of the grid

int Dune::ALU2dGrid< dim, dimworld, eltype >::hierSetSize ( int  cd) const
inherited

number of grid entities in the entire grid for given codim

Traits::template Codim<cd>::template Partition<pitype>::LevelIterator Dune::ALU2dGrid< dim, dimworld, eltype >::lbegin ( int  level) const
inherited

–Leveliterator 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::ALU2dGrid< dim, dimworld, eltype >::lbegin ( int  level) const
inherited

Iterator to first entity of given codim on level.

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

LevelIteratorType Dune::ALU2dGrid< dim, dimworld, eltype >::lbegin ( int  level) const
inherited

Iterator to first entity of codim 0 on level.

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

Traits::template Codim<codim>::template Partition<pitype>::LeafIterator Dune::ALU2dGrid< dim, dimworld, eltype >::leafbegin ( ) const
inherited

General definiton for a leaf iterator.

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

Traits::template Codim<codim>::LeafIterator Dune::ALU2dGrid< dim, dimworld, eltype >::leafbegin ( ) const
inherited

General definiton for a leaf iterator.

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

Traits::template Codim<codim>::template Partition<pitype>::LeafIterator Dune::ALU2dGrid< dim, dimworld, eltype >::leafend ( ) const
inherited

General definition for an end iterator on leaf level.

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

Traits::template Codim<codim>::LeafIterator Dune::ALU2dGrid< dim, dimworld, eltype >::leafend ( ) const
inherited

General definition for an end iterator on leaf level.

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

const Traits :: LeafIndexSet& Dune::ALU2dGrid< dim, dimworld, eltype >::leafIndexSet ( ) const
inherited

get leaf index set of the grid

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

template<int dimw>
template<PartitionIteratorType pitype>
Partition< pitype >::LeafGridView Dune::ALUConformGrid< 2, dimw >::leafView ( ) const
inline
template<int dimw>
LeafGridView Dune::ALUConformGrid< 2, dimw >::leafView ( ) const
inline
Traits::template Codim<cd>::template Partition<pitype>::LevelIterator Dune::ALU2dGrid< dim, dimworld, eltype >::lend ( int  level) const
inherited

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::ALU2dGrid< dim, dimworld, eltype >::lend ( int  level) const
inherited

one past the end on this level

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

LevelIteratorType Dune::ALU2dGrid< dim, dimworld, eltype >::lend ( int  level) const
inherited

last entity of codim 0 on level

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

const Traits :: LevelIndexSet& Dune::ALU2dGrid< dim, dimworld, eltype >::levelIndexSet ( int  level) const
inherited

get level index set of the grid

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

template<int dimw>
template<PartitionIteratorType pitype>
Partition< pitype >::LevelGridView Dune::ALUConformGrid< 2, dimw >::levelView ( int  level) const
inline
template<int dimw>
LevelGridView Dune::ALUConformGrid< 2, dimw >::levelView ( int  level) const
inline
bool Dune::ALU2dGrid< dim, dimworld, eltype >::loadBalance ( )
inherited

Re-balances the load each process has to handle for a parallel grid, if grid has changed , true is returned.

Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype, ALU2dGridFamily< dim, dimworld, eltype > >.

bool Dune::ALU2dGrid< dim, dimworld, eltype >::loadBalance ( DataHandle &  data)
inherited

Re-balances the load each process has to handle for a parallel grid, if grid has changed , true is returned.

Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype, ALU2dGridFamily< dim, dimworld, eltype > >.

const LocalIdSet& Dune::ALU2dGrid< dim, dimworld, eltype >::localIdSet ( ) const
inherited

get global id set of grid

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

void Dune::ALU2dGrid< dim, dimworld, eltype >::makeGeomTypes ( )
protectedinherited
bool Dune::ALU2dGrid< dim, dimworld, eltype >::mark ( int  refCount,
const typename Traits::template Codim< 0 >::Entity e 
)
inherited

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.

Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype, ALU2dGridFamily< dim, dimworld, eltype > >.

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.
int Dune::ALU2dGrid< dim, dimworld, eltype >::maxLevel ( ) const
inherited

Return maximum level defined in this grid. Levels are numbered 0 ... maxLevel with 0 the coarsest level.

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

HmeshType& Dune::ALU2dGrid< dim, dimworld, eltype >::mesh ( ) const
inlineprotectedinherited
HmeshType& Dune::ALU2dGrid< dim, dimworld, eltype >::myGrid ( )
inherited
HmeshType& Dune::ALU2dGrid< dim, dimworld, eltype >::myGrid ( ) const
inherited
template<int dimw>
static std::string Dune::ALUConformGrid< 2, dimw >::name ( )
inlinestatic

return name of the grid

bool Dune::ALU2dGrid< dim, dimworld, eltype >::nonConform ( ) const
inlineprotectedinherited

return true if grid allows hanging nodes on leaf level i.e. returns true for ALUSimplexGrid and returns false for ALUConformGrid

size_t Dune::ALU2dGrid< dim, dimworld, eltype >::numBoundarySegments ( ) const
inlineinherited

return number of macro boundary segments

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

int Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype , ALU2dGridFamily< dim, dimworld, eltype > >::overlapSize ( int  level,
int  codim 
) const
inlineinherited

overlapSize is zero by default

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

int Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype , ALU2dGridFamily< dim, dimworld, eltype > >::overlapSize ( int  codim) const
inlineinherited

overlapSize is zero by default

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

void Dune::ALU2dGrid< dim, dimworld, eltype >::postAdapt ( )
inherited
bool Dune::ALU2dGrid< dim, dimworld, eltype >::preAdapt ( )
inherited

returns if a least one entity was marked for coarsening

Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, alu2d_ctype, ALU2dGridFamily< dim, dimworld, eltype > >.

bool Dune::ALU2dGrid< dim, dimworld, eltype >::readGrid ( const std::string  filename,
alu2d_ctype time 
)
inherited

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

bool Dune::ALU2dGrid< dim, dimworld, eltype >::refineGrid ( )
inherited
int Dune::ALU2dGrid< dim, dimworld, eltype >::size ( int  level,
int  cd 
) const
inherited

number of grid entities per level and codim

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

int Dune::ALU2dGrid< dim, dimworld, eltype >::size ( int  codim) const
inherited

number of leaf entities per codim in this process

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

int Dune::ALU2dGrid< dim, dimworld, eltype >::size ( int  level,
GeometryType  type 
) const
inherited

number of entities per level, codim and geometry type in this process

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

int Dune::ALU2dGrid< dim, dimworld, eltype >::size ( GeometryType  type) const
inherited

number of leaf entities per codim and geometry type in this process

Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.

bool Dune::ALU2dGrid< dim, dimworld, eltype >::writeGrid ( const std::string  filename,
alu2d_ctype  time 
) const
inherited

write Grid to file in specified FileFormatType

bool Dune::ALU2dGrid< dim, dimworld, eltype >::writeGrid_Ascii ( const std::string  filename,
alu2d_ctype  time 
) const
inherited
bool Dune::ALU2dGrid< dim, dimworld, eltype >::writeGrid_Xdr ( const std::string  filename,
alu2d_ctype  time 
) const
inherited

Friends And Related Function Documentation

template<int dimw>
friend class ALU2dGridFactory
friend
template<int dimw>
friend class Conversion< ALUConformGrid< dimension, dimensionworld >, HasHierarchicIndexSet >
friend
template<int dimw>
friend class Conversion< ALUConformGrid< dimension, dimensionworld >, HasObjectStream >
friend
template<int dimw>
friend class Conversion< const ALUConformGrid< dimension, dimensionworld >, HasHierarchicIndexSet >
friend
template<int dimw>
friend class Conversion< const ALUConformGrid< dimension, dimensionworld >, HasObjectStream >
friend

Member Data Documentation

const DuneBoundaryProjectionType* Dune::ALU2dGrid< dim, dimworld, eltype >::bndPrj_
protectedinherited
const DuneBoundaryProjectionVector* Dune::ALU2dGrid< dim, dimworld, eltype >::bndVec_
protectedinherited
int Dune::ALU2dGrid< dim, dimworld, eltype >::coarsenMarked_
protectedinherited
const ALU2DSPACE ElementType Dune::ALU2dGrid< dim, dimworld, eltype >::elementType
staticinherited
GridObjectFactoryType Dune::ALU2dGrid< dim, dimworld, eltype >::factory_
protectedinherited
std::vector< std::vector<GeometryType> > Dune::ALU2dGrid< dim, dimworld, eltype >::geomTypes_
protectedinherited
HierarchicIndexSet Dune::ALU2dGrid< dim, dimworld, eltype >::hIndexSet_
protectedinherited

the hierarchic index set

LeafIndexSetImp* Dune::ALU2dGrid< dim, dimworld, eltype >::leafIndexSet_
mutableprotectedinherited

the leaf index set

std::vector< LevelIndexSetImp * > Dune::ALU2dGrid< dim, dimworld, eltype >::levelIndexVec_
mutableprotectedinherited

the level index set ( default type )

LocalIdSetImp Dune::ALU2dGrid< dim, dimworld, eltype >::localIdSet_
protectedinherited

out global id set

bool Dune::ALU2dGrid< dim, dimworld, eltype >::lockPostAdapt_
protectedinherited
ALU2dGridMarkerVector Dune::ALU2dGrid< dim, dimworld, eltype >::marker_[MAXL]
mutableprotectedinherited
int Dune::ALU2dGrid< dim, dimworld, eltype >::maxLevel_
protectedinherited
int Dune::ALU2dGrid< dim, dimworld, eltype >::maxlevel_
protectedinherited
HmeshType* Dune::ALU2dGrid< dim, dimworld, eltype >::mygrid_
mutableprotectedinherited

the real grid

const int Dune::ALU2dGrid< dim, dimworld, eltype >::nrOfHangingNodes_
protectedinherited
int Dune::ALU2dGrid< dim, dimworld, eltype >::refineMarked_
protectedinherited
SizeCacheType* Dune::ALU2dGrid< dim, dimworld, eltype >::sizeCache_
protectedinherited
ALUGridBoundaryProjectionType* Dune::ALU2dGrid< dim, dimworld, eltype >::vertexProjection_
protectedinherited

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