|
| typedef AlbertaGridFamily< dim, dimworld > | GridFamily |
| | the grid family of AlbertaGrid
|
| |
| typedef GridFamily::ctype | ctype |
| |
| typedef AlbertaGridFamily< dim, dimworld >::Traits | Traits |
| |
| typedef Traits::LeafIndexSet | LeafIndexSet |
| | type of leaf index set
|
| |
| typedef Traits::LevelIndexSet | LevelIndexSet |
| | type of level index sets
|
| |
| typedef Traits::HierarchicIndexSet | HierarchicIndexSet |
| | type of hierarchic index set
|
| |
| typedef Traits::GlobalIdSet | GlobalIdSet |
| | type of global id set
|
| |
| typedef Traits::LocalIdSet | LocalIdSet |
| | type of local id set
|
| |
| typedef Traits::Communication | Communication |
| | type of communication
|
| |
|
| typedef GridFamily::Traits::LeafGridView | LeafGridView |
| | type of view for leaf grid
|
| |
| typedef GridFamily::Traits::LevelGridView | LevelGridView |
| | type of view for level grid
|
| |
| 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.
|
| |
|
| | AlbertaGrid (const This &)=delete |
| |
| This & | operator= (const This &)=delete |
| |
| | AlbertaGrid () |
| | create an empty grid
|
| |
| | AlbertaGrid (const Alberta::MacroData< dimension > ¯oData, const std::shared_ptr< DuneBoundaryProjection< dimensionworld > > &projection=std::shared_ptr< DuneBoundaryProjection< dimensionworld > >()) |
| | create a grid from an ALBERTA macro data structure
|
| |
| template<class Proj , class Impl > |
| | AlbertaGrid (const Alberta::MacroData< dimension > ¯oData, const Alberta::ProjectionFactoryInterface< Proj, Impl > &projectionFactory) |
| |
| | AlbertaGrid (const std::string ¯oGridFileName) |
| | create a grid from an ALBERTA macro grid file
|
| |
| | ~AlbertaGrid () |
| | destructor
|
| |
| int | maxLevel () const |
| |
| 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 codim> |
| Traits::template Codim< codim >::LevelIterator | lbegin (int level) const |
| | Iterator to first entity of given codim on level.
|
| |
| template<int codim> |
| Traits::template Codim< codim >::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 |
| | return LeafIterator which points to first leaf entity
|
| |
| template<int codim, PartitionIteratorType pitype> |
| Traits::template Codim< codim >::template Partition< pitype >::LeafIterator | leafend () const |
| | return LeafIterator which points behind last leaf entity
|
| |
| template<int codim> |
| Traits::template Codim< codim >::LeafIterator | leafbegin () const |
| | return LeafIterator which points to first leaf entity
|
| |
| template<int codim> |
| Traits::template Codim< codim >::LeafIterator | leafend () const |
| | return LeafIterator which points behind last leaf entity
|
| |
| int | size (int level, int codim) const |
| | Number of grid entities per level and codim because lbegin and lend are none const, and we need this methods counting the entities on each level, you know.
|
| |
| int | size (int level, GeometryType type) const |
| | number of entities per level and geometry type in this process
|
| |
| int | size (int codim) const |
| | number of leaf entities per codim in this process
|
| |
| int | size (GeometryType type) const |
| | number of leaf entities per geometry type in this process
|
| |
| std::size_t | numBoundarySegments () const |
| | number of boundary segments within the macro grid
|
| |
| Traits::LevelGridView | levelGridView (int level) const |
| | View for a grid level for All_Partition.
|
| |
| Traits::LeafGridView | leafGridView () const |
| | View for the leaf grid for All_Partition.
|
| |
| 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.
|
| |
| void | globalRefine (int refCount) |
| | uses the interface, mark on entity and refineLocal
|
| |
| template<class DataHandle > |
| void | globalRefine (int refCount, AdaptDataHandleInterface< This, DataHandle > &handle) |
| |
| bool | adapt () |
| | Refine all positive marked leaf entities, coarsen all negative marked entities if possible.
|
| |
| template<class DataHandle > |
| bool | adapt (AdaptDataHandleInterface< This, DataHandle > &handle) |
| | callback adapt method with AdaptDataHandleInterface
|
| |
| bool | preAdapt () |
| | returns true, if a least one element is marked for coarsening
|
| |
| void | postAdapt () |
| | clean up some markers
|
| |
| const Communication & | comm () const |
| | return reference to communication, if MPI found this is specialisation for MPI
|
| |
| template<class EntitySeed > |
| Traits::template Codim< EntitySeed::codimension >::Entity | entity (const EntitySeed &seed) const |
| | obtain Entity from EntitySeed.
|
| |
| bool | writeGrid (const std::string &filename, ctype time) const |
| | write Grid to file in Xdr
|
| |
| bool | readGrid (const std::string &filename, ctype &time) |
| | read Grid from file filename and store time of mesh in time
|
| |
| const HierarchicIndexSet & | hierarchicIndexSet () const |
| |
| const Traits::LevelIndexSet & | levelIndexSet (int level) const |
| | return level index set for given level
|
| |
| const Traits::LeafIndexSet & | leafIndexSet () const |
| | return leaf index set
|
| |
| const GlobalIdSet & | globalIdSet () const |
| | return global IdSet
|
| |
| const LocalIdSet & | localIdSet () const |
| | return local IdSet
|
| |
| ALBERTA MESH * | getMesh () const |
| |
| const MeshPointer & | meshPointer () const |
| |
| const DofNumbering & | dofNumbering () const |
| |
| const LevelProvider & | levelProvider () const |
| |
| int | dune2alberta (int codim, int i) const |
| |
| int | alberta2dune (int codim, int i) const |
| |
| int | generic2alberta (int codim, int i) const |
| |
| int | alberta2generic (int codim, int i) const |
| |
| const Alberta::GlobalVector & | getCoord (const ElementInfo &elementInfo, int vertex) const |
| |
| template<int codim, PartitionIteratorType pitype> |
| AlbertaGrid< dim, dimworld >::Traits::template Codim< codim >::template Partition< pitype >::LevelIterator | lbegin (int level) const |
| |
| template<int codim, PartitionIteratorType pitype> |
| AlbertaGrid< dim, dimworld >::Traits::template Codim< codim >::template Partition< pitype >::LevelIterator | lend (int level) const |
| |
| template<int codim> |
| AlbertaGrid< dim, dimworld >::Traits::template Codim< codim >::LevelIterator | lbegin (int level) const |
| |
| template<int codim> |
| AlbertaGrid< dim, dimworld >::Traits::template Codim< codim >::LevelIterator | lend (int level) const |
| |
| template<int codim, PartitionIteratorType pitype> |
| AlbertaGrid< dim, dimworld >::Traits::template Codim< codim >::template Partition< pitype >::LeafIterator | leafbegin () const |
| |
| template<int codim, PartitionIteratorType pitype> |
| AlbertaGrid< dim, dimworld >::Traits::template Codim< codim >::template Partition< pitype >::LeafIterator | leafend () const |
| |
| template<int codim> |
| AlbertaGrid< dim, dimworld >::Traits::template Codim< codim >::LeafIterator | leafbegin () const |
| |
| template<int codim> |
| AlbertaGrid< dim, dimworld >::Traits::template Codim< codim >::LeafIterator | leafend () const |
| |
| Traits::LeafIntersectionIterator | ileafbegin (const typename Traits::template Codim< 0 >::Entity &entity) const |
| | obtain begin intersection iterator on the leaf level
|
| |
| Traits::LeafIntersectionIterator | ileafend (const typename Traits::template Codim< 0 >::Entity &entity) const |
| | obtain end intersection iterator on the leaf level
|
| |
| Traits::LevelIntersectionIterator | ilevelbegin (const typename Traits::template Codim< 0 >::Entity &entity) const |
| | obtain begin intersection iterator on the entity level
|
| |
| Traits::LevelIntersectionIterator | ilevelend (const typename Traits::template Codim< 0 >::Entity &entity) const |
| | obtain end intersection iterator on the entity level
|
| |
| bool | mark (int refCount, const typename Traits ::template Codim< 0 >::Entity &e) |
| | Marks an entity to be refined/coarsened in a subsequent adapt.
|
| |
| bool | loadBalance () |
| | default implementation of load balance does nothing and returns false
|
| |
| template<class DataHandle > |
| bool | loadBalance (DataHandle &data) |
| | default implementation of load balance does nothing and returns false
|
| |
|
| 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
|
| |
template<
int dim,
int dimworld = Alberta::dimWorld>
class Dune::AlbertaGrid< dim, dimworld >
[ provides Dune::Grid ]
Simplicial grid implementation from the ALBERTA finite element toolbox
AlbertaGrid provides access to the grid from the ALBERTA finite element toolbox through the Dune interface.
ALBERTA is a finite element toolbox written by Alfred Schmidt and Kunibert G. Siebert (see http://www.alberta-fem.de). It contains a simplicial mesh in 1, 2 and 3 space dimensions that can be dynamically adapted by a bisection algorithm.
Supported ALBERTA versions include 3.0 or higher. It can be downloaded from the ALBERTA website (https://gitlab.mathematik.uni-stuttgart.de/ians-nmh/alberta/alberta3).
After installing ALBERTA, just configure DUNE with the cmake option -DAlberta_ROOT=[path/to/alberta] and provide the path to ALBERTA.
Each program linking to ALBERTA only supports a fixed dimension of world. This is obtained from the ALBERTA_DIM preprocessor variable. This variable and all other necessary link flags and libraries are set by the cmake function add_dune_alberta_flags(WORLDDIM [N] [targets]...) with N the world dimension.
CMake sets the compile flag HAVE_ALBERTA that tells you whether ALBERTA was found, and ALBERTA_DIM compile flags which tells you the dimension of world for this program.