Select Git revision
modelorg2ExPA.R
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
modelorg2ExPA.R 5.15 KiB
# modelorg2ExPA.R
# FBA and friends with R.
#
# Copyright (C) 2010-2014 Gabriel Gelius-Dietrich, Dpt. for Bioinformatics,
# Institute for Informatics, Heinrich-Heine-University, Duesseldorf, Germany.
# All right reserved.
# Email: geliudie@uni-duesseldorf.de
#
# This file is part of sybil.
#
# Sybil is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Sybil is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with sybil. If not, see <http://www.gnu.org/licenses/>.
################################################
# Function: modelorg2ExPA
#
#
#
#
# original function buildExpaFileFromModelorg by C. Jonathan Fritzemeier
modelorg2ExPA <- function(model,
fname = NULL,
exIntReact = NULL,
filepath = ".",
suffix = "expa",
tol = SYBIL_SETTINGS("TOLERANCE")) {
if (!is(model, "modelorg")) {
stop("needs an object of class modelorg!")
}
#expa <- ifelse (missing(fname), mod_id(model), fname)
if (is.null(fname)) {
expa <- paste(mod_id(model), suffix, sep = ".")
}
else {
expa <- fname
}
tofile <- file.path(filepath, expa)
fh <- try(file(tofile, "wt"), silent = TRUE)
if (is(fh, "try-error")) {
stop("cannot write ExPA file ", sQuote(fh))
} else {
on.exit(close(fh))
}
# exclude reactions
if (is.null(exIntReact)) {
exInt <- NA
}
else {
exInt <- checkReactId(model, exIntReact)
}