Interface DistanceCalculator<U>
- Type Parameters:
U- type of the users.
- All Known Implementing Classes:
CompleteDistanceCalculator,FastDistanceCalculator
public interface DistanceCalculator<U>
Interface that defines methods for computing distance-based metrics for a network and retrieving them.
-
Method Summary
Modifier and Type Method Description booleancomputeDistances(Graph<U> graph)Computes the distances between nodes in a network.doublegetASL()Obtains the average shortest path length, averaged over all the finite distance paths.java.util.Map<U,java.util.Map<U,java.lang.Double>>getDistances()Returns all the distances between different pairs.doublegetDistances(U orig, U dest)Returns the distance between two nodes.java.util.Map<U,java.lang.Double>getDistancesFrom(U node)Return the distances between a node and the rest of nodes in the network.java.util.Map<U,java.lang.Double>getDistancesTo(U node)Returns the distance between the network and an specific node.java.util.Map<U,java.util.Map<U,java.lang.Double>>getEdgeBetweenness()Gets all the values of the edge betweenness.java.util.Map<U,java.lang.Double>getEdgeBetweenness(U node)Returns the edge betweenness of all the adjacent edges to a given node.doublegetEdgeBetweenness(U orig, U dest)Returns the edge betweenness of a single edge.java.util.Map<U,java.util.Map<U,java.lang.Double>>getGeodesics()Returns the number of geodesic paths between different pairs.java.util.Map<U,java.lang.Double>getGeodesics(U node)Return the number of geodesic paths between a node and the rest of nodes in the network.doublegetGeodesics(U orig, U dest)Returns the number of geodesic paths between two nodes.doublegetInfiniteDistances()Obtains the number of infinite length pairs.java.util.Map<U,java.lang.Double>getNodeBetweenness()Returns the node betweenness for each node in the network.doublegetNodeBetweenness(U node)Gets the value of node betweenness for a single node.Communities<U>getSCC()Obtains the strongly connected components of the graph.
-
Method Details
-
computeDistances
Computes the distances between nodes in a network.- Parameters:
graph- the graph.- Returns:
- true if everything went OK, false otherwise.
-
getNodeBetweenness
java.util.Map<U,java.lang.Double> getNodeBetweenness()Returns the node betweenness for each node in the network.- Returns:
- a map containing the node betweenness for each node.
-
getNodeBetweenness
Gets the value of node betweenness for a single node.- Parameters:
node- the value for the node.- Returns:
- the node betweenness for that node.
-
getEdgeBetweenness
Gets all the values of the edge betweenness.- Returns:
- the edge betweenness value for each edge.
-
getEdgeBetweenness
Returns the edge betweenness of all the adjacent edges to a given node.- Parameters:
node- The node.- Returns:
- a map containing the values of edge betweenness for all the adjacent links to the given node.
-
getEdgeBetweenness
Returns the edge betweenness of a single edge.- Parameters:
orig- origin node of the edge.dest- destination node of the edge.- Returns:
- the betweenness if the edge exists, -1.0 if not.
-
getDistances
Returns all the distances between different pairs.- Returns:
- the distances between pairs.
-
getDistancesFrom
Return the distances between a node and the rest of nodes in the network.- Parameters:
node- the node.- Returns:
- a map containing all the distances from the node to the rest of the network.
-
getDistancesTo
Returns the distance between the network and an specific node.- Parameters:
node- the node.- Returns:
- a map containing all the distances from each vertex in the network to the node.
-
getDistances
Returns the distance between two nodes.- Parameters:
orig- origin node.dest- destination node.- Returns:
- the distance between both nodes. if there is a path between them, +Infinity if not.
-
getGeodesics
Returns the number of geodesic paths between different pairs.- Returns:
- the distances between pairs.
-
getGeodesics
Return the number of geodesic paths between a node and the rest of nodes in the network.- Parameters:
node- the node.- Returns:
- a map containing the number of geodesic paths from the node to the rest of the network.
-
getGeodesics
Returns the number of geodesic paths between two nodes.- Parameters:
orig- origin node.dest- destination node.- Returns:
- the number of geodesic paths between both nodes if there is a path between them, 0.0 if not.
-
getSCC
Communities<U> getSCC()Obtains the strongly connected components of the graph.- Returns:
- the strongly connected components of the graph.
-
getASL
double getASL()Obtains the average shortest path length, averaged over all the finite distance paths.- Returns:
- the average shortest path length.
-
getInfiniteDistances
double getInfiniteDistances()Obtains the number of infinite length pairs.- Returns:
- the number of infinite length pairs.
-