Dune::ALUConformGrid< 2, 2 > Class Template Reference
[ALUConformGrid]
#include <alugrid.hh>

Detailed Description
template<>
class Dune::ALUConformGrid< 2, 2 >
[ provides Dune::Grid ]
[ 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 dynamcic 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.
- Available Implementations
Public Types | |
typedef BaseType::ctype | ctype |
Define type used for coordinates in grid module. | |
typedef BaseType::GridFamily | GridFamily |
my Traits class | |
typedef GridFamily::Traits | Traits |
my Traits 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 | |
enum | |
maximal number of levels | |
enum | |
element chunk for refinement | |
enum | |
upper estimate on number of elements that could be created when a new element is created | |
typedef ALU2dGridObjectStream | ObjectStreamType |
dummy object stream | |
typedef ALU2dGridHierarchicIndexSet < dim, dimworld > | HierarchicIndexSet |
Type of the hierarchic index set. | |
typedef ALU2dGridLevelIterator < 0, All_Partition, const ThisType > | LevelIteratorImp |
a standard leaf iterator | |
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... | |
Public Member Functions | |
ALUConformGrid (const std::string macroName) | |
constructor for creating ALUConformGrid from given macro grid file | |
ALUConformGrid () | |
constructor creating empty grid | |
std::string | name () const |
for grid identification | |
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 GlobalIdSet & | globalIdSet () const |
get global id set of grid | |
const LocalIdSet & | localIdSet () const |
get global id set of grid | |
int | hierSetSize (int cd) const |
number of grid entities in the entire grid for given codim | |
const HierarchicIndexSet & | hierarchicIndexSet () 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 | |
bool | globalRefine (int refCount) |
refine grid refCount times | |
bool | preAdapt () |
returns if a least one entity was marked for coarsening | |
void | postAdapt () |
clear all entity new markers | |
bool | adapt () |
bool | adapt (DofManagerType &, RestrictProlongOperatorType &, bool verbose=false) |
adapt with DofManager | |
bool | mark (int refCount, const typename Traits::template Codim< 0 >::EntityPointer &ep) |
int | getMark (const typename Traits::template Codim< 0 >::EntityPointer &) const |
return current adaptation marker for entity pointer | |
int | getMark (const typename Traits::template Codim< 0 >::Entity &) const |
return current adaptation marker for entity pointer | |
const CollectiveCommunicationType & | comm () const |
return dummy communication | |
ALU2dGridMarkerVector & | getMarkerVector (int level) const |
ALU2dGridLeafMarkerVectorType & | getLeafMarker () const |
bool | writeGrid (const std::string filename, alu2d_ctype time) const |
write Grid to file in specified FileFormatType | |
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 |
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. | |
bool | loadBalance () |
bool | loadBalance (DataHandle &data) |
int | ghostSize (int level, int codim) const |
ghostSize is zero by default | |
int | ghostSize (int codim) const |
ghostSize is zero by default | |
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 | |
bool | mark (int refCount, const typename Codim< 0 >::EntityPointer &e) |
Marks an entity to be refined/coarsened in a subsequent adapt. | |
int | getMark (const typename Codim< 0 >::EntityPointer &e) const |
returns adaptation mark for given entity pointer | |
Protected Member Functions | |
bool | nonConform () const |
template<class InterfaceType> | |
ReturnImplementationType < InterfaceType > ::ImplementationType & | getRealImplementation (InterfaceType &i) const |
return real implementation of interface class | |
GridImp & | asImp () |
Barton-Nackman trick. | |
const GridImp & | asImp () const |
Barton-Nackman trick. |
Member Enumeration Documentation
anonymous enum [inherited] |
anonymous enum [inherited] |
Constructor & Destructor Documentation
Dune::ALUConformGrid< 2, 2 >::ALUConformGrid | ( | const std::string | macroName | ) | [inline] |
constructor for creating ALUConformGrid from given macro grid file
- Parameters:
-
macroName filename for macro grid in ALUGrid triangle format
Member Function Documentation
int Dune::ALU2dGrid< dim, dimworld >::maxLevel | ( | ) | const [inherited] |
Return maximum level defined in this grid. Levels are numbered 0 ... maxLevel with 0 the coarsest level.
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 >.
Traits::template Codim<cd>::template Partition<pitype>::LevelIterator Dune::ALU2dGrid< dim, dimworld >::lbegin | ( | int | level | ) | const [inline, inherited] |
Iterator to first entity of given codim on level.
Iterator to first entity of codim 0 on level.
--Leveliterator Iterator to first entity of given codim on level
Reimplemented from Dune::Grid< dim, dimworld, ct, GridFamily >.
bool Dune::ALU2dGrid< dim, dimworld >::adapt | ( | ) | [inherited] |
! refine all positive marked leaf entities, return true if a least one entity was refined
Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, ct, GridFamily >.
bool Dune::ALU2dGrid< dim, dimworld >::mark | ( | int | refCount, | |
const typename Traits::template Codim< 0 >::EntityPointer & | ep | |||
) | [inherited] |
mark entities for refinement or coarsening, refCount < 0 will mark the entity for one coarsen step and refCount > 0 will mark for one refinement, one refinement will create 8 children per element
mark entities for refinement or coarsening, refCount < 0 will mark the entity for one coarsen step and refCount > 0 will mark for one refinement, one refinement will create 8 children per element
Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, ct, GridFamily >.
bool Dune::Grid< dim, dimworld, ct, GridFamily >::mark | ( | int | refCount, | |
const typename Codim< 0 >::EntityPointer & | e | |||
) | [inline, inherited] |
Marks an entity to be refined/coarsened in a subsequent adapt.
- Parameters:
-
[in] refCount Number of subdivisions that should be applied. Negative value means coarsening. [in] e EntityPointer to Entity that should be refined
- Returns:
- true if Entity was marked, false otherwise.
int Dune::Grid< dim, dimworld, ct, GridFamily >::getMark | ( | const typename Codim< 0 >::EntityPointer & | e | ) | const [inline, inherited] |
returns adaptation mark for given entity pointer
- Parameters:
-
[in] e EntityPointer for which adaptation mark should be determined
- Returns:
- int adaptation mark currently set for given EntityPointer e
ALU2dGridMarkerVector& Dune::ALU2dGrid< dim, dimworld >::getMarkerVector | ( | int | level | ) | const [inline, inherited] |
return reference to vector telling on which element a face is visted for this level
References Dune::ALU2dGrid< dim, dimworld >::MAXL.
ALU2dGridLeafMarkerVectorType& Dune::ALU2dGrid< dim, dimworld >::getLeafMarker | ( | ) | const [inline, inherited] |
return reference to vector determing on which element a face is visited
bool Dune::ALU2dGrid< dim, dimworld >::nonConform | ( | ) | const [inline, protected, inherited] |
return true if grid allows hanging nodes on leaf level i.e. returns true for ALUSimplexGrid and returns false for ALUConformGrid
void Dune::ALU2dGrid< dim, dimworld >::communicate | ( | CommDataHandleIF< DataHandleImp, DataTypeImp > & | data, | |
InterfaceType | iftype, | |||
CommunicationDirection | dir, | |||
int | level | |||
) | const [inline, inherited] |
Communicate information on distributed entities on a given level Template parameter is a model of Dune::CommDataHandleIF.
Reimplemented from Dune::GridDefaultImplementation< dim, dimworld, ct, GridFamily >.
bool Dune::ALU2dGrid< dim, dimworld >::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, ct, GridFamily >.
bool Dune::ALU2dGrid< dim, dimworld >::loadBalance | ( | DataHandle & | data | ) | [inline, 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, ct, GridFamily >.
The documentation for this class was generated from the following file: