SWIFTCORE

blocked(S, rev, solver)

blocked finds all the irreversible blocked reactions and is utilized in swiftcc

USAGE:

result = blocked(S, rev, solver)

INPUTS:

S: the associated sparse stoichiometric matrix rev: the 0-1 vector with 1’s corresponding to the reversible reactions solver: the LP solver to be used; the currently available options are

‘gurobi’, ‘linprog’, and ‘cplex’ with the default value of ‘linprog’. It fallbacks to the COBRA LP solver interface if another supported solver is called.

OUTPUT:
result: the result returned by the LP solver; among the last n entries,

all the -1 entries are blocked, and the other entries are zero. The first m entries are its fictitious metabolite certificate.

core(model, blocked, weights, solver)

core finds a feasible flux distribution to unblock a given list of blocked reactions and is utilized in swiftcore

USAGE:

flux = core(S, rev, blocked, weights, solver)

INPUTS:
model: the metabolic network with fields:
  • .S - the associated sparse stoichiometric matrix

  • .rev - the 0-1 indicator vector of the reversible reactions

  • .rxns - the cell array of reaction abbreviations

  • .mets - the cell array of metabolite abbreviations

blocked: the 0-1 vector with 1’s corresponding to the blocked reactions weights: weight vector for the penalties associated with each reaction solver: the LP solver to be used; the currently available options are

‘gurobi’, ‘linprog’, and ‘cplex’ with the default value of ‘linprog’. It fallbacks to the COBRA LP solver interface if

another supported solver is called.

OUTPUT:

flux: a feasible flux distribution

partition(model, solver, algorithm)

swiftcc++ and fastcc++ augment swiftcc and fastcc by this preprocess

USAGE:

component = partition(model, solver, algorithm)

INPUTS:
model: the metabolic network reconstruction
  • .S - the associated sparse stoichiometric matrix

  • .lb - feasible flux distribution lower bound

  • .ub - feasible flux distribution uppper bound

  • .rxns - cell array of reaction abbreviations

  • .rev - the 0-1 indicator vector of the reversible reactions

solver: the LP solver to be used; the currently available options

are ‘gurobi’, ‘linprog’, and ‘cplex’ with the default value of ‘linprog’. It fallbacks to the COBRA LP solver interface if another supported solver is called.

algorithm: the backend algorithm to be utilized between ‘swift’ and ‘fast’

OUTPUT:
component: the index set of the reactions constituting the maximum

flux consistent metabolic subnetwork

Note

requires bioinformatics toolbox

swiftcc(S, rev, varargin)

swiftcc is an even faster version of fastcc

USAGE:

consistent = swiftcc(S, rev [, solver])

INPUTS:

S: the associated sparse stoichiometric matrix rev: the 0-1 vector with 1’s corresponding to the reversible reactions

OPTIONAL INPUT:
solver: the LP solver to be used; the currently available options are

‘gurobi’, ‘linprog’, and ‘cplex’ with the default value of ‘linprog’. It fallbacks to the COBRA LP solver interface if another supported solver is called.

OUTPUT:
consistent: the 0-1 indicator vector of the reactions constituting

the maximum flux consistent metabolic subnetwork

swiftcore(model, coreInd, weights, tol, reduction, varargin)

swifcore is an even faster version of fastcore

USAGE:

[reconstruction, reconInd, LP] = swiftcore(model, coreInd, weights, tol, reduction, solver)

INPUTS:
model: the metabolic network with fields:
  • .S - the associated sparse stoichiometric matrix

  • .lb - lower bounds on reaction rates

  • .ub - upper bounds on reaction rates

  • .rxns - the cell array of reaction abbreviations

  • .mets - the cell array of metabolite abbreviations

coreInd: the set of indices corresponding to the core reactions weights: the weight vector for the penalties associated with each reaction tol: zero-tolerance, i.e., the smallest flux value considered nonzero reduction: boolean enabling the metabolic network reduction preprocess

OPTIONAL INPUT:
solver: the LP solver to be used; the currently available options are

‘gurobi’, ‘linprog’, and ‘cplex’ with the default value of ‘linprog’. It fallbacks to the COBRA LP solver interface if another supported solver is called.

OUTPUTS:
reconstruction: the flux consistent metabolic network reconstructed

from the core reactions

reconInd: the 0-1 indicator vector of the reactions constituting

the reconstruction

LP: the number of solved LPs

Note

For the choice of the weight vector, use c*ones(n, 1) where c is an arbitrary constant c > 1 if you have no preference over reactions. Also, note that the input model is assumed to be flux consistent.