Convert node pair (i,j)
Convert node pair (i,j) into an index
- Directed case :: * The node pair (i,j) with (i=j) is converted into the index (i−1)∗(n−1)+j−(i\<j)
- Undirected case :: * The node pair (i,j) with (i=j) is converted into the index (2∗n−i)∗(i−1)/2+j−i
convertNodePair(i, j, n, directed)
Arguments
i
: Node i : i∈1,…,n
j
: Node j : j∈1,…,n
n
: Total number of nodes : i,j∈1,…,n
directed
: Boolean for directed (TRUE) or undirected (FALSE) case
Returns
Index corresponding to the node pair
Details
The number of possible node pairs is
- N=n∗(n−1) for the directed case
- N=n∗(n−1)/2 for the undirected case
which corresponds to the cardinality of data$type.seq
Examples
# Convert the node pair (3,7) into an index, where the total number of nodes is 10,
# for directed and undirected graph
i <- 3
j <- 7
n <- 10
directedIndex <- convertNodePair(i,j,n,TRUE)
undirectedIndex <- convertNodePair(i,j,n,FALSE)