5 #ifndef DUNE_AMG_RENUMBERER_HH
6 #define DUNE_AMG_RENUMBERER_HH
19 typedef typename G::VertexDescriptor
Vertex;
30 void operator()(
const typename G::ConstEdgeIterator& edge);
41 : number_(0), aggregates_(aggregates)
53 aggregates_[edge.target()]=number_;
62 template<
class G,
class I,
class V>
68 for(I index1=index; index1 != endIndex; ++index1)
70 !
get(visitedMap, index1.index())) {
72 aggregates.template breadthFirstSearch<false>(index1.index(), aggregates[index1.index()],
73 graph, renumberer, visitedMap);
74 aggregates[index1.index()] = renumberer;
77 for(; index != endIndex; ++index)
78 put(visitedMap, index.index(),
false);
Provides classes for the Coloring process of AMG.
Definition: allocator.hh:11
PropertyMapTypeSelector< Amg::VertexVisitedTag, Amg::PropertiesGraph< G, Amg::VertexProperties, EP, VM, EM > >::Type get([[maybe_unused]] const Amg::VertexVisitedTag &tag, Amg::PropertiesGraph< G, Amg::VertexProperties, EP, VM, EM > &graph)
Definition: dependency.hh:293
void renumberAggregates(const G &graph, I index, I endIndex, V &visitedMap, AggregatesMap< typename G::VertexDescriptor > &aggregates)
Definition: renumberer.hh:63
Definition: renumberer.hh:16
void operator++()
Definition: renumberer.hh:57
G::VertexDescriptor Vertex
The vertex type.
Definition: renumberer.hh:19
void operator()(const typename G::ConstEdgeIterator &edge)
Definition: renumberer.hh:51
AggregatesMap< Vertex > & aggregates_
Definition: renumberer.hh:36
AggregateRenumberer(AggregatesMap< Vertex > &aggregates)
Constructor.
Definition: renumberer.hh:40
Vertex number_
Definition: renumberer.hh:35