## Not run:
# ## The examples here require the package glpkAPI to be
# ## installed. If that package is not available, you have to set
# ## the argument 'solver' (the default is: solver = "glpkAPI").
#
# ## load the example data set
# data(iAF1260)
# model=iAF1260
# allgenes=allGenes(model)
# ##set all genes to OFF
# ex=cbind(LOCUS=allgenes,State=rep(0,length(allgenes)));
# ##set state of genes as required
#
# ## Optionally optimize only for a set of reactions
# testgpr=rep(FALSE,react_num(model))
# testgpr[react_id(model) %in% c('R_PYK','R_FLDR','R_FEROpp')]=TRUE
#
# # read or set the expression status of genes : 0 not expressed,
# # 1 Expressed, NA: unknown or ignored
# ex_on=ex
# ex_on[ex_on[,1] %in% c('b0123','b1854','b0684','b3924'),2]=1
#
# ex_off=ex# all genes are not expressed
#
# slvr="glpkAPI"
# # run two times, one with genes ON, the other with genes OFF
# ser_on = eFBA_rxn(model, ex_on,solver=slvr,verbose=3,testgpr=testgpr,Tf=0.001);
# ser_off = eFBA_rxn(model, ex_off,solver=slvr,verbose=3,testgpr=testgpr,Tf=0.001)
#
# #print results
# cbind(rxn=c('R_PYK','R_FLDR','R_FEROpp'),geneONfluxes=ser_on$rxn[testgpr, "newFlux"],
# geneOFFfluxes=ser_off$rxn[testgpr, "newFlux"],
# ruleStateON=ser_on$rxn[testgpr,"expr"],ruleStateOFF=ser_off$rxn[testgpr,"expr"],
# FBA_flux=ser_off$rxn[testgpr,"origFlux"])
#
# #Count difference between these two solutions
# sum(abs( as.numeric(ser_on$rxn[, "newFlux"])-as.numeric(ser_off$rxn[, "newFlux"]))>0.001)
#
#
# ## End(Not run)
Run the code above in your browser using DataLab