diff --git a/R/generateWT.R b/R/generateWT.R index 595a005faa4eea3f23b854f31431fc0ddd04d4bf..52811193a2e350977bf663f2863b411183958e2c 100644 --- a/R/generateWT.R +++ b/R/generateWT.R @@ -28,55 +28,76 @@ # # -.generateWT <- function(model, react = NULL, lb = NULL, ub = NULL, - algorithm="fba", ...) { +.generateWT <- function(model, react = NULL, lb = NULL, ub = NULL, ...) { - ca <- match.call() - - if ("solver" %in% names(ca)) { +# ca <- match.call() +# +# if ("solver" %in% names(ca)) { - # It is necessary to test, whether argument solver has a variable, - # or not. If it is a variable, it needs to be evaluated. - testslv <- tryCatch(eval(parse(text = ca["solver"])), - error = function(e) e) - if (is(testslv, "simpleError")) { - slv <- as.character(ca["solver"]) - } - else { - slv <- as.character(testslv) - } - - } - else { - slv <- SYBIL_SETTINGS("SOLVER") - } +# # It is necessary to test, whether argument solver has a variable, +# # or not. If it is a variable, it needs to be evaluated. +# testslv <- tryCatch(eval(parse(text = ca["solver"])), +# error = function(e) e) +# if (is(testslv, "simpleError")) { +# slv <- as.character(ca["solver"]) +# } +# else { +# slv <- as.character(testslv) +# } +# +# } +# else { +# slv <- SYBIL_SETTINGS("SOLVER") +# } + + # setting ... parameters into list + ca <- list(...) + if(is.null(ca$solver)){ + ca$solver <- SYBIL_SETTINGS("SOLVER") + } - me <- checkDefaultMethod(solver = slv, + me <- checkDefaultMethod(solver = ca$solver, method = "NA", probType = "lp", loadPackage = FALSE) + ca$solver <- me[["sol"]] + ca$method <- me[["met"]] + ca$solverParm <- as.data.frame(NA) + + ca$object <- model + if(is.null(ca$algorithm)) ca$algorithm <- "fba" + ca$react <- react + ca$ub <- ub + ca$lb <- lb if (is(react, "list")) { message("calculating fba solutions ... ", appendLF = FALSE) - suppressMessages( - tmp <- optimizer(model, algorithm = algorithm, - lpdir = rep("max", length(react)), - react = react, lb = lb, ub = ub, verboseMode = 0, - solver = me[["sol"]], method = me[["met"]], - solverParm = as.data.frame(NA), ...) - ) + suppressMessages({ + ca$lpdir <- rep("max", length(react)) + ca$verboseMode <- 0 + + tmp <- do.call(optimizer, ca) +# tmp <- optimizer(model, algorithm = algorithm, +# lpdir = rep("max", length(react)), +# react = react, lb = lb, ub = ub, verboseMode = 0, +# solver = me[["sol"]], method = me[["met"]], +# solverParm = as.data.frame(NA), ...) + }) message("OK") } else { - tmp <- optimizeProb(model, - react = react, lb = lb, ub = ub, - retOptSol = FALSE, - algorithm = algorithm, - lpdir = "max", - solver = me[["sol"]], - method = me[["met"]], - solverParm = as.data.frame(NA), ...) + ca$retOptSol <- FALSE + ca$lpdir <- "max" + tmp <- do.call("optimizeProb", ca) +# tmp <- optimizeProb(model, +# react = react, lb = lb, ub = ub, +# retOptSol = FALSE, +# algorithm = algorithm, +# lpdir = "max", +# solver = me[["sol"]], +# method = me[["met"]], +# solverParm = as.data.frame(NA), ...) } return(tmp) diff --git a/man/sysBiolAlg_fbaEasyConstraint-class.Rd b/man/sysBiolAlg_fbaEasyConstraint-class.Rd index 956f2a04c10e4daecf833c30c6e0f45b6db84901..081bc5a432bed65324561d7b625ee2c6f8757059 100644 --- a/man/sysBiolAlg_fbaEasyConstraint-class.Rd +++ b/man/sysBiolAlg_fbaEasyConstraint-class.Rd @@ -152,7 +152,7 @@ showClass("sysBiolAlg_fbaEasyConstraint") # see package vignette for second example with more comments: - vignette("sybil") + #vignette("sybil") #load model data(Ec_core)