grow_SW {netcom} | R Documentation |
Grow a Small-World Network
Description
Grows an already existing network by adding a node according to the Small-World mechanism. Nodes can only attach to previously grown nodes.
Usage
grow_SW(matrix, x, rewire, connected = FALSE, retcon = FALSE, directed = TRUE)
Arguments
matrix |
Existing network to experience growth. |
x |
The ID of the node to be grown. |
rewire |
Small-World parameter specifying the probability each edge is randomly rewired, allowing for the possiblity of bridges between connected communities. |
connected |
Binary argument determining if the newly grown node has to be connected to the existing network. Defaults to FALSE, to prevent rare computational slow-downs when it is unlikely to create a connected network. Defaults to False. |
retcon |
Binary variable determining if already existing nodes can attach to new nodes. Defaults to FALSE. |
directed |
Binary variable determining if the network is directed, resulting in off-diagonal asymmetry in the adjacency matrix. Defaults to TRUE. |
Details
Grows a node in a network according to the Small-World mechanism.
Value
An adjacency matrix.
References
Watts, D. J., & Strogatz, S. H. (1998). Collective dynamics of ‘small-world’networks. nature, 393(6684), 440-442.
Examples
# Import netcom
library(netcom)
size <- 10
existing_network <- matrix(sample(c(0,1), size = size^2, replace = TRUE), nrow = size, ncol = size)
new_network_prep <- matrix(0, nrow = size + 1, ncol = size + 1)
new_network_prep[1:size, 1:size] = existing_network
new_network <- grow_SW(matrix = new_network_prep, x = size + 1, rewire = 0.213)