You can use the bblego
functions in order to create
custom backbones using various components. Please note that the bblego
functions currently only allow you to create treelike backbones.
bblego(..., .list = NULL) bblego_linear( from, to, type = sample(c("simple", "doublerep1", "doublerep2"), 1), num_modules = sample(4:6, 1), burn = FALSE ) bblego_branching( from, to, type = "simple", num_steps = 3, num_modules = 2 + length(to) * (3 + num_steps), burn = FALSE ) bblego_start( to, type = sample(c("simple", "doublerep1", "doublerep2"), 1), num_modules = sample(4:6, 1) ) bblego_end( from, type = sample(c("simple", "doublerep1", "doublerep2"), 1), num_modules = sample(4:6, 1) )
..., .list 


from  The begin state of this component. 
to  The end state of this component. 
type  Some components have alternative module regulatory networks.

num_modules  The number of modules this component is allowed to use. Various components might require a minimum number of components in order to work properly. 
burn  Whether or not these components are part of the warmup simulation. 
num_steps  The number of branching steps to reduce the odds of double positive cells occurring. 
A dyngen backbone.
A backbone always needs to start with a single bblego_start()
state and
needs to end with one or more bblego_end()
states.
The order of the mentioned states needs to be such that a state is never
specified in the first argument (except for bblego_start()
) before
having been specified as the second argument.
backbone < bblego( bblego_start("A", type = "simple", num_modules = 2), bblego_linear("A", "B", type = "simple", num_modules = 3), bblego_branching("B", c("C", "D"), type = "simple", num_steps = 3), bblego_end("C", type = "flipflop", num_modules = 4), bblego_end("D", type = "doublerep1", num_modules = 7) )