From efc05efebd028201d4bd8c1e0bf237dd087de925 Mon Sep 17 00:00:00 2001
From: Douglas Gregor boost::betweenness_centrality_clustering — Graph clustering based on edge betweenness centrality. Parameters The function object that indicates termination of the algorithm. It must be a ternary function object thats accepts the maximum centrality, the descriptor of the edge that will be removed, and the graph g . (UTIL/OUT) The property map that will store the betweenness centrality for each edge. When the algorithm terminates, it will contain the edge centralities for the graph. The type of this property map must model the ReadWritePropertyMap concept. Defaults to an iterator_property_map whose value type is Done::centrality_type and using get(edge_index, g) for the index map. The graph on which clustering will be performed. The type of this parameter (MutableGraph ) must be a model of the VertexListGraph, IncidenceGraph, EdgeListGraph, and Mutable Graph concepts. (IN) The property map that maps vertices to indices in the range [0, num_vertices(g)). This type of this property map must model the ReadablePropertyMap concept and its value type must be an integral type. Defaults to get(vertex_index, g) . This algorithm implements graph clustering based on edge betweenness centrality. It is an iterative algorithm, where in each step it compute the edge betweenness centrality (via brandes_betweenness_centrality) and removes the edge with the maximum betweenness centrality. The done function object determines when the algorithm terminates (the edge found when the algorithm terminates will not be removed). boost::betweenness_centrality_clustering — Graph
+clustering based on edge betweenness centrality. Parameters The function object that indicates termination of the algorithm.
+It must be a ternary function object thats accepts the maximum
+centrality, the descriptor of the edge that will be removed, and
+the graph g . (UTIL/OUT) The property map that will store the betweenness
+centrality for each edge. When the algorithm terminates, it will
+contain the edge centralities for the graph. The type of this
+property map must model the ReadWritePropertyMap concept. Defaults
+to an iterator_property_map whose
+value type is Done::centrality_type
+and using get(edge_index, g) for
+the index map. The graph on which clustering will be performed. The type of
+this parameter (MutableGraph ) must
+be a model of the VertexListGraph, IncidenceGraph, EdgeListGraph,
+and Mutable Graph concepts. (IN) The property map that maps vertices to indices in the range
+[0, num_vertices(g)). This type of this property map must model the
+ReadablePropertyMap concept and its value type must be an integral
+type. Defaults to get(vertex_index,
+g) . This algorithm implements graph clustering based on edge
+betweenness centrality. It is an iterative algorithm, where in each
+step it compute the edge betweenness centrality (via brandes_betweenness_centrality) and
+removes the edge with the maximum betweenness centrality. The
+done function object determines
+when the algorithm terminates (the edge found when the algorithm
+terminates will not be removed).
diff --git a/doc/betweenness_centrality.html b/doc/betweenness_centrality.html
index 453fc54f..5c7c7a57 100644
--- a/doc/betweenness_centrality.html
+++ b/doc/betweenness_centrality.html
@@ -7,7 +7,7 @@
Function betweenness_centrality_clustering
Synopsis
-template<typename MutableGraph, typename Done, typename EdgeCentralityMap,
- typename VertexIndexMap>
- void betweenness_centrality_clustering(MutableGraph & g, Done done,
- EdgeCentralityMap edge_centrality,
- VertexIndexMap vertex_index);
-template<typename MutableGraph, typename Done, typename EdgeCentralityMap>
- void betweenness_centrality_clustering(MutableGraph & g, Done done,
- EdgeCentralityMap edge_centrality);
-template<typename MutableGraph, typename Done>
- void betweenness_centrality_clustering(MutableGraph & g, Done done);
Description
-
+
+
+
+
+
+
+
Function
+betweenness_centrality_clusteringSynopsis
+
+template<typename MutableGraph, typename Done, typename EdgeCentralityMap,
+ typename VertexIndexMap>
+ void betweenness_centrality_clustering(MutableGraph & g, Done done,
+ EdgeCentralityMap edge_centrality,
+ VertexIndexMap vertex_index);
+template<typename MutableGraph, typename Done, typename EdgeCentralityMap>
+ void betweenness_centrality_clustering(MutableGraph & g, Done done,
+ EdgeCentralityMap edge_centrality);
+template<typename MutableGraph, typename Done>
+ void betweenness_centrality_clustering(MutableGraph & g, Done done);
+
Description
+
+
+
+
+
+
+
+ Where Defined
-<boost/graph/bc_clustering.hpp>
-
+<boost/graph/bc_clustering.hpp>
-
-
-
-
+
- Copyright © 2004
-Douglas Gregor, Indiana University (dgregor@cs.indiana.edu)
-Andrew Lumsdaine,
-Indiana University (lums@osl.iu.edu)
-
+
+
+
diff --git a/doc/bellman_ford_shortest.html b/doc/bellman_ford_shortest.html
index 6de79d8e..ad7130f4 100644
--- a/doc/bellman_ford_shortest.html
+++ b/doc/bellman_ford_shortest.html
@@ -20,7 +20,7 @@
+
+Copyright © 2004
+Douglas Gregor,
+Indiana University (dgregor@cs.indiana.edu)
+
+Andrew Lumsdaine, Indiana
+University (lums@osl.iu.edu)
-
+
@@ -184,14 +184,18 @@ IN: EdgeListGraph& g
A directed or undirected graph whose type must be a model of
Edge List Graph. If a root vertex is
provided, then the graph must also model
- Vertex List Graph.
+ Vertex List Graph.
bellman_ford_shortest_paths
+
+ Python: The parameter is named graph.
IN: Size N
The number of vertices in the graph. The type Size must
be an integer type.
@@ -205,7 +209,10 @@ IN: weight_map(WeightMap w)
Map. The key type for this property map must be the edge
descriptor of the graph. The value type for the weight map must be
Addable with the distance map's value type.
- Default: num_vertices(g).
+ Default: num_vertices(g).
+
+ Python: Unsupported parameter.
- Default: get(edge_weight, g)
+ Default: get(edge_weight, g)
+
+ Python: Must be an edge_double_map for the graph.
+ Python default: graph.get_edge_double_map("weight")
OUT: predecessor_map(PredecessorMap p_map)
@@ -219,7 +226,9 @@ OUT: predecessor_map(PredecessorMap p_map)
href="../../property_map/ReadWritePropertyMap.html">Read/Write
Property Map which key and vertex types the same as the vertex
descriptor type of the graph.
- Default: dummy_property_map
+ Default: dummy_property_map
+
+ Python: Must be a vertex_vertex_map for the graph.
IN/OUT: distance_map(DistanceMap d)
@@ -233,7 +242,8 @@ IN/OUT: distance_map(DistanceMap d)
distance map must be Less
Than Comparable.
Default: get(vertex_distance,
- g)
+ g)
+ Python: Must be a vertex_double_map for the graph.
IN: root_vertex(Vertex s)
@@ -254,7 +264,13 @@ IN: visitor(BellmanFordVisitor v)
The visitor object is passed by value [1].
- Default: bellman_visitor<null_visitor>
+ Default: bellman_visitor<null_visitor>
+
+ Python: The parameter should be an object that derives from
+ the BellmanFordVisitor type
+ of the graph.
+
IN: distance_combine(BinaryFunction combine)
@@ -265,7 +281,9 @@ IN: distance_combine(BinaryFunction combine)
type. The result type must be the same as the distance map's value
type.
Default:std::plus<D>
- with D=typename property_traits<DistanceMap>::value_type.
+ with D=typename property_traits<DistanceMap>::value_type.
+
+ Python: Unsupported parameter.
IN: distance_compare(BinaryPredicate compare)
@@ -274,7 +292,9 @@ IN: distance_compare(BinaryPredicate compare)
that compares distances in the relaxation step. The argument types
must match the distance map's value type.
Default: std::less<D>
- with D=typename property_traits<DistanceMap>::value_type.
+ with D=typename property_traits<DistanceMap>::value_type.
+
+ Python: Unsupported parameter.
-brandes_betweenness_centrality
+
brandes_betweenness_centrality
@@ -126,7 +126,9 @@ IN: const Graph& g
href="VertexListGraph.html">Vertex List Graph and Incidence Graph. When an edge
centrality map is supplied, it must also model Edge List Graph.
+ href="EdgeListGraph.html">Edge List Graph.
+
+Python: The parameter is named graph.
UTIL: IncomingMap incoming
@@ -141,7 +143,9 @@ UTIL: IncomingMap incoming
href="../../property_map/iterator_property_map.html">
iterator_property_map created from a
std::vector of std::vector<Edge>, where
- Edge is the edge descriptor type of the graph.
+ Edge is the edge descriptor type of the graph.
+
+ Python: Unsupported parameter.
UTIL: DistanceMap distance_map
@@ -162,7 +166,9 @@ UTIL: DistanceMap distance_map
std::vector of the WeightMap's value type (or the
vertices_size_type of the graph when no weight map exists)
of size num_vertices(g) and using the vertex_index for
- the index map.
+ the index map.
+
+ Python: Unsupported parameter.
UTIL: DependencyMap dependency
@@ -180,7 +186,9 @@ UTIL: DependencyMap dependency
iterator_property_map created from a
std::vector of the CentralityMap's value type of
size num_vertices(g) and using the vertex_index
- for the index map.
+ for the index map.
+
+ Python: Unsupported parameter.
UTIL: PathCountMap path_count
@@ -199,7 +207,9 @@ UTIL: PathCountMap path_count
iterator_property_map created from a
std::vector of the degree_size_type of the graph of
size num_vertices(g) and using the vertex_index
- for the index map.
+ for the index map.
+
+ Python: Unsupported parameter.
Named parameters
@@ -214,7 +224,10 @@ OUT/UTIL: CentralityMap centrality_map
or rational type.
Default: a dummy_property_map, which requires no
- work to compute and returns no answer.
+ work to compute and returns no answer.
+ Python: The color map must be a vertex_double_map for
+ the graph.
+ Python default: graph.get_vertex_double_map("centrality")
OUT/UTIL: EdgeCentralityMap edge_centrality_map
@@ -228,7 +241,10 @@ OUT/UTIL: EdgeCentralityMap edge_centrality_map
value type of the CentralityMap property map.
Default: a dummy_property_map, which requires no
- work to compute and returns no answer.
+ work to compute and returns no answer.
+ Python: The color map must be a edge_double_map for
+ the graph.
+ Python default: graph.get_edge_double_map("centrality")
IN: vertex_index_map(VertexIndexMap vertex_index)
@@ -241,6 +257,7 @@ IN: vertex_index_map(VertexIndexMap vertex_index)
integer type. The vertex descriptor type of the graph needs to be
usable as the key type of the map.
Default: get(vertex_index, g)
+ Python: Unsupported parameter.
IN: weight_map(WeightMap w_map)
@@ -255,6 +272,7 @@ IN: weight_map(WeightMap w_map)
map. The value type for this map must be
the same as the value type of the distance map.
Default: All edge weights are assumed to be equivalent.
+ Python: If supplied, must be an edge_double_map for the graph.
Complexity
diff --git a/doc/biconnected_components.html b/doc/biconnected_components.html
index 7032dfb3..ab23523c 100644
--- a/doc/biconnected_components.html
+++ b/doc/biconnected_components.html
@@ -19,8 +19,15 @@
-
-
+
+
+
+biconnected_components
+
+
+and
+articulation_points
+
template<typename Graph, typename ComponentMap, typename OutputIterator,
@@ -85,7 +92,8 @@ IN: const Graph& g
.
An undirected graph. The graph type must be a model of Vertex List Graph and Incidence Graph.
+href="IncidenceGraph.html">Incidence Graph
+Python: The parameter is named graph.
OUT: ComponentMap c
@@ -99,15 +107,20 @@ href="../../property_map/WritablePropertyMap.html">Writable Property
Map. The value type shouch be an integer type, preferably the same
as the edges_size_type of the graph. The key type must be
the graph's edge descriptor type.
-Default: dummy_property_map.
+Default: dummy_property_map.
+ Python: Must be an edge_int_map for the graph.
+ Python default: graph.get_edge_int_map("bicomponent")
-
OUT: OutputIterator out
The algorithm writes articulation points via this output
iterator and returns the resulting iterator.
UTIL/OUT: DiscoverTimeMap discover_time
@@ -123,7 +136,9 @@ UTIL/OUT: DiscoverTimeMap discover_time
iterator_property_map created from a
std::vector of vertices_size_type of size
num_vertices(g) and using get(vertex_index, g) for
- the index map.
+ the index map.
-Default: a dummy iterator that ignores values written to it.
+Default: a dummy iterator that ignores values written to it.
+
+Python: this parameter is not used in Python. Instead, both
+algorithms return a Python list containing the articulation
+points.
+
+ Python: Unsupported parameter.
UTIL/OUT: LowPointMap lowpt
@@ -140,7 +155,9 @@ UTIL/OUT: LowPointMap lowpt
iterator_property_map created from a
std::vector of vertices_size_type of size
num_vertices(g) and using get(vertex_index, g) for
- the index map.
+ the index map.
+
+ Python: Unsupported parameter.
Complexity
diff --git a/doc/breadth_first_search.html b/doc/breadth_first_search.html
index cbef3c6f..0aab22c9 100644
--- a/doc/breadth_first_search.html
+++ b/doc/breadth_first_search.html
@@ -19,7 +19,8 @@
-
+
+
@@ -311,11 +312,6 @@ class used has VertexList and EdgeList set
to listS.
breadth_first_search
TBD... - -
![]() | Home | Libraries | People | FAQ | More |
boost::circle_graph_layout — Layout the graph with the vertices at the points of a regular n-polygon.
+Function template circle_graph_layout
![]() | Home | Libraries | People | FAQ | More |
Function template circle_graph_layoutboost::circle_graph_layout — Layout the graph with the vertices at the points of a regular n-polygon.
template<typename VertexListGraph, typename PositionMap, typename Radius> void circle_graph_layout(const VertexListGraph & g, PositionMap position, - Radius radius);
The distance from the center of the polygon to each point is determined by the radius parameter. The position parameter must be an Lvalue Property Map whose value type is a class type containing x and y members that will be set to the x and y coordinates.
The distance from the center of the polygon to each point is determined by the radius parameter. The position parameter must be an Lvalue Property Map whose value type is a class type containing x and y members that will be set to the x and y coordinates. + +
+ The graph object on which the algorithm will be applied. The type + VertexListGraph must be a model of Vertex List Graph.+ +OUT: PositionMap position +
+Python: The parameter is named graph. +
+ This property map is used to store the position of each vertex. The + type PositionMap must be a model of Writable Property + Map, with the graph's edge descriptor type as its key type. The + value type of this property map should be assignable from the + type Radius.+ +IN: Radius radius +
+ + Python: The position map must be a vertex_point2d_map for + the graph.
+ Python default: graph.get_vertex_point2d_map("position") +
+ This is the radius of the circle on which points will be layed + out. It must be compatible with double.+ +
+
| Copyright © 2004 |
-Douglas Gregor, Indiana University (dgregor@cs.indiana.edu) +Douglas Gregor, Indiana University (dgregor -at- cs.indiana.edu) Andrew Lumsdaine, -Indiana University (lums@osl.iu.edu) +Indiana University (lums -at- osl.iu.edu) |
connected_components
An undirected graph. The graph type must be a model of Vertex List Graph and Incidence Graph. +href="IncidenceGraph.html">Incidence Graph.OUT: ComponentMap c @@ -78,7 +81,10 @@ recording the component number in the component property map. The href="../../property_map/WritablePropertyMap.html">Writable Property Map. The value type shouch be an integer type, preferably the same as the vertices_size_type of the graph. The key type must be -the graph's vertex descriptor type. +the graph's vertex descriptor type.
+ +Python: The parameter is named graph.
cuthill_mckee_ordering
dag_shortest_paths
The graph object on which the algorithm will be applied. - The type VertexListGraph must be a model of \concept{VertexListGraph}. + The type VertexListGraph must be a model of \concept{VertexListGraph}.IN: vertex_descriptor s
+ + Python: The parameter is named graph.
The source vertex. All distance will be calculated from this vertex, - and the shortest paths tree will be rooted at this vertex. + and the shortest paths tree will be rooted at this vertex.
+ + Python: The parameter is named root_vertex.
depth_first_search
A directed graph. The graph type must be a model of Incidence Graph - and Vertex List Graph. + and Vertex List Graph.@@ -176,7 +178,11 @@ IN: visitor(DFSVisitor vis) event-points specified by the DFS Visitor concept. The visitor object is passed by value [1].
+ + Python: The parameter is named graph.
diff --git a/doc/depth_first_visit.html b/doc/depth_first_visit.html
index 8459be58..afae5dd1 100644
--- a/doc/depth_first_visit.html
+++ b/doc/depth_first_visit.html
@@ -20,6 +20,7 @@
depth_first_visit
-The func parameter for the second variant of the algorithm is used to -prevent the search to proceed past some vertices. It should be functional -object callable with two parameters - the descriptor of vertex and the -graph instance - and returing bool. - -
The call is made immediately after call to 'discover_vertex' visitor -event. If true is returned, the out edges of the vertex are not -examined, as if they don't exist. -
The second variant can be used, for example, to find all marked vertices reachable from a start vertex by a path which does not contain any another marked vertices. @@ -81,12 +72,16 @@ marked vertices. IN IncidenceGraph& g
A directed or undirected graph. The graph's type must be a model of -Incidence Graph. +Incidence Graph.IN: vertex_descriptor s
+ +Python: The parameter is named graph.
- The source vertex from which to start the search. + The source vertex from which to start the search.IN: DFSVisitor visitor @@ -94,7 +89,11 @@ IN: DFSVisitor visitor A visitor object that is invoked inside the algorithm at the event-points specified by the DFS Visitor concept. The visitor object is passed by value [1]. + href="#1">[1].
+ + Python: The parameter is named root_vertex.
+A function object callable with two parameters - the descriptor of +vertex and the graph instance - and returning bool. The call is made +immediately after call to 'discover_vertex' visitor +event. If true is returned, the out edges of the vertex are +not examined, as if they don't exist.
+ + Python: Unsupported parameter. +
dijkstra_shortest_paths
The source vertex. All distance will be calculated from this vertex, - and the shortest paths tree will be rooted at this vertex. + and the shortest paths tree will be rooted at this vertex.
+ + Python: The parameter is named root_vertex.
fruchterman_reingold_force_directed_layout
The graph object on which the algorithm will be applied. The type Graph must be a model of - Vertex And Edge List Graph. + Vertex And Edge List Graph.IN/OUT: PositionMap position @@ -91,7 +92,10 @@ IN/OUT: PositionMap position Map such that the vertex descriptor type of Graph is convertible to its key type. Its value type must be a structure with fields x and y, representing the coordinates - of the vertex. + of the vertex.
+ Python: This parameter is named graph in Python.
dist2/k.
+computes the attractive force as dist2/k.k2/dist.
+computes the repulsive force as k2/dist.+ When false, performs a random layout of the graph before + running the Fruchterman-Reingold algorithm. If true, the + algorithm is executing starting with the vertex configuration in + the position map.
+ Default: False.
isomorphism
![]() | Home | Libraries | People | FAQ | More |
boost::kamada_kawai_spring_layout — Kamada-Kawai spring layout for connected, undirected graphs.
-template<typename Graph, typename PositionMap, typename WeightMap, typename T, - bool EdgeOrSideLength, typename Done, typename VertexIndexMap, - typename DistanceMatrix, typename SpringStrengthMatrix, - typename PartialDerivativeMap> - bool kamada_kawai_spring_layout(const Graph & g, PositionMap position, - WeightMap weight, - unspecified edge_or_side_length, Done done, - typename property_traits< WeightMap >::value_type spring_constant, - VertexIndexMap index, - DistanceMatrix distance, - SpringStrengthMatrix spring_strength, - PartialDerivativeMap partial_derivatives); -template<typename Graph, typename PositionMap, typename WeightMap, typename T, - bool EdgeOrSideLength, typename Done, typename VertexIndexMap> - bool kamada_kawai_spring_layout(const Graph & g, PositionMap position, - WeightMap weight, - unspecified edge_or_side_length, Done done, - typename property_traits< WeightMap >::value_type spring_constant, - VertexIndexMap index); -template<typename Graph, typename PositionMap, typename WeightMap, typename T, - bool EdgeOrSideLength, typename Done> - bool kamada_kawai_spring_layout(const Graph & g, PositionMap position, - WeightMap weight, - unspecified edge_or_side_length, Done done, - typename property_traits< WeightMap >::value_type spring_constant = typename property_traits< WeightMap >::value_type(1)); -template<typename Graph, typename PositionMap, typename WeightMap, typename T, - bool EdgeOrSideLength> - bool kamada_kawai_spring_layout(const Graph & g, PositionMap position, - WeightMap weight, - unspecified edge_or_side_length);
Parameters
(UTIL/OUT) will be used to store the distance from every vertex to every other vertex, which is computed in the first stages of the algorithm. This value's type must be a model of BasicMatrix with value type equal to the value type of the weight map. The default is a a vector of vectors.
(IN) is a 4-argument function object that is passed the current value of delta_p (i.e., the energy of vertex p ), the vertex p , the graph g , and a boolean flag indicating whether delta_p is the maximum energy in the system (when true ) or the energy of the vertex being moved. Defaults to layout_tolerance instantiated over the value type of the weight map.
(IN) provides either the unit length e of an edge in the layout or the length of a side s of the display area, and must be either boost::edge_length(e) or boost::side_length(s) , respectively.
(IN) must be a model of Vertex List Graph, Edge List Graph, and Incidence Graph and must be connected and undirected.
(IN) is a mapping from vertices to index values between 0 and num_vertices(g) . The default is get(vertex_index,g) .
(UTIL) will be used to store the partial derivates of each vertex with respect to the x and y coordinates. This must be a Read/Write Property Map whose value type is a pair with both types equivalent to the value type of the weight map. The default is an iterator property map.
(OUT) must be a model of Lvalue Property Map, where the value type is a class containing fields x and y that will be set to the x and y coordinates of each vertex.
(IN) is the constant multiplied by each spring's strength. Larger values create systems with more energy that can take longer to stabilize; smaller values create systems with less energy that stabilize quickly but do not necessarily result in pleasing layouts. The default value is 1.
(UTIL/OUT) will be used to store the strength of the spring between every pair of vertices. This value's type must be a model of BasicMatrix with value type equal to the value type of the weight map. The default is a a vector of vectors.
(IN) must be a model of Readable Property Map, which provides the weight of each edge in the graph g .
This algorithm [57] performs graph layout (in two dimensions) for connected, undirected graphs. It operates by relating the layout of graphs to a dynamic spring system and minimizing the energy within that system. The strength of a spring between two vertices is inversely proportional to the square of the shortest distance (in graph terms) between those two vertices. Essentially, vertices that are closer in the graph-theoretic sense (i.e., by following edges) will have stronger springs and will therefore be placed closer together.
Prior to invoking this algorithm, it is recommended that the vertices be placed along the vertices of a regular n-sided polygon via circle_layout.
Returns: + + +
+ + +![]() |
+Home | +Libraries | +People | +FAQ | +More | +
Function kamada_kawai_spring_layoutboost::kamada_kawai_spring_layout — Kamada-Kawai spring +layout for connected, undirected graphs.
++template<typename Graph, typename PositionMap, typename WeightMap, typename T, + bool EdgeOrSideLength, typename Done, typename VertexIndexMap, + typename DistanceMatrix, typename SpringStrengthMatrix, + typename PartialDerivativeMap> + bool kamada_kawai_spring_layout(const Graph & g, PositionMap position, + WeightMap weight, + unspecified edge_or_side_length, Done done, + typename property_traits< WeightMap >::value_type spring_constant, + VertexIndexMap index, + DistanceMatrix distance, + SpringStrengthMatrix spring_strength, + PartialDerivativeMap partial_derivatives); +template<typename Graph, typename PositionMap, typename WeightMap, typename T, + bool EdgeOrSideLength, typename Done, typename VertexIndexMap> + bool kamada_kawai_spring_layout(const Graph & g, PositionMap position, + WeightMap weight, + unspecified edge_or_side_length, Done done, + typename property_traits< WeightMap >::value_type spring_constant, + VertexIndexMap index); +template<typename Graph, typename PositionMap, typename WeightMap, typename T, + bool EdgeOrSideLength, typename Done> + bool kamada_kawai_spring_layout(const Graph & g, PositionMap position, + WeightMap weight, + unspecified edge_or_side_length, Done done, + typename property_traits< WeightMap >::value_type spring_constant = typename property_traits< WeightMap >::value_type(1)); +template<typename Graph, typename PositionMap, typename WeightMap, typename T, + bool EdgeOrSideLength> + bool kamada_kawai_spring_layout(const Graph & g, PositionMap position, + WeightMap weight, + unspecified edge_or_side_length); +
This algorithm [57] performs graph layout (in two +dimensions) for connected, undirected graphs. It operates by +relating the layout of graphs to a dynamic spring system and +minimizing the energy within that system. The strength of a spring +between two vertices is inversely proportional to the square of the +shortest distance (in graph terms) between those two vertices. +Essentially, vertices that are closer in the graph-theoretic sense +(i.e., by following edges) will have stronger springs and will +therefore be placed closer together.
+Prior to invoking this algorithm, it is recommended that the +vertices be placed along the vertices of a regular n-sided polygon +via circle_layout.
++Returns: true if layout +was successful or false if a +negative weight cycle was detected or the graph is +disconnected.
-| Copyright © 2004 |
-Douglas Gregor, Indiana University (dgregor -at cs.indiana.edu) -Andrew Lumsdaine, -Indiana University (lums@osl.iu.edu) - |
+ The graph, whose type Graph must model the + VertexListGraph, + EdgeListGraph, and + IncidenceGraph concepts. The + graph must be undirected and connected.- +OUT: PositionMap position +
+ Python: This parameter is named graph in Python. +
+ This property map is used to store the position of each vertex. The + type PositionMap must be a model of Writable Property + Map, with the graph's edge descriptor type as its key type.+ +IN: weight_map(WeightMap w_map) +
+ + Python: The position map must be a vertex_point2d_map for + the graph.
+ Python default: graph.get_vertex_point2d_map("position") +
+ The weight or ``length'' of each edge in the graph. The weights + must all be non-negative, and the algorithm will throw a + negative_edge + exception is one of the edges is negative. + The type WeightMap must be a model of + Readable Property Map. The edge descriptor type of + the graph needs to be usable as the key type for the weight + map. The value type for this map must be + the same as the value type of the distance map.+ +IN: EdgeOrSideLength edge_or_side_length +
+ Default: get(edge_weight, g)
+ + Python: Must be an edge_double_map for the graph.
+ Python default: graph.get_edge_double_map("weight") +
+Provides either the unit length e of +an edge in the layout or the length of a side s of the display area, and must be +either boost::edge_length(e) or boost::side_length(s) , respectively. +Python: In Python, this value always refers to the side length +and may only be a double. ++ +IN: Done done +
+A 4-argument function object that is passed the current +value of delta_p (i.e., the energy of vertex p ), the vertex p , the graph g , and a boolean flag indicating whether +delta_p is the maximum energy in +the system (when true ) or the +energy of the vertex being moved. +Default: layout_tolerance instantiated over the +value type of the weight map.+ +IN: typename property_traits<WeightMap>::value_type spring_constant +
+Python: Any callable Python object with an appropriate signature suffices. +
+The constant multiplied by each spring's strength. +Larger values create systems with more energy that can take longer +to stabilize; smaller values create systems with less energy that +stabilize quickly but do not necessarily result in pleasing +layouts.+ +IN: VertexIndexMap index +
+Default: 1. +
+As a mapping from vertices to index values between 0 and +num_vertices(g) .+ +UTIL/OUT: DistanceMap distance +
+Default:get(vertex_index,g).
+Python: Unsupported parameter. +
+This parameter will be used to store the distance from every vertex to +every other vertex, which is computed in the first stages of the +algorithm. This value's type must be a model of BasicMatrix with value type equal to +the value type of the weight map.+ +UTIL/OUT: SpringStrengthMatrix spring_strength +
+Default: A vector of vectors.
+Python: Unsupported parameter. +
+ +This matrix will be used to store the strength of the spring between +every pair of vertices. This value's type must be a model of BasicMatrix with value type equal to the +value type of the weight map.+ +UTIL: PartialDerivativeMap partial_derivatives +
+Default: A vector of vectors of the value type of the weight map.
+Python: Unsupported parameter. +
+A property map that will be used to store the partial derivates of +each vertex with respect to the x and +y coordinates. This must be a +Read/Write +Property Map whose value type is a pair with both types equivalent +to the value type of the weight map. The default is an iterator +property map.+ +Python IN: bool progressive +
+Default: An iterator_property_map created from +an std::vector of std::pair<weight_type, + weight_type>, where weight_type is the value type of +the WeightMap.
+Python: Unsupported parameter. +
+ When false, performs layout of the graph on a circle before + running the Kamada-Kawai algorithm. If true, the algorithm + is executing starting with the vertex configuration in + the position map.+ +
+ Default: False. +
| + | + |
| Copyright © 2004 | +Douglas Gregor,
+Indiana University (dgregor -at cs.indiana.edu) +Andrew Lumsdaine, Indiana +University (lums@osl.iu.edu) |
+
king_ordering
kruskal_minimum_spanning_tree
template <class Graph, class OutputIterator, class P, class T, class R>
-void kruskal_minimum_spanning_tree(Graph& g, OutputIterator tree_edges,
+OutputIterator
+kruskal_minimum_spanning_tree(Graph& g, OutputIterator tree_edges,
const bgl_named_params<P, T, R>& params = all defaults);
@@ -85,14 +87,20 @@ IN: const Graph& g
An undirected graph. The graph type must be a model of Vertex List Graph - and Edge List Graph. + and Edge List Graph.IN: OutputIterator spanning_tree_edges
+ + Python: The parameter is named graph.
The edges of the minimum spanning tree are output to this Output - Iterator. + Iterator.@@ -107,7 +115,9 @@ The weight or ``length'' of href="http://www.sgi.com/tech/stl/LessThanComparable.html">Less Than Comparable. The key type of this map needs to be the graph's edge descriptor type.
+ + Python: This parameter is not used in Python. Instead, a + Python list containing all of the spanning tree edges is + returned.
prim_minimum_spanning_tree
An undirected graph. The type Graph must be a model of Vertex List Graph - and Incidence Graph. + and Incidence Graph.OUT: PredecessorMap p_map @@ -148,7 +151,9 @@ OUT: PredecessorMap p_map href="../../property_map/ReadWritePropertyMap.html">Read/Write Property Map with key and vertex types the same as the vertex descriptor type - of the graph. + of the graph.
+ + Python: The parameter is named graph.
The vertex that will be the root of the minimum spanning tree. - The choice of the root vertex is arbitrary. + The choice of the root vertex is arbitrary.@@ -168,7 +173,9 @@ IN: weight_map(WeightMap w_map) the graph needs to be usable as the key type for the weight map. The value type for the map must be Addable with the value type of the distance map.
Default: *vertices(g).first
-
sequential_vertex_coloring
@@ -42,7 +42,8 @@ IN: const Graph& g The graph object on which the algorithm will be applied. The type Graph must be a model of Vertex List Graph and Adjacency Graph. + href="AdjacencyGraph.html">Adjacency Graph.
+Python: The parameter is named graph. OUT: ColorMap color @@ -53,6 +54,7 @@ OUT: ColorMap color Property Map whose key type is the same as the vertex descriptor type of the graph and whose value type is an integral type that can store all values of the graph's vertices_size_type.
+ Python: Must be an vertex_int_map for the graph. IN: OrderPA order @@ -61,7 +63,8 @@ IN: OrderPA order to the vertices of the graph.
Default: A property map ordering the vertices in the same way - they are ordered by vertices(g). + they are ordered by vertices(g).
+ Python: Unsupported parameter.Complexity
diff --git a/doc/strong_components.html b/doc/strong_components.html index 879acab7..cc44b3dd 100644 --- a/doc/strong_components.html +++ b/doc/strong_components.html @@ -22,6 +22,7 @@+
@@ -74,7 +75,9 @@ IN: const Graph& gstrong_components
A directed graph. The graph type must be a model of Vertex List Graph and Incidence Graph. +href="IncidenceGraph.html">Incidence Graph.OUT: ComponentMap c @@ -87,7 +90,10 @@ recording the component number in the component property map. The href="../../property_map/WritablePropertyMap.html">Writable Property Map. The value type shouch be an integer type, preferably the same as the vertices_size_type of the graph. The key type must be -the graph's vertex descriptor type. +the graph's vertex descriptor type.
+ +Python: The parameter is named graph.
+ + Python: Must be an vertex_int_map for the graph.
+ Python default: graph.get_vertex_int_map("component") @@ -109,7 +115,8 @@ UTIL: root_map(RootMap r_map) iterator_property_map created from a std::vector of vertex descriptors of size num_vertices(g) and using the i_map for the index - map. + map.
+ Python: Unsupported parameter. UTIL: discover_time_map(TimeMap t_map) @@ -124,8 +131,8 @@ UTIL: discover_time_map(TimeMap t_map) iterator_property_map created from a std::vector of integers with size num_vertices(g) and using the i_map for the index - map. - + map.
+ Python: Unsupported parameter. UTIL: color_map(ColorMap c_map) @@ -141,7 +148,8 @@ UTIL: color_map(ColorMap c_map) iterator_property_map created from a std::vector of default_color_type of size num_vertices(g) and using the i_map for the index - map. + map.
+ Python: Unsupported parameter. IN: vertex_index_map(VertexIndexMap i_map) @@ -155,7 +163,8 @@ IN: vertex_index_map(VertexIndexMap i_map) vertex descriptor type of the graph needs to be usable as the key type of the map.
- Default: get(vertex_index, g) + Default: get(vertex_index, g)
+ Python: Unsupported parameter. diff --git a/doc/table_of_contents.html b/doc/table_of_contents.html index ddbd2334..96472e8f 100644 --- a/doc/table_of_contents.html +++ b/doc/table_of_contents.html @@ -128,38 +128,37 @@
breadth_first_search
breadth_first_visit -
depth_first_search -
- depth_first_visit -
depth_first_visit +
undirected_dfs -
- uniform_cost_search (deprecated, use Dijkstra's instead)
connected_components
+
strong_components
-
biconnected_components
+
articulation_points
topological_sort
+
transitive_closure
isomorphism
-
sequential_vertex_coloring
brandes_betweenness_centrality
topological_sort
transitive_closure
A directed graph, where the Graph type must model the Vertex List Graph - and Adjacency Graph concepts. + and Adjacency Graph concepts.OUT: GraphTC& tc
+ + Python: The parameter is named graph.
A directed graph, where the GraphTC type must model the Vertex Mutable Graph - and Edge Mutable Graph concepts. + and Edge Mutable Graph concepts.
+ + Python: This parameter is not used in Python. Instead, a new + graph of the same type is returned.
This maps each vertex in the input graph to the new matching - vertices in the output transitive closure graph. + vertices in the output transitive closure graph.IN: vertex_index_map(VertexIndexMap& index_map) @@ -89,7 +97,9 @@ IN: vertex_index_map(VertexIndexMap& index_map) vertex descriptor type of the graph needs to be usable as the key type of the map.
+ + Python: This must be a vertex_vertex_map of the graph.
undirected_dfs
diff --git a/src/python/isomorphism.cpp b/src/python/isomorphism.cpp
index 73a995ee..4a9d21d7 100644
--- a/src/python/isomorphism.cpp
+++ b/src/python/isomorphism.cpp
@@ -65,13 +65,13 @@ void export_isomorphism()
using boost::python::object;
def("isomorphism", &isomorphism