VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions
vtkKCoreDecomposition Class Reference

Compute the k-core decomposition of the input graph. More...

#include <vtkKCoreDecomposition.h>

Inheritance diagram for vtkKCoreDecomposition:
Inheritance graph
[legend]
Collaboration diagram for vtkKCoreDecomposition:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkGraphAlgorithm Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void SetOutputArrayName (const char *)
virtual void SetUseInDegreeNeighbors (bool)
virtual bool GetUseInDegreeNeighbors ()
virtual void UseInDegreeNeighborsOn ()
virtual void UseInDegreeNeighborsOff ()
virtual void SetUseOutDegreeNeighbors (bool)
virtual bool GetUseOutDegreeNeighbors ()
virtual void UseOutDegreeNeighborsOn ()
virtual void UseOutDegreeNeighborsOff ()
virtual void SetCheckInputGraph (bool)
virtual bool GetCheckInputGraph ()
virtual void CheckInputGraphOn ()
virtual void CheckInputGraphOff ()

Static Public Member Functions

static vtkKCoreDecompositionNew ()
static int IsTypeOf (const char *type)
static vtkKCoreDecompositionSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkKCoreDecomposition ()
 ~vtkKCoreDecomposition ()
int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)

Detailed Description

Compute the k-core decomposition of the input graph.

The k-core decomposition is a graph partitioning strategy that is useful for analyzing the structure of large networks. A k-core of a graph G is a maximal connected subgraph of G in which all vertices have degree at least k. The k-core membership for each vertex of the input graph is found on the vertex data of the output graph as an array named 'KCoreDecompositionNumbers' by default. The algorithm used to find the k-cores has O(number of graph edges) running time, and is described in the following reference paper.

An O(m) Algorithm for Cores Decomposition of Networks V. Batagelj, M. Zaversnik, 2001

Thanks:
Thanks to Thomas Otahal from Sandia National Laboratories for providing this implementation.
Examples:
vtkKCoreDecomposition (Examples)
Tests:
vtkKCoreDecomposition (Tests)

Definition at line 53 of file vtkKCoreDecomposition.h.


Member Typedef Documentation

Reimplemented from vtkGraphAlgorithm.

Definition at line 58 of file vtkKCoreDecomposition.h.


Constructor & Destructor Documentation

vtkKCoreDecomposition::vtkKCoreDecomposition ( ) [protected]
vtkKCoreDecomposition::~vtkKCoreDecomposition ( ) [protected]

Member Function Documentation

static vtkKCoreDecomposition* vtkKCoreDecomposition::New ( ) [static]

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkGraphAlgorithm.

virtual const char* vtkKCoreDecomposition::GetClassName ( ) [virtual]

Reimplemented from vtkGraphAlgorithm.

static int vtkKCoreDecomposition::IsTypeOf ( const char *  name) [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkGraphAlgorithm.

virtual int vtkKCoreDecomposition::IsA ( const char *  name) [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkGraphAlgorithm.

static vtkKCoreDecomposition* vtkKCoreDecomposition::SafeDownCast ( vtkObject o) [static]

Reimplemented from vtkGraphAlgorithm.

void vtkKCoreDecomposition::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkGraphAlgorithm.

virtual void vtkKCoreDecomposition::SetOutputArrayName ( const char *  ) [virtual]

Set the output array name. If no output array name is set then the name 'KCoreDecompositionNumbers' is used.

virtual void vtkKCoreDecomposition::SetUseInDegreeNeighbors ( bool  ) [virtual]

Directed graphs only. Use only the in edges to compute the vertex degree of a vertex. The default is to use both in and out edges to compute vertex degree.

virtual bool vtkKCoreDecomposition::GetUseInDegreeNeighbors ( ) [virtual]

Directed graphs only. Use only the in edges to compute the vertex degree of a vertex. The default is to use both in and out edges to compute vertex degree.

virtual void vtkKCoreDecomposition::UseInDegreeNeighborsOn ( ) [virtual]

Directed graphs only. Use only the in edges to compute the vertex degree of a vertex. The default is to use both in and out edges to compute vertex degree.

virtual void vtkKCoreDecomposition::UseInDegreeNeighborsOff ( ) [virtual]

Directed graphs only. Use only the in edges to compute the vertex degree of a vertex. The default is to use both in and out edges to compute vertex degree.

virtual void vtkKCoreDecomposition::SetUseOutDegreeNeighbors ( bool  ) [virtual]

Directed graphs only. Use only the out edges to compute the vertex degree of a vertex. The default is to use both in and out edges to compute vertex degree.

virtual bool vtkKCoreDecomposition::GetUseOutDegreeNeighbors ( ) [virtual]

Directed graphs only. Use only the out edges to compute the vertex degree of a vertex. The default is to use both in and out edges to compute vertex degree.

virtual void vtkKCoreDecomposition::UseOutDegreeNeighborsOn ( ) [virtual]

Directed graphs only. Use only the out edges to compute the vertex degree of a vertex. The default is to use both in and out edges to compute vertex degree.

virtual void vtkKCoreDecomposition::UseOutDegreeNeighborsOff ( ) [virtual]

Directed graphs only. Use only the out edges to compute the vertex degree of a vertex. The default is to use both in and out edges to compute vertex degree.

virtual void vtkKCoreDecomposition::SetCheckInputGraph ( bool  ) [virtual]

Check the input graph for self loops and parallel edges. The k-core is not defined for graphs that contain either of these. Default is on.

virtual bool vtkKCoreDecomposition::GetCheckInputGraph ( ) [virtual]

Check the input graph for self loops and parallel edges. The k-core is not defined for graphs that contain either of these. Default is on.

virtual void vtkKCoreDecomposition::CheckInputGraphOn ( ) [virtual]

Check the input graph for self loops and parallel edges. The k-core is not defined for graphs that contain either of these. Default is on.

virtual void vtkKCoreDecomposition::CheckInputGraphOff ( ) [virtual]

Check the input graph for self loops and parallel edges. The k-core is not defined for graphs that contain either of these. Default is on.

int vtkKCoreDecomposition::RequestData ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

This is called by the superclass. This is the method you should override.

Reimplemented from vtkGraphAlgorithm.


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