dune-istl  2.2.1
Classes | Public Types | Public Member Functions | Static Public Attributes | List of all members
Dune::Amg::AggregatesMap< V > Class Template Reference

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.
typedef V AggregateDescriptor
 The aggregate descriptor type.
typedef PoolAllocator
< VertexDescriptor, 100 > 
Allocator
 The allocator we use for our lists and the set.
typedef SLList
< VertexDescriptor, Allocator
VertexList
 The type of a single linked list of vertex descriptors.
typedef const AggregateDescriptorconst_iterator
typedef AggregateDescriptoriterator

Public Member Functions

 AggregatesMap ()
 Constructs without allocating memory.
 AggregatesMap (std::size_t noVertices)
 Constructs with allocating memory.
 ~AggregatesMap ()
 Destructor.
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.
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.
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.
void allocate (std::size_t noVertices)
 Allocate memory for holding the information.
std::size_t noVertices () const
 Get the number of vertices.
void free ()
 Free the allocated memory.
AggregateDescriptoroperator[] (const VertexDescriptor &v)
 Get the aggregate a vertex belongs to.
const AggregateDescriptoroperator[] (const VertexDescriptor &v) const
 Get the aggregate a vertex belongs to.
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.
static const V ISOLATED
 Identifier of isolated vertices.

Detailed Description

template<class V>
class Dune::Amg::AggregatesMap< V >

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.


The documentation for this class was generated from the following file: