expandGates {CellNOptR} | R Documentation

## Expand the gates of a model

### Description

This function takes in a model and splits all AND gates into ORs. In addition, wherever there are more than one, it creates all possible ANDs combinations of them, but considering only ANDs with 2, 3 or 4 inputs according to the user argument (default is 2)

### Usage

    expandGates(model, ignoreList=NA, maxInputsPerGate=2)

### Arguments

`model` | a model structure
`ignoreList` | a list of reactions indices to ignore
`maxInputsPerGate` | maximum number of input per gates (Default is 2; up to 4)

### Details

This function returns a model with additional fields that help keep track of the processing done on the network. I would advice not to overwrite on the initial model but rather to assign the result of this function to a variable with a different name.

### Value

returns a model, with additional fields:

`SplitANDs` | list that contains a named element for each AND reac that has been split, and each element contains a vector with the names of the of the reactions that result from the split if nothing was split, this element has the default value $initialReac [1] "split1" "split2"
`newANDs` | list that contains an element for each new '&' gate, named by the name of this new and reac, and containing a vector of the names of the reactions from which it was created (contains all the reacs in that pool, not the particular ones, this could be improved)

### Note

No need to call this function directly since version 0.99.24. Use preprocessing instead.

### Author(s)

C.Terfve. T. Cokelaer, A.MacNamara, Martin-Franz-Xaver Pirkl

### Examples

    #load data

    data(CNOlistToy,package="CellNOptR")
    data(ToyModel,package="CellNOptR")

    #pre-process the model

    indicesToy<-indexFinder(CNOlistToy,ToyModel,verbose=TRUE)
    ToyNCNOindices<-findNONC(ToyModel,indicesToy,verbose=TRUE)
    ToyNCNOcut<-cutNONC(ToyModel,ToyNCNOindices)
    indicesToyNCNOcut<-indexFinder(CNOlistToy,ToyNCNOcut)
    ToyNCNOcutComp<-compressModel(ToyNCNOcut,indicesToyNCNOcut)
    indicesToyNCNOcutComp<-indexFinder(CNOlistToy,ToyNCNOcutComp)
    ToyNCNOcutCompExp<-expandGates(ToyNCNOcutComp, maxInputsPerGate=4)

[Package CellNOptR version 1.26.0 Index]