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)

  • removeMetBoolm x 1 logical index of metabolites to remove before computing the thermodynamically consistent subset

  • removeRxnBooln x 1 logical index of reactions to remove before computing the thermodynamically consistent subset

OUTPUTS:
  • thermoFluxConsistentMetBoolm x 1 boolean, thermodynamically flux consistent metabolites

  • thermoFluxConsistentRxnBooln 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