A module is a group of genes which, to some extent, shows the same expression behaviour. Several modules are connected together such that one or more genes from one module will regulate the expression of another module. By creating chains of modules, a dynamic behaviour in gene regulation can be created.

list_backbones()

backbone_bifurcating()

backbone_bifurcating_converging()

backbone_bifurcating_cycle()

backbone_bifurcating_loop()

backbone_branching(
  num_modifications = rbinom(1, size = 6, 0.25) + 1,
  min_degree = 3,
  max_degree = sample(min_degree:5, 1)
)

backbone_binary_tree(num_modifications = rbinom(1, size = 6, 0.25) + 1)

backbone_consecutive_bifurcating()

backbone_trifurcating()

backbone_converging()

backbone_cycle()

backbone_cycle_simple()

backbone_linear()

backbone_linear_simple()

backbone_disconnected(
  left_backbone = list_backbones() %>% keep(., names(.) != "disconnected") %>%
    sample(1) %>% first(),
  right_backbone = list_backbones() %>% keep(., names(.) != "disconnected") %>%
    sample(1) %>% first(),
  num_common_modules = 10
)

Arguments

num_modifications

The number of branch points in the generated backbone.

min_degree

The minimum degree of each node in the backbone.

max_degree

The maximum degree of each node in the backbone.

left_backbone

A backbone (other than a disconnected backbone), see list_backbones().

right_backbone

A backbone (other than a disconnected backbone), see list_backbones().

num_common_modules

The number of modules which are regulated by either backbone.

Value

A list of all the available backbone generators.

See also

dyngen on how to run a dyngen simulation

Examples

names(list_backbones())
#>  [1] "bifurcating"             "bifurcating_converging" 
#>  [3] "bifurcating_cycle"       "bifurcating_loop"       
#>  [5] "binary_tree"             "branching"              
#>  [7] "consecutive_bifurcating" "converging"             
#>  [9] "cycle"                   "cycle_simple"           
#> [11] "disconnected"            "linear"                 
#> [13] "linear_simple"           "trifurcating"           

bb <- backbone_bifurcating()
bb <- backbone_bifurcating_converging()
bb <- backbone_bifurcating_cycle()
bb <- backbone_bifurcating_loop()
bb <- backbone_binary_tree()
bb <- backbone_branching()
bb <- backbone_consecutive_bifurcating()
bb <- backbone_converging()
bb <- backbone_cycle()
bb <- backbone_cycle_simple()
bb <- backbone_disconnected()
bb <- backbone_linear()
bb <- backbone_linear_simple()
bb <- backbone_trifurcating()

model <- initialise_model(
  backbone = bb
)