|
typedef AlbertaGridFamily< dim,
dimworld > | GridFamily |
| the grid family of AlbertaGrid More...
|
|
typedef GridFamily::ctype | ctype |
|
typedef AlbertaGridFamily< dim,
dimworld >::Traits | Traits |
|
typedef Traits::LeafIndexSet | LeafIndexSet |
| type of leaf index set More...
|
|
typedef Traits::LevelIndexSet | LevelIndexSet |
| type of level index sets More...
|
|
typedef Traits::HierarchicIndexSet | HierarchicIndexSet |
| type of hierarchic index set More...
|
|
typedef Traits::GlobalIdSet | GlobalIdSet |
| type of global id set More...
|
|
typedef Traits::LocalIdSet | LocalIdSet |
| type of local id set More...
|
|
typedef
Traits::CollectiveCommunication | CollectiveCommunication |
| type of collective communication More...
|
|
|
enum | { dimension =dim
} |
| A constant that exports the template parameter dim. More...
|
|
enum | { dimensionworld =dimworld
} |
| A constant that exports the template parameter dimworld. More...
|
|
|
typedef Partition
< All_Partition >
::LevelGridView | LevelGridView |
| View types for All_Partition. More...
|
|
typedef Partition
< All_Partition >
::LeafGridView | LeafGridView |
|
typedef
GridFamily::Traits::LeafIntersection | LeafIntersection |
| A type that is a model of Dune::Intersection, an intersections of two codimension 1 of two codimension 0 entities in the leaf view. More...
|
|
typedef
GridFamily::Traits::LevelIntersection | LevelIntersection |
| A type that is a model of Dune::Intersection, an intersections of two codimension 1 of two codimension 0 entities in a level view. More...
|
|
typedef
GridFamily::Traits::LeafIntersectionIterator | LeafIntersectionIterator |
| A type that is a model of Dune::IntersectionIterator which is an iterator that allows to examine, but not to modify, the intersections of codimension 1 of an leaf element (entity of codimension 0) with other leaf elements. More...
|
|
typedef
GridFamily::Traits::LevelIntersectionIterator | LevelIntersectionIterator |
| A type that is a model of Dune::IntersectionIterator which is an iterator that allows to examine, but not to modify, the intersections of codimension 1 of an element (entity of codimension 0) with other elements on the same level. More...
|
|
typedef
GridFamily::Traits::HierarchicIterator | HierarchicIterator |
| A type that is a model of Dune::HierarchicIterator A type of iterator that allows to examine, but not to modify, entities of codimension 0 that result from refinement of an entity of codimension 0. More...
|
|
|
| AlbertaGrid () |
| create an empty grid More...
|
|
| AlbertaGrid (const Alberta::MacroData< dimension > ¯oData, const Dune::shared_ptr< DuneBoundaryProjection< dimensionworld > > &projection=Dune::shared_ptr< DuneBoundaryProjection< dimensionworld > >()) |
| create a grid from an ALBERTA macro data structure More...
|
|
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 More...
|
|
| ~AlbertaGrid () |
| desctructor More...
|
|
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. More...
|
|
template<int cd, PartitionIteratorType pitype> |
Traits::template Codim< cd >
::template Partition< pitype >
::LevelIterator | lend (int level) const |
| one past the end on this level More...
|
|
template<int codim> |
Traits::template Codim< codim >
::LevelIterator | lbegin (int level) const |
| Iterator to first entity of given codim on level. More...
|
|
template<int codim> |
Traits::template Codim< codim >
::LevelIterator | lend (int level) const |
| one past the end on this level More...
|
|
template<int codim, PartitionIteratorType pitype> |
Traits::template Codim< codim >
::template Partition< pitype >
::LeafIterator | leafbegin () const |
| return LeafIterator which points to first leaf entity More...
|
|
template<int codim, PartitionIteratorType pitype> |
Traits::template Codim< codim >
::template Partition< pitype >
::LeafIterator | leafend () const |
| return LeafIterator which points behind last leaf entity More...
|
|
template<int codim> |
Traits::template Codim< codim >
::LeafIterator | leafbegin () const |
| return LeafIterator which points to first leaf entity More...
|
|
template<int codim> |
Traits::template Codim< codim >
::LeafIterator | leafend () const |
| return LeafIterator which points behind last leaf entity More...
|
|
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. More...
|
|
int | size (int level, GeometryType type) const |
| number of entities per level and geometry type in this process More...
|
|
int | size (int codim) const |
| number of leaf entities per codim in this process More...
|
|
int | size (GeometryType type) const |
| number of leaf entities per geometry type in this process More...
|
|
size_t | numBoundarySegments () const |
| number of boundary segments within the macro grid More...
|
|
template<PartitionIteratorType pitype> |
Traits::template Partition
< pitype >::LevelGridView | levelView (int level) const |
| View for a grid level. More...
|
|
template<PartitionIteratorType pitype> |
Traits::template Partition
< pitype >::LeafGridView | leafView () const |
| View for the leaf grid. More...
|
|
Traits::template Partition
< All_Partition >
::LevelGridView | levelView (int level) const |
| View for a grid level for All_Partition. More...
|
|
Traits::template Partition
< All_Partition >
::LeafGridView | leafView () const |
| View for the leaf grid for All_Partition. More...
|
|
int | getMark (const typename Traits::template Codim< 0 >::Entity &e) const |
| returns adaptation mark for given entity More...
|
|
bool | mark (int refCount, const typename Traits::template Codim< 0 >::Entity &e) |
| Marks an entity to be refined/coarsened in a subsequent adapt. More...
|
|
void | globalRefine (int refCount) |
| uses the interface, mark on entity and refineLocal More...
|
|
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. More...
|
|
template<class DataHandle > |
bool | adapt (AdaptDataHandleInterface< This, DataHandle > &handle) |
| callback adapt method with AdaptDataHandleInterface More...
|
|
bool | preAdapt () |
| returns true, if a least one element is marked for coarsening More...
|
|
void | postAdapt () |
| clean up some markers More...
|
|
const CollectiveCommunication & | comm () const |
| return reference to collective communication, if MPI found this is specialisation for MPI More...
|
|
template<class EntitySeed > |
Traits::template Codim
< EntitySeed::codimension >
::EntityPointer | entityPointer (const EntitySeed &seed) const |
| obtain EntityPointer from EntitySeed. More...
|
|
template<GrapeIOFileFormatType ftype> |
bool | writeGrid (const std::string &filename, ctype time) const |
| write Grid to file in specified GrapeIOFileFormatType More...
|
|
template<GrapeIOFileFormatType ftype> |
bool | readGrid (const std::string &filename, ctype &time) |
| read Grid from file filename and store time of mesh in time More...
|
|
const HierarchicIndexSet & | hierarchicIndexSet () const |
|
const Traits::LevelIndexSet & | levelIndexSet (int level) const |
| return level index set for given level More...
|
|
const Traits::LeafIndexSet & | leafIndexSet () const |
| return leaf index set More...
|
|
const GlobalIdSet & | globalIdSet () const |
| return global IdSet More...
|
|
const LocalIdSet & | localIdSet () const |
| return local IdSet More...
|
|
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 |
|
bool | writeGridXdr (const std::string &filename, ctype time) const |
|
bool | readGridXdr (const std::string &filename, ctype &time) |
| reads ALBERTA mesh file More...
|
|
const
AlbertaGridLeafIntersection
< const This > & | getRealIntersection (const typename Traits::LeafIntersection &intersection) 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::template Partition
< pitype >::LevelGridView | levelGridView (int level) const |
| View for a grid level. More...
|
|
Traits::template Partition
< All_Partition >
::LevelGridView | levelGridView (int level) const |
| View for a grid level for All_Partition. More...
|
|
Traits::template Partition
< pitype >::LeafGridView | leafGridView () const |
| View for the leaf grid. More...
|
|
Traits::template Partition
< All_Partition >
::LeafGridView | leafGridView () const |
| View for the leaf grid for All_Partition. More...
|
|
int | ghostSize (int level, int codim) const |
| ghostSize is zero by default More...
|
|
int | ghostSize (int codim) const |
| ghostSize is zero by default More...
|
|
int | overlapSize (int level, int codim) const |
| overlapSize is zero by default More...
|
|
int | overlapSize (int codim) const |
| overlapSize is zero by default More...
|
|
void | communicate (CommDataHandleIF< DataHandleImp, DataTypeImp > &data, InterfaceType iftype, CommunicationDirection dir, int level) const |
|
void | communicate (CommDataHandleIF< DataHandleImp, DataTypeImp > &data, InterfaceType iftype, CommunicationDirection dir) const |
|
bool | loadBalance () |
| default implementation of load balance does nothing and returns false More...
|
|
bool | loadBalance (DataHandle &data) |
| default implementation of load balance does nothing and returns false More...
|
|
|
bool | mark (int refCount, const typename Codim< 0 >::Entity &e) |
| Marks an entity to be refined/coarsened in a subsequent adapt. More...
|
|
int | getMark (const typename Codim< 0 >::Entity &e) const |
| returns adaptation mark for given entity More...
|
|
template<int dim, int dimworld = Alberta::dimWorld>
class Dune::AlbertaGrid< dim, dimworld >
[ provides Dune::Grid ]
simplicial grid imlementation 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 2.0 or higher. It can be downloaded from the ALBERTA website (www.alberta-fem.de). After installing ALBERTA, just configure DUNE with the –with-alberta option 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, which defaults to WORLDDIM
.
Further installation instructions can be found here: http://www.dune-project.org/external_libraries/install_alberta.html
If you use automake and want to compile a program maude, the following Makefile.am
snippet might help:
bin_PROGRAMS = maude
ALBERTA_DIM = 2
maude_SOURCES = maude.cc
maude_CPPFLAGS = $(AM_CPPFLAGS) $(ALBERTA_CPPFLAGS)
maude_LDFLAGS = $(AM_LDFLAGS) $(ALBERTA_LDFLAGS) $(DUNE_LDFLAGS)
maude_LDADD = $(ALBERTA_LIBS) $(DUNE_LIBS)
This will compile and link your program with the world dimension specified by WORLDDIM
. If you want to use different world dimensions per program, you can use the following snippet in your Makefile.am
:
bin_PROGRAMS = maude2d maude3d
maude2d_SOURCES = maude.cc
maude2d_CPPFLAGS = $(AM_CPPFLAGS) $(ALBERTA2D_CPPFLAGS)
maude2d_LDFLAGS = $(AM_LDFLAGS) $(ALBERTA2D_LDFLAGS) $(DUNE_LDFLAGS)
maude2d_LDADD = $(ALBERTA2D_LIBS) $(DUNE_LIBS)
maude3d_SOURCES = maude.cc
maude3d_CPPFLAGS = $(AM_CPPFLAGS) $(ALBERTA3D_CPPFLAGS)
maude3d_LDFLAGS = $(AM_LDFLAGS) $(ALBERTA3D_LDFLAGS) $(DUNE_LDFLAGS)
maude3d_LDADD = $(ALBERTA3D_LIBS) $(DUNE_LIBS)
In either case the preprocessor variables HAVE_ALBERTA
, which tells you whether ALBERTA was found by configure, and ALBERTA_DIM
which tells you the dimension of world for this program.
For further details look into the alberta.m4
autoconf snippet.