Loading...
Searching...
No Matches
Dune::Amg::VertexPropertiesGraph< G, VP, VM > Class Template Reference
Iterative Solvers Template Library (ISTL) » Iterative Solvers » Preconditioners » Parallel Algebraic Multigrid

Attaches properties to the vertices of a graph. More...

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

## Classes

class | VertexIteratorT

## Public Types

typedef G | Graph
| The graph we attach properties to.
typedef Graph::VertexDescriptor | VertexDescriptor
| The vertex descriptor.
typedef Graph::EdgeDescriptor | EdgeDescriptor
| The edge descritor.
typedef VP | VertexProperties
| The type of the properties of the vertices.
typedef VM | VertexMap
| The type of the map for converting the VertexDescriptor to std::size_t.
typedef Graph::EdgeIterator | EdgeIterator
| The type of the mutable edge iterator.
typedef Graph::ConstEdgeIterator | ConstEdgeIterator
| The type of the constant edge iterator.
typedef VertexIteratorT< VertexPropertiesGraph< Graph, VertexProperties, VM > > | VertexIterator
| The type of the mutable Vertex iterator.
typedef VertexIteratorT< const VertexPropertiesGraph< Graph, VertexProperties, VM > > | ConstVertexIterator
| The type of the constant Vertex iterator.

## Public Member Functions

EdgeIterator | beginEdges (const VertexDescriptor &source)
| Get the mutable edge iterator over edges starting at a vertex.
EdgeIterator | endEdges (const VertexDescriptor &source)
| Get the mutable edge iterator over edges starting at a vertex.
ConstEdgeIterator | beginEdges (const VertexDescriptor &source) const
| Get the mutable edge iterator over edges starting at a vertex.
ConstEdgeIterator | endEdges (const VertexDescriptor &source) const
| Get the mutable edge iterator over edges starting at a vertex.
VertexIterator | begin ()
| Get an iterator over the vertices.
VertexIterator | end ()
| Get an iterator over the vertices.
ConstVertexIterator | begin () const
| Get an iterator over the vertices.
ConstVertexIterator | end () const
| Get an iterator over the vertices.
VertexProperties & | getVertexProperties (const VertexDescriptor &vertex)
| Get the properties associated with a vertex.
const VertexProperties & | getVertexProperties (const VertexDescriptor &vertex) const
| Get the properties associated with a vertex.
const Graph & | graph () const
| Get the graph the properties are attached to.
std::size_t | noVertices () const
| Get the number of vertices in the graph.
std::size_t | noEdges () const
| Get the number of edges in the graph.
VertexDescriptor | maxVertex () const
| Get the maximal vertex descriptor.
| VertexPropertiesGraph (Graph &graph, const VertexMap vmap=VertexMap())
| Constructor.

## Detailed Description

template<class G, class VP, class VM = IdentityMap>
class Dune::Amg::VertexPropertiesGraph< G, VP, VM >

Attaches properties to the vertices of a graph.

## Member Typedef Documentation

## ConstEdgeIterator

template<class G, class VP, class VM = IdentityMap>

typedef Graph::ConstEdgeIterator Dune::Amg::VertexPropertiesGraph< G, VP, VM >::ConstEdgeIterator

The type of the constant edge iterator.

## ConstVertexIterator

template<class G, class VP, class VM = IdentityMap>

typedef VertexIteratorT<const VertexPropertiesGraph<Graph, VertexProperties,VM> > Dune::Amg::VertexPropertiesGraph< G, VP, VM >::ConstVertexIterator

The type of the constant Vertex iterator.

## EdgeDescriptor

template<class G, class VP, class VM = IdentityMap>

typedef Graph::EdgeDescriptor Dune::Amg::VertexPropertiesGraph< G, VP, VM >::EdgeDescriptor

The edge descritor.

## EdgeIterator

template<class G, class VP, class VM = IdentityMap>

typedef Graph::EdgeIterator Dune::Amg::VertexPropertiesGraph< G, VP, VM >::EdgeIterator

The type of the mutable edge iterator.

## Graph

template<class G, class VP, class VM = IdentityMap>

typedef G Dune::Amg::VertexPropertiesGraph< G, VP, VM >::Graph

The graph we attach properties to.

## VertexDescriptor

template<class G, class VP, class VM = IdentityMap>

typedef Graph::VertexDescriptor Dune::Amg::VertexPropertiesGraph< G, VP, VM >::VertexDescriptor

The vertex descriptor.

## VertexIterator

template<class G, class VP, class VM = IdentityMap>

typedef VertexIteratorT<VertexPropertiesGraph<Graph, VertexProperties,VM> > Dune::Amg::VertexPropertiesGraph< G, VP, VM >::VertexIterator

The type of the mutable Vertex iterator.

## VertexMap

template<class G, class VP, class VM = IdentityMap>

typedef VM Dune::Amg::VertexPropertiesGraph< G, VP, VM >::VertexMap

The type of the map for converting the VertexDescriptor to std::size_t.

Has to provide the following method: std::size_t operator[](const VertexDescriptor& vertex)

The following condition has to be met: Let v1 and v2 be two vertex descriptors with v1 < v2 and map be the index map. Then map[v1]<map[v2] has to hold.

## VertexProperties

template<class G, class VP, class VM = IdentityMap>

typedef VP Dune::Amg::VertexPropertiesGraph< G, VP, VM >::VertexProperties

The type of the properties of the vertices.

## Constructor & Destructor Documentation

## VertexPropertiesGraph()

template<class G, class VP, class VM = IdentityMap>

Dune::Amg::VertexPropertiesGraph< G, VP, VM >::VertexPropertiesGraph | ( | Graph & | graph,
|  | const VertexMap | vmap = VertexMap() )

Constructor.

Parameters

  graph | The graph we attach properties to.
  vmap | The vertex map.

## Member Function Documentation

## begin() [1/2]

template<class G, class VP, class VM = IdentityMap>

VertexIterator Dune::Amg::VertexPropertiesGraph< G, VP, VM >::begin | ( |  | ) |

Get an iterator over the vertices.

Returns
  A vertex Iterator positioned at the first vertex.

## begin() [2/2]

template<class G, class VP, class VM = IdentityMap>

ConstVertexIterator Dune::Amg::VertexPropertiesGraph< G, VP, VM >::begin | ( |  | ) | const

Get an iterator over the vertices.

Returns
  A vertex Iterator positioned at the first vertex.

## beginEdges() [1/2]

template<class G, class VP, class VM = IdentityMap>

EdgeIterator Dune::Amg::VertexPropertiesGraph< G, VP, VM >::beginEdges | ( | const VertexDescriptor & | source | ) |

Get the mutable edge iterator over edges starting at a vertex.

Returns
  An edge iterator over edges starting at a vertex positioned at the first edge.

## beginEdges() [2/2]

template<class G, class VP, class VM = IdentityMap>

ConstEdgeIterator Dune::Amg::VertexPropertiesGraph< G, VP, VM >::beginEdges | ( | const VertexDescriptor & | source | ) | const

Get the mutable edge iterator over edges starting at a vertex.

Returns
  An edge iterator over edges starting at a vertex positioned at the first edge.

## end() [1/2]

template<class G, class VP, class VM = IdentityMap>

VertexIterator Dune::Amg::VertexPropertiesGraph< G, VP, VM >::end | ( |  | ) |

Get an iterator over the vertices.

Returns
  A vertex Iterator positioned behind the last vertex.

## end() [2/2]

template<class G, class VP, class VM = IdentityMap>

ConstVertexIterator Dune::Amg::VertexPropertiesGraph< G, VP, VM >::end | ( |  | ) | const

Get an iterator over the vertices.

Returns
  A vertex Iterator positioned behind the last vertex.

## endEdges() [1/2]

template<class G, class VP, class VM = IdentityMap>

EdgeIterator Dune::Amg::VertexPropertiesGraph< G, VP, VM >::endEdges | ( | const VertexDescriptor & | source | ) |

Get the mutable edge iterator over edges starting at a vertex.

Returns
  An edge iterator over edges starting at a vertex positioned after the last edge.

## endEdges() [2/2]

template<class G, class VP, class VM = IdentityMap>

ConstEdgeIterator Dune::Amg::VertexPropertiesGraph< G, VP, VM >::endEdges | ( | const VertexDescriptor & | source | ) | const

Get the mutable edge iterator over edges starting at a vertex.

Returns
  An edge iterator over edges starting at a vertex positioned after the last edge.

## getVertexProperties() [1/2]

template<class G, class VP, class VM = IdentityMap>

VertexProperties & Dune::Amg::VertexPropertiesGraph< G, VP, VM >::getVertexProperties | ( | const VertexDescriptor & | vertex | ) |

Get the properties associated with a vertex.

Parameters

  vertex | The descriptor identifying the vertex.

Returns
  The properties of the vertex.

## getVertexProperties() [2/2]

template<class G, class VP, class VM = IdentityMap>

const VertexProperties & Dune::Amg::VertexPropertiesGraph< G, VP, VM >::getVertexProperties | ( | const VertexDescriptor & | vertex | ) | const

Get the properties associated with a vertex.

Parameters

  vertex | The descriptor identifying the vertex.

Returns
  The properties of the vertex.

## graph()

template<class G, class VP, class VM = IdentityMap>

const Graph & Dune::Amg::VertexPropertiesGraph< G, VP, VM >::graph | ( |  | ) | const

Get the graph the properties are attached to.

Returns
  The underlying graph.

## maxVertex()

template<class G, class VP, class VM = IdentityMap>

VertexDescriptor Dune::Amg::VertexPropertiesGraph< G, VP, VM >::maxVertex | ( |  | ) | const

Get the maximal vertex descriptor.

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

## noEdges()

template<class G, class VP, class VM = IdentityMap>

std::size_t Dune::Amg::VertexPropertiesGraph< G, VP, VM >::noEdges | ( |  | ) | const

Get the number of edges in the graph.

## noVertices()

template<class G, class VP, class VM = IdentityMap>

std::size_t Dune::Amg::VertexPropertiesGraph< G, VP, VM >::noVertices | ( |  | ) | const

Get the number of vertices in the graph.

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

- graph.hh