1 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
---|
2 | <!-- |
---|
3 | -- Copyright (c) 2004 Trustees of Indiana University |
---|
4 | -- |
---|
5 | -- Distributed under the Boost Software License, Version 1.0. |
---|
6 | -- (See accompanying file LICENSE_1_0.txt or copy at |
---|
7 | -- http://www.boost.org/LICENSE_1_0.txt) |
---|
8 | --> |
---|
9 | <html> |
---|
10 | <head> |
---|
11 | <meta name="generator" content= |
---|
12 | "HTML Tidy for Mac OS X (vers 12 April 2005), see www.w3.org"> |
---|
13 | <meta http-equiv="Content-Type" content= |
---|
14 | "text/html; charset=us-ascii"> |
---|
15 | <title>Function betweenness_centrality_clustering</title> |
---|
16 | </head> |
---|
17 | <body> |
---|
18 | <div class="titlepage"></div> |
---|
19 | <div class="refnamediv"> |
---|
20 | |
---|
21 | <IMG SRC="../../../boost.png" |
---|
22 | ALT="C++ Boost" width="277" height="86"> |
---|
23 | |
---|
24 | <h1><img src="figs/python.gif" alt="(Python)"/><span class="refentrytitle">Function |
---|
25 | betweenness_centrality_clustering</span></h1> |
---|
26 | <p>boost::betweenness_centrality_clustering — Graph |
---|
27 | clustering based on edge betweenness centrality.</p> |
---|
28 | </div> |
---|
29 | <h2 xmlns:rev= |
---|
30 | "http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class= |
---|
31 | "refsynopsisdiv-title">Synopsis</h2> |
---|
32 | <div xmlns:rev= |
---|
33 | "http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class= |
---|
34 | "refsynopsisdiv"> |
---|
35 | <pre class="synopsis"> |
---|
36 | <span class="bold"><b>template</b></span><<span class= |
---|
37 | "bold"><b>typename</b></span> MutableGraph, <span class= |
---|
38 | "bold"><b>typename</b></span> Done, <span class= |
---|
39 | "bold"><b>typename</b></span> EdgeCentralityMap, |
---|
40 | <span class= |
---|
41 | "bold"><b>typename</b></span> VertexIndexMap> |
---|
42 | <span class="type"><span class= |
---|
43 | "bold"><b>void</b></span></span> betweenness_centrality_clustering(MutableGraph & g, Done done, |
---|
44 | EdgeCentralityMap edge_centrality, |
---|
45 | VertexIndexMap vertex_index); |
---|
46 | <span class="bold"><b>template</b></span><<span class= |
---|
47 | "bold"><b>typename</b></span> MutableGraph, <span class= |
---|
48 | "bold"><b>typename</b></span> Done, <span class= |
---|
49 | "bold"><b>typename</b></span> EdgeCentralityMap> |
---|
50 | <span class="type"><span class= |
---|
51 | "bold"><b>void</b></span></span> betweenness_centrality_clustering(MutableGraph & g, Done done, |
---|
52 | EdgeCentralityMap edge_centrality); |
---|
53 | <span class="bold"><b>template</b></span><<span class= |
---|
54 | "bold"><b>typename</b></span> MutableGraph, <span class= |
---|
55 | "bold"><b>typename</b></span> Done> |
---|
56 | <span class="type"><span class= |
---|
57 | "bold"><b>void</b></span></span> betweenness_centrality_clustering(MutableGraph & g, Done done); |
---|
58 | </pre></div> |
---|
59 | <div class="refsect1" lang="en"><a name="id822306" id= |
---|
60 | "id822306"></a> |
---|
61 | <h2>Description</h2> |
---|
62 | <p>This algorithm implements graph clustering based on edge |
---|
63 | betweenness centrality. It is an iterative algorithm, where in each |
---|
64 | step it compute the edge betweenness centrality (via <a href= |
---|
65 | "betweenness_centrality.html">brandes_betweenness_centrality</a>) and |
---|
66 | removes the edge with the maximum betweenness centrality. The |
---|
67 | <tt class="computeroutput">done</tt> function object determines |
---|
68 | when the algorithm terminates (the edge found when the algorithm |
---|
69 | terminates will not be removed).</p> |
---|
70 | |
---|
71 | <h2>Parameters</h2> |
---|
72 | IN: <tt>const Graph& g</tt> |
---|
73 | <blockquote> |
---|
74 | The graph object on which the algorithm will be applied. The type |
---|
75 | <tt>Graph</tt> must be a model of <a |
---|
76 | href="VertexListGraph.html">Vertex List Graph</a> and <a |
---|
77 | href="IncidenceGraph.html">Incidence Graph</a>. When an edge |
---|
78 | centrality map is supplied, it must also model <a |
---|
79 | href="EdgeListGraph.html">Edge List Graph</a> and <a |
---|
80 | href="MutableGraph.html">MutableGraph</a>.<br> |
---|
81 | |
---|
82 | <b>Python</b>: The parameter is named <tt>graph</tt>. |
---|
83 | </blockquote> |
---|
84 | |
---|
85 | IN: <tt>Done done</tt> |
---|
86 | <blockquote> |
---|
87 | The function object that indicates termination of the algorithm. |
---|
88 | It must be a ternary function object thats accepts the maximum |
---|
89 | centrality, the descriptor of the edge that will be removed, and |
---|
90 | the graph <tt class="computeroutput">g</tt>.<br> |
---|
91 | <b>Python</b>: Any callable Python object will suffice. |
---|
92 | </blockquote> |
---|
93 | |
---|
94 | OUT/UTIL: <tt>EdgeCentralityMap edge_centrality_map</tt> |
---|
95 | <blockquote> |
---|
96 | This property map is used to accumulate the betweenness centrality |
---|
97 | of each edge, and is a secondary form of output for the |
---|
98 | algorithm. The type <tt>EdgeCentralityMap</tt> must be a model of <a |
---|
99 | href="../../property_map/ReadWritePropertyMap.html">Read/Write |
---|
100 | Property Map</a>, with the graph's edge descriptor type as its key |
---|
101 | type. The value type of this property map should be the same as the |
---|
102 | value type of the <tt>CentralityMap</tt> property map.<br> |
---|
103 | |
---|
104 | <b>Default:</b> a <tt>dummy_property_map</tt>, which requires no |
---|
105 | work to compute and returns no answer.<br> |
---|
106 | <b>Python</b>: The color map must be a <tt>edge_double_map</tt> for |
---|
107 | the graph.<br> |
---|
108 | <b>Python default</b>: <tt>graph.get_edge_double_map("centrality")</tt> |
---|
109 | </blockquote> |
---|
110 | |
---|
111 | IN: <tt>VertexIndexMap vertex_index</tt> |
---|
112 | <blockquote> |
---|
113 | This maps each vertex to an integer in the range <tt>[0, |
---|
114 | num_vertices(g))</tt>. This is necessary for efficient updates of the |
---|
115 | heap data structure when an edge is relaxed. The type |
---|
116 | <tt>VertexIndexMap</tt> must be a model of |
---|
117 | <a href="../../property_map/ReadablePropertyMap.html">Readable Property Map</a>. The value type of the map must be an |
---|
118 | integer type. The vertex descriptor type of the graph needs to be |
---|
119 | usable as the key type of the map.<br> |
---|
120 | <b>Default:</b> <tt>get(vertex_index, g)</tt>. |
---|
121 | Note: if you use this default, make sure your graph has |
---|
122 | an internal <tt>vertex_index</tt> property. For example, |
---|
123 | <tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does |
---|
124 | not have an internal <tt>vertex_index</tt> property.<br> |
---|
125 | <b>Python</b>: Unsupported parameter. |
---|
126 | </blockquote> |
---|
127 | |
---|
128 | <table xmlns:rev= |
---|
129 | "http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width= |
---|
130 | "100%"> |
---|
131 | <tr> |
---|
132 | <td align="left"></td> |
---|
133 | <td align="right"></td> |
---|
134 | </tr> |
---|
135 | </table> |
---|
136 | <h3>Where Defined</h3> |
---|
137 | <<a href= |
---|
138 | "../../../boost/graph/bc_clustering.hpp">boost/graph/bc_clustering.hpp</a>> |
---|
139 | <hr> |
---|
140 | <table> |
---|
141 | <tr valign="top"> |
---|
142 | <td nowrap>Copyright © 2004</td> |
---|
143 | <td><a href="../../../people/doug_gregor.html">Douglas Gregor</a>, |
---|
144 | Indiana University (dgregor@cs.indiana.edu)<br> |
---|
145 | <a href="http://www.osl.iu.edu/~lums">Andrew Lumsdaine</a>, Indiana |
---|
146 | University (<a href= |
---|
147 | "mailto:lums@osl.iu.edu">lums@osl.iu.edu</a>)</td> |
---|
148 | </tr> |
---|
149 | </table> |
---|
150 | </body> |
---|
151 | </html> |
---|