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