Class NeighbourOverlap<U>
java.lang.Object
es.uam.eps.ir.relison.sna.metrics.pair.NeighbourOverlap<U>
- Type Parameters:
U
- type of the nodes.
- All Implemented Interfaces:
PairMetric<U>
public class NeighbourOverlap<U> extends java.lang.Object implements PairMetric<U>
Computes the intersection between the neighborhoods of two nodes.
-
Field Summary
Fields Modifier and Type Field Description private EdgeOrientation
uSel
Neighbour selection for the origin node.private EdgeOrientation
vSel
Neighbour selection for the destiny node. -
Constructor Summary
Constructors Constructor Description NeighbourOverlap()
Default constructor.NeighbourOverlap(EdgeOrientation uSel, EdgeOrientation vSel)
Constructor. -
Method Summary
Modifier and Type Method Description double
averageValue(Graph<U> graph)
Computes the average value of the metricdouble
averageValue(Graph<U> graph, java.util.stream.Stream<Pair<U>> edges, int edgeCount)
Computes the average value of a certain group of pairs.double
averageValueOnlyLinks(Graph<U> graph)
Computes the average value of the metric, restricted to the set of links in the network.java.util.Map<Pair<U>,java.lang.Double>
compute(Graph<U> graph)
Computes the value of the metric for all the possible pairs in the graph.java.util.Map<Pair<U>,java.lang.Double>
compute(Graph<U> graph, java.util.stream.Stream<Pair<U>> pairs)
Computes the value of the metric for a selection of pairs in the graph.double
compute(Graph<U> graph, U orig, U dest)
Computes the value of the metric for a single pair of nodesjava.util.function.Function<U,java.lang.Double>
computeDest(Graph<U> graph, U dest)
Given a user, computes the value of a metric for all the possible pairs in the graph where the user is the destination.private java.util.function.Function<U,java.lang.Double>
computeIndividual(Graph<U> graph, U u, EdgeOrientation uSel, EdgeOrientation vSel)
Computes the map of metrics for the user.java.util.Map<Pair<U>,java.lang.Double>
computeOnlyLinks(Graph<U> graph)
Computes the value of the metric for all the links in the graph.java.util.function.Function<U,java.lang.Double>
computeOrig(Graph<U> graph, U orig)
Given a user, computes the value of a metric for all the possible pairs in the graph where the user is the origin.
-
Field Details
-
Constructor Details
-
NeighbourOverlap
public NeighbourOverlap()Default constructor. Uses the outgoing neighbourhood of the origin node, and the incoming of the destiny one. -
NeighbourOverlap
Constructor.- Parameters:
uSel
- Neighbour selection for the origin node.vSel
- Neighbour selection for the destiny node.
-
-
Method Details
-
compute
Description copied from interface:PairMetric
Computes the value of the metric for a single pair of nodes- Specified by:
compute
in interfacePairMetric<U>
- Parameters:
graph
- The full graph.orig
- The origin node of the edge.dest
- The destiny node of the edge.- Returns:
- The value of the metric for that edge.
-
compute
Description copied from interface:PairMetric
Computes the value of the metric for all the possible pairs in the graph.- Specified by:
compute
in interfacePairMetric<U>
- Parameters:
graph
- The full graph.- Returns:
- A map containing the metrics for each node.
-
computeOnlyLinks
Description copied from interface:PairMetric
Computes the value of the metric for all the links in the graph.- Specified by:
computeOnlyLinks
in interfacePairMetric<U>
- Parameters:
graph
- the full graph.- Returns:
- A map containing the metrics for each link.
-
averageValue
Description copied from interface:PairMetric
Computes the average value of the metric- Specified by:
averageValue
in interfacePairMetric<U>
- Parameters:
graph
- The full graph.- Returns:
- The average value of the metric
-
averageValueOnlyLinks
Description copied from interface:PairMetric
Computes the average value of the metric, restricted to the set of links in the network.- Specified by:
averageValueOnlyLinks
in interfacePairMetric<U>
- Parameters:
graph
- the network.- Returns:
- the average value of the metric over the links in the network.
-
averageValue
Description copied from interface:PairMetric
Computes the average value of a certain group of pairs.- Specified by:
averageValue
in interfacePairMetric<U>
- Parameters:
graph
- the full graph.edges
- a stream containing the selected pairs.edgeCount
- the number of pairs in the stream.- Returns:
- The average value of the metric for those pairs.
-
compute
public java.util.Map<Pair<U>,java.lang.Double> compute(Graph<U> graph, java.util.stream.Stream<Pair<U>> pairs)Description copied from interface:PairMetric
Computes the value of the metric for a selection of pairs in the graph.- Specified by:
compute
in interfacePairMetric<U>
- Parameters:
graph
- The full graph.pairs
- A stream containing the selected pairs.- Returns:
- A map containing the metrics for each pair in the stream that exists.
-
computeOrig
Description copied from interface:PairMetric
Given a user, computes the value of a metric for all the possible pairs in the graph where the user is the origin. As, for efficiency methods, all values might not be computed, the default value of the metric shall be retrieved from the outcome.- Specified by:
computeOrig
in interfacePairMetric<U>
- Parameters:
graph
- the graph.orig
- the origin node.- Returns:
- the map containing the values of the metric.
-
computeDest
Description copied from interface:PairMetric
Given a user, computes the value of a metric for all the possible pairs in the graph where the user is the destination. As, for efficiency methods, all values might not be computed, the default value of the metric shall be retrieved from the outcome.- Specified by:
computeDest
in interfacePairMetric<U>
- Parameters:
graph
- the graph.dest
- the origin node.- Returns:
- the map containing the values of the metric.
-
computeIndividual
private java.util.function.Function<U,java.lang.Double> computeIndividual(Graph<U> graph, U u, EdgeOrientation uSel, EdgeOrientation vSel)Computes the map of metrics for the user.- Parameters:
graph
- the graph.u
- the user.uSel
- the neighborhood selection for the user.vSel
- the neighborhood selection for the other users- Returns:
- the map of metrics for the user.
-