class Flow(Cut):
A flow of a given graph.
This is a simple class used to represent flows returned by Graph.maxflow
. It has the following attributes:
 graph  the graph on which this flow is defined
 value  the value (capacity) of the flow
 flow  the flow values on each edge. For directed graphs, this is simply a list where element i corresponds to the flow on edge i. For undirected graphs, the direction of the flow is not constrained (since the edges are undirected), hence positive flow always means a flow from the smaller vertex ID to the larger, while negative flow means a flow from the larger vertex ID to the smaller.
 cut  edge IDs in the minimal cut corresponding to the flow.
 partition  vertex IDs in the parts created after removing edges in the cut
 es  an edge selector restricted to the edges in the cut.
This class is usually not instantiated directly, everything is taken care of by Graph.maxflow
.
Examples:
>>> from igraph import Graph >>> g = Graph.Ring(20) >>> mf = g.maxflow(0, 10) >>> print(mf.value) 2.0 >>> mf.es["color"] = "red"
Method  __init__ 
Initializes the flow. 
Method  __repr__ 
Undocumented 
Method  __str__ 
Undocumented 
Property  flow 
Returns the flow values for each edge. 
Instance Variable  _flow 
Undocumented 
Inherited from Cut
:
Property  cut 
Returns the edge IDs in the cut 
Property  es 
Returns an edge selector restricted to the cut 
Property  partition 
Returns the vertex IDs partitioned according to the cut 
Property  value 
Returns the sum of edge capacities in the cut 
Instance Variable  _cut 
Undocumented 
Instance Variable  _partition 
Undocumented 
Instance Variable  _value 
Undocumented 
Inherited from VertexClustering
(via Cut
):
Class Method 

Creates a vertex clustering based on the value of a vertex attribute. 
Method  __plot__ 
Plots the clustering to the given Cairo context in the given bounding box. 
Method  as 
Returns a VertexCover that contains the same clusters as this clustering. 
Method  cluster 
Returns a graph where each cluster is contracted into a single vertex. 
Method  crossing 
Returns a boolean vector where element i is True iff edge i lies between clusters, False otherwise. 
Method  giant 
Returns the largest cluster of the clustered graph. 
Method  recalculate 
Recalculates the stored modularity value. 
Method  subgraph 
Get the subgraph belonging to a given cluster. 
Method  subgraphs 
Gets all the subgraphs belonging to each of the clusters. 
Property  graph 
Returns the graph belonging to this object 
Property  modularity 
Returns the modularity score 
Method  _formatted 
Iterates over the clusters and formats them into a string to be presented in the summary. 
Method  _recalculate 
Recalculates the stored modularity value and swallows all exceptions raised by the modularity function (if any). 
Class Variable  _default 
Undocumented 
Instance Variable  _graph 
Undocumented 
Instance Variable  _modularity 
Undocumented 
Instance Variable  _modularity 
Undocumented 
Instance Variable  _modularity 
Undocumented 
Inherited from Clustering
(via Cut
, VertexClustering
):
Method  __getitem__ 
Returns the members of the specified cluster. 
Method  __iter__ 
Iterates over the clusters in this clustering. 
Method  __len__ 
Returns the number of clusters. 
Method  compare 
Compares this clustering to another one using some similarity or distance metric. 
Method  size 
Returns the size of a given cluster. 
Method  size 
Returns the histogram of cluster sizes. 
Method  sizes 
Returns the size of given clusters. 
Method  summary 
Returns the summary of the clustering. 
Property  membership 
Returns the membership vector. 
Property  n 
Returns the number of elements covered by this clustering. 
Instance Variable  _len 
Undocumented 
Instance Variable  _membership 
Undocumented 
igraph.cut.Cut.__init__
Initializes the flow.
This should not be called directly, everything is taken care of by Graph.maxflow
.
Returns the flow values for each edge.
For directed graphs, this is simply a list where element i corresponds to the flow on edge i. For undirected graphs, the direction of the flow is not constrained (since the edges are undirected), hence positive flow always means a flow from the smaller vertex ID to the larger, while negative flow means a flow from the larger vertex ID to the smaller.