Findthermoconsistentfluxsubset¶
- findThermoConsistentFluxSubset(model, param, removeMetBool, removeRxnBool)[source]¶
Find the thermodynamically flux consistent subset of an input model, optionally after removing certain metabolites and reactions
- USAGE:
[thermoFluxConsistentMetBool, thermoFluxConsistentRxnBool, model, thermoConsistModel] = findThermoConsistentFluxSubset (model, param, removeMetBool, removeRxnBool)
- INPUTS:
model – structure with fields:
.S - m x n stoichiometric matrix
.lb - n x 1 lower flux bounds
.ub - n x 1 upper flux bounds
.b - m x 1 right hand side of S*v = b
.E - additional net-flux constraint matrix; if present the function raises an error (not yet supported)
.mets - m x 1 cell array of metabolite identifiers
.rxns - n x 1 cell array of reaction identifiers
.SConsistentMetBool - m x 1 boolean, stoichiometrically consistent metabolites
.SConsistentRxnBool - n x 1 boolean, stoichiometrically consistent reactions
.SIntMetBool - m x 1 boolean, internal metabolites
.SIntRxnBool - n x 1 boolean, internal reactions
.fluxConsistentMetBool - m x 1 boolean, flux consistent metabolites
.fluxConsistentRxnBool - n x 1 boolean, flux consistent reactions
- OPTIONAL INPUTS:
param – structure of parameters:
.epsilon - smallest flux considered nonzero (default solver feasTol)
.printLevel - print level
.formulation - mathematical formulation of the inner iteration (default ‘pqzw’)
.iterationMethod - method to iteratively enlarge the thermodynamically consistent subset (default ‘random’)
.secondaryRemoval - also remove stoichiometrically or flux inconsistent parts (default 1)
.nMax - maximum number of iterations (default 60)
.relaxBounds - relax bounds that do not include zero (default false)
.acceptRepairedFlux - accept a repaired flux vector (set from relaxBounds)
.debug - debug flag (default 0)
removeMetBool – m x 1 logical index of metabolites to remove before computing the thermodynamically consistent subset
removeRxnBool – n x 1 logical index of reactions to remove before computing the thermodynamically consistent subset
- OUTPUTS:
thermoFluxConsistentMetBool – m x 1 boolean, thermodynamically flux consistent metabolites
thermoFluxConsistentRxnBool – n x 1 boolean, thermodynamically flux consistent reactions
model – input model with the following fields added:
.thermoFluxConsistentMetBool - m x 1 boolean, thermodynamically flux consistent metabolites
.thermoFluxConsistentRxnBool - n x 1 boolean, thermodynamically flux consistent reactions
.thermoFwdFluxConsistentRxnBool - n x 1 boolean, forward thermodynamically flux consistent reactions
.thermoRevFluxConsistentRxnBool - n x 1 boolean, reverse thermodynamically flux consistent reactions
.forcedIntRxnBool - n x 1 boolean, internal reactions forced to be unidirectional
.delta0 - weight on the zero-norm term in the cardinality optimisation
.delta1 - weight on the one-norm term in the cardinality optimisation
.alpha1 - weight parameter in the cardinality optimisation
.beta - weight parameter in the cardinality optimisation
.g0 - weight parameter in the cardinality optimisation
thermoConsistModel – subset of the input model that is thermodynamically consistent
Examples
% See COBRA.papers/2022_cardOpt/driver_testFindThermoFluxConsistency.mlx % COBRA.tutorials/analysis/vonBertalanffy/findThermoConsistentFluxSubset/tutorial_findThermoConsistentFluxSubset.mlx