dune-istl
2.3.0
|
Class providing information about the mapping of the vertices onto aggregates. More...
#include <dune/istl/paamg/aggregates.hh>
Classes | |
class | DummyEdgeVisitor |
A Dummy visitor that does nothing for each visited edge. More... | |
Public Types | |
typedef V | VertexDescriptor |
The vertex descriptor type. More... | |
typedef V | AggregateDescriptor |
The aggregate descriptor type. More... | |
typedef PoolAllocator < VertexDescriptor, 100 > | Allocator |
The allocator we use for our lists and the set. More... | |
typedef SLList < VertexDescriptor, Allocator > | VertexList |
The type of a single linked list of vertex descriptors. More... | |
typedef const AggregateDescriptor * | const_iterator |
typedef AggregateDescriptor * | iterator |
Public Member Functions | |
AggregatesMap () | |
Constructs without allocating memory. More... | |
AggregatesMap (std::size_t noVertices) | |
Constructs with allocating memory. More... | |
~AggregatesMap () | |
Destructor. More... | |
template<class M , class G , class C > | |
tuple< int, int, int, int > | buildAggregates (const M &matrix, G &graph, const C &criterion, bool finestLevel) |
Build the aggregates. More... | |
template<bool reset, class G , class F , class VM > | |
std::size_t | breadthFirstSearch (const VertexDescriptor &start, const AggregateDescriptor &aggregate, const G &graph, F &aggregateVisitor, VM &visitedMap) const |
Breadth first search within an aggregate. More... | |
template<bool remove, bool reset, class G , class L , class F1 , class F2 , class VM > | |
std::size_t | breadthFirstSearch (const VertexDescriptor &start, const AggregateDescriptor &aggregate, const G &graph, L &visited, F1 &aggregateVisitor, F2 &nonAggregateVisitor, VM &visitedMap) const |
Breadth first search within an aggregate. More... | |
void | allocate (std::size_t noVertices) |
Allocate memory for holding the information. More... | |
std::size_t | noVertices () const |
Get the number of vertices. More... | |
void | free () |
Free the allocated memory. More... | |
AggregateDescriptor & | operator[] (const VertexDescriptor &v) |
Get the aggregate a vertex belongs to. More... | |
const AggregateDescriptor & | operator[] (const VertexDescriptor &v) const |
Get the aggregate a vertex belongs to. More... | |
const_iterator | begin () const |
const_iterator | end () const |
iterator | begin () |
iterator | end () |
Static Public Attributes | |
static const V | UNAGGREGATED |
Identifier of not yet aggregated vertices. More... | |
static const V | ISOLATED |
Identifier of isolated vertices. More... | |
Class providing information about the mapping of the vertices onto aggregates.
It is assumed that the vertices are consecutively numbered from 0 to the maximum vertex number.