stir_DD: Sitrs a Duplication and Divergence Network

View source: R/stir_DD.R

stir_DDR Documentation

Sitrs a Duplication and Divergence Network

Description

Stirs an already existing network by rewiring a node according to the Duplication and Divergence mechanism.

Usage

stir_DD(
  matrix,
  x,
  divergence,
  directed = TRUE,
  link = 0,
  force_connected = FALSE
)

Arguments

matrix

Existing network to be rewired (stirred).

x

The ID of the node to be grown.

divergence

Probability that the new node loses edges associated with the node it duplicates. Needs to be between zero and one.

directed

Binary variable determining if the network is directed, resulting in off-diagonal asymmetry in the adjacency matrix.

link

Probability that the new node attaches to the node it duplicates. Defaults to 0.

force_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.

Details

Different from Duplication & Mutation models in that edges can only be lost.

Value

An adjacency matrix.

References

Ispolatov, I., Krapivsky, P. L., & Yuryev, A. (2005). Duplication-divergence model of protein interaction network. Physical review E, 71(6), 061911.

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 <- stir_DD(matrix = new_network_prep, x = size + 1, divergence = 0.5)


langendorfr/netcom documentation built on July 23, 2022, 5:19 p.m.