Dune Core Modules (unstable)

A subgraph of a graph. More...

#include <dune/istl/paamg/graph.hh>

Classes

class  EdgeIndexMap
 An index map for mapping the edges to indices. More...
 
class  EdgeIterator
 The edge iterator of the graph. More...
 
class  VertexIterator
 The vertex iterator of the graph. More...
 

Public Types

typedef G Graph
 The type of the graph we are a sub graph for.
 
typedef T Excluded
 Random access container providing information about which vertices are excluded.
 
typedef Graph::VertexDescriptor VertexDescriptor
 The vertex descriptor.
 
typedef EdgeIterator ConstEdgeIterator
 The constant edge iterator type.
 
typedef VertexIterator ConstVertexIterator
 The constant vertex iterator type.
 

Public Member Functions

EdgeIndexMap getEdgeIndexMap ()
 Get an edge index map for the graph. More...
 
ConstVertexIterator begin () const
 Get an iterator over the vertices. More...
 
ConstVertexIterator end () const
 Get an iterator over the vertices. More...
 
ConstEdgeIterator beginEdges (const VertexDescriptor &source) const
 Get an iterator over the edges starting at a vertex. More...
 
ConstEdgeIterator endEdges (const VertexDescriptor &source) const
 Get an iterator over the edges starting at a vertex. More...
 
std::size_t noVertices () const
 Get the number of vertices in the graph.
 
VertexDescriptor maxVertex () const
 Get the maximal vertex descriptor. More...
 
std::size_t noEdges () const
 Get the number of edges in the graph.
 
EdgeDescriptor findEdge (const VertexDescriptor &source, const VertexDescriptor &target) const
 Find the descriptor of an edge. More...
 
 SubGraph (const Graph &graph, const T &excluded)
 Constructor. More...
 
 ~SubGraph ()
 Destructor.
 

Detailed Description

template<class G, class T>
class Dune::Amg::SubGraph< G, T >

A subgraph of a graph.

This is a (cached) view of a graph where certain vertices and edges pointing to and leading from them are skipped.

The vertex descriptors are not changed.

Constructor & Destructor Documentation

◆ SubGraph()

template<class G , class T >
Dune::Amg::SubGraph< G, T >::SubGraph ( const Graph graph,
const T &  excluded 
)

Constructor.

Parameters
graphThe graph we are a sub graph for.
excludedIf excluded[i] is true then vertex i will not appear in the sub graph.

Member Function Documentation

◆ begin()

template<class G , class T >
ConstVertexIterator Dune::Amg::SubGraph< G, T >::begin ( ) const

Get an iterator over the vertices.

Returns
A vertex Iterator positioned at the first vertex.

◆ beginEdges()

template<class G , class T >
ConstEdgeIterator Dune::Amg::SubGraph< G, T >::beginEdges ( const VertexDescriptor source) const

Get an iterator over the edges starting at a vertex.

Parameters
sourceThe vertex where the edges should start.
Returns
An edge iterator positioned at the first edge starting from vertex source.

◆ end()

template<class G , class T >
ConstVertexIterator Dune::Amg::SubGraph< G, T >::end ( ) const

Get an iterator over the vertices.

Returns
A vertex Iterator positioned behind the last vertex.

◆ endEdges()

template<class G , class T >
ConstEdgeIterator Dune::Amg::SubGraph< G, T >::endEdges ( const VertexDescriptor source) const

Get an iterator over the edges starting at a vertex.

Parameters
sourceThe vertex where the edges should start.
Returns
An edge iterator positioned behind the last edge starting from vertex source.

◆ findEdge()

template<class G , class T >
EdgeDescriptor Dune::Amg::SubGraph< G, T >::findEdge ( const VertexDescriptor source,
const VertexDescriptor target 
) const

Find the descriptor of an edge.

Parameters
sourceThe source vertex of the edge we search for.
targetThe target vertex of the edge we search for.
Returns
The edge we found or numeric_limits<EdgeIterator>::max() if it does not exist.

◆ getEdgeIndexMap()

template<class G , class T >
EdgeIndexMap Dune::Amg::SubGraph< G, T >::getEdgeIndexMap ( )

Get an edge index map for the graph.

Returns
An edge index map for the graph.

◆ maxVertex()

template<class G , class T >
VertexDescriptor Dune::Amg::SubGraph< G, T >::maxVertex ( ) const

Get the maximal vertex descriptor.

Returns
The minimum value v such that for all vertices w in the graph w<v holds.

The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Dec 21, 23:30, 2024)