Optforce¶
- FVAOptForce(model, constrW, constrM)[source]¶
This function calculates flux ranges for each reaction in the wild-type strain and in the mutant strain. Constraints should be specified for at least one strain (wild-type or mutant)
- USAGE
[minFluxesW, maxFluxesW, minFluxesM, maxFluxesM, boundsW, boundsM] = FVAOptForce (model, constrWT, constrMT)
- INPUTS
model – (structure) COBRA metabolic model with at least the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
constrW – (structure) structure containing contraints for the wild-type strain. The structure has the following fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array)
.rxnBoundType - Type of bound (char array) (‘b’: both bounds; ‘l’: lower bound; ‘u’: upper bound) E.g.: constrW = struct(‘rxnList’, {{‘R75’; ‘EX_suc’}}, ‘rxnValues’, [0; 155.55], ‘rxnBoundType’, [‘b’; ‘b’]);
constrM – (structure) structure containing contraints for the mutant strain. The structure has the following: fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array)
.rxnBoundType - Type of bound (char array) (‘b’: both bounds; ‘l’: lower bound; ‘u’: upper bound) E.g.: constrW = struct(‘rxnList’, {{‘R75’; ‘EX_suc’}}, ‘rxnValues’, [0; 155.55], ‘rxnBoundType’, [‘b’; ‘b’]);
- OUTPUTS
minFluxesW – (double array) minimum values for reactions in the wild-type strain. It has dimensions (number of reactions) x 1
maxFluxesW – (double array) maximum values for reactions in the wild-type strain. It has dimensions (number of reactions) x 1
minFluxesM – (double array) minimum values for reactions in the mutant strain. It has dimensions (number of reactions) x 1
maxFluxesM – (double array) minimum values for reactions in the wild-type strain. It has dimensions (number of reactions) x 1
boundsW – (cell array) bounds given by the minimum and maximum values for reactions in the wild-type strain. The reaction IDs are in the first column, the minimun values in the second and the maximum values in the third. It has dimensions (number of reactions) x 3
boundsM – (cell array) bounds given by the minimum and maximum values for reactions in the mutant strain. The reaction IDs are in the first column, the minimun values in the second and the maximum values in the third. It has dimensions (number of reactions) x 3
- analyzeOptForceSol(model, targetRxn, biomassRxn, solution, relax, tol)[source]¶
This function will calculate the minimum and maximum rates for target production when applying a set of interventions (upregulations, downregulations, knockouts) in the model. Flux for each intervened reaction in the mutant must be specified in the structure solution (third input).
- USAGE
[maxGrowthRate, minTarget, maxTarget] = analyzeOptForceSol (model, targetRxn, solution, relax, tol)
- INPUTS
model – (structure) COBRA metabolic model with at least the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
targetRxn – (string) Reaction identifier for target reaction E.g.: targetRxn = ‘EX_suc’
solution – (structure) Structure containing information about the inverventions. E.g.: solution = struct(‘reactions’, … {{‘R21’; ‘R24’}}, ‘flux’, [10; 0]) In this example, the reaction R21 will be regulated at 10 (mmol/gDW h) (upregulation or downregulation depending on the value for the wild-type strain) and R21 will be regulated at 0 (mmol/gDW h) (knockout) Only two fields are needed for this structure:
.reactions - identifiers for reactions that will be intervened
.flux - new flux achieved in the intervened reactions.
- OPTIONAL INPUTS
relax – (double) Boolean to describe if constraints should be apply in an rounded way (relax = 1) or in an exactly way (relax = 0) Default: relax = 1
tol – (double) range for tolerance when relaxing contraints. Default: tol = 1e-7
- OUTPUTS
maxGrowthRate – (double) Maximum growth rate of mutant strain (after applying the inverventions)
minTarget – (double) Minimum production rate of target at max growth rate
maxTarget – (double) Maximum production rate of target at max growth rate
- findMustL(model, minFluxesW, maxFluxesW, varargin)[source]¶
This function runs the second step of optForce, that is to solve a bilevel mixed integer linear programming problem to find a first order MustL set.
- USAGE
[mustLSet, posMustL] = findMustL (model, minFluxesW, maxFluxesW, varargin)
- INPUTS
model – (structure) COBRA metabolic model with at least the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
minFluxesW – (double array) of size n_rxns x 1. Minimum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesW = [-90; -56];
maxFluxesW – (double array) of size n_rxns x 1. Maximum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce.
- OPTIONAL INPUTS
constrOpt – (structure) structure containing additional contraints. Include here only reactions whose flux is fixed, i.e., reactions whose lower and upper bounds have the same value. Do not include here reactions whose lower and upper bounds have different values. Such contraints should be defined in the lower and upper bounds of the model. The structure has the following fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array) E.g.: struct(‘rxnList’, {{‘EX_gluc’, ‘R75’, ‘EX_suc’}}, ‘values’, [-100, 0, 155.5]’);
runID – (string) ID for identifying this run. Default: [‘run’ date hour].
outputFolder – (string) name for folder in which results will be stored. Default: ‘OutputsFindMustL’.
outputFileName – (string) name for files in which results will be stored. Default: ‘MustLSet’.
printExcel – (double) boolean to describe wheter data must be printed in an excel file or not. Default: 1
printText – (double) boolean to describe wheter data must be printed in an plaint text file or not. Default: 1
printReport – (double) 1 to generate a report in a plain text file. 0 otherwise. Default: 1
keepInputs – (double) 1 to save inputs to run findMustL.m 0 otherwise. Default: 1
printLevel – (double) 1 to print results in console. 0 otherwise. Default: 0
- OUTPUTS
mustLSet – (cell array) Size: number of reactions found X 1. Cell array containing the reactions ID which belong to the Must_U Set
posMustL – (double array) Size: number of reactions found X 1 double array containing the positions of reactions in the model.
outputFileName.xls File containing one column array – with identifiers for reactions in MustL. This file will only be generated if the user entered printExcel = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
outputFileName.txt File containing one column array – with identifiers for reactions in MustL. This file will only be generated if the user entered printText = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName_Info.xls File containing five column arrays. – * C1: identifiers for reactions in MustL
C2: min fluxes for reactions according to FVA
C3: max fluxes for reactions according to FVA
C4: min fluxes achieved for reactions, according to findMustL
C5: max fluxes achieved for reactions, according to findMustL
This file will only be generated if the user entered printExcel = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName_Info.txt File containing five column arrays. – * C1: identifiers for reactions in MustL.
C2: min fluxes for reactions according to FVA
C3: max fluxes for reactions according to FVA
C4: min fluxes achieved for reactions, according to findMustL
C5: max fluxes achieved for reactions, according to findMustL
This file will only be generated if the user entered printText = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
Note
This function is based in the GAMS files written by Sridhar Ranganathan which were provided by the research group of Costas D. Maranas. For a detailed description of the optForce procedure, please see: Ranganathan S, Suthers PF, Maranas CD (2010) OptForce: An Optimization Procedure for Identifying All Genetic Manipulations Leading to Targeted Overproductions. PLOS Computational Biology 6(4): e1000744. https://doi.org/10.1371/journal.pcbi.1000744
- findMustLL(model, minFluxesW, maxFluxesW, varargin)[source]¶
This function runs the second step of optForce, that is to solve a bilevel mixed integer linear programming problem to find a second order MustLL set.
- USAGE
[mustLL, posMustLL, mustLL_linear, pos_mustLL_linear] = findMustLL (model, minFluxesW, maxFluxesW, varargin)
- INPUTS
model – (structure) COBRA metabolic model with at least the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
minFluxesW – (double array) of size n_rxns x 1 Minimum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesW = [-90; -56];
maxFluxesW – (double array) of size n_rxns x 1 Maximum fluxes for each reaction in the model for wild-type strain. This can be obtained by
- OPTIONAL INPUTS
- constrOpt: (structure) structure containing
additional contraints. Include here only reactions whose flux is fixed, i.e., reactions whose lower and upper bounds have the same value. Do not include here reactions whose lower and upper bounds have different values. Such contraints should be defined in the lower and upper bounds of the model. The structure has the following fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array) E.g.: struct(‘rxnList’, {{‘EX_gluc’, ‘R75’, ‘EX_suc’}}, ‘values’, [-100, 0, 155.5]’);
- excludedRxns: (cell array) Reactions to be excluded to
the MustLL set. This could be used to avoid finding transporters or exchange reactions in the set. Default: empty.
- runID: (string) ID for identifying this run.
Default: [‘run’ date hour].
- outputFolder: (string) name for folder in which results
will be stored. Default: ‘OutputsFindMustLL’.
- outputFileName: (string) name for files in which results
will be stored. Default: ‘MustLLSet’.
- printExcel: (double) boolean to describe wheter data
must be printed in an excel file or not. Default: 1
- printText: (double) boolean to describe wheter data
must be printed in an plaint text file or not. Default: 1
- printReport: (double) 1 to generate a report in a plain
text file. 0 otherwise. Default: 1
- keepInputs: (double) 1 to save inputs to run
findMustLL.m, 0 otherwise. Default: 1
- printLevel: (double) 1 to print results in console.
0 otherwise. Default: 0
- OUTPUTS
- mustLL: (cell array) Size: number of sets found X 2
cell array containing the reactions IDs which belong to the MustLL set. Each row contain a couple of reactions.
- posMustLL: (double array) Size: number of sets found X 2
double array containing the positions of each reaction in mustLL with regard to model.rxns
- mustLL_linear: (cell array) Size: number of unique reactions found X 1
cell array containing the unique reactions ID which belong to the MustLL Set
- pos_mustLL_linear: (double array) Size: number of unique reactions found X 1
double array containing positions for reactions in mustLL_linear. with regard to model.rxns
- outputFileName.xls: File containing one column array
with identifiers for reactions in MustLL. This file will only be generated if the user entered printExcel = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName.txt: File containing one column array
with identifiers for reactions in MustLL. This file will only be generated if the user entered printText = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName_Info.xls: File containing one column array.
In each row the user will find a couple of reactions. Each couple of reaction was found in one iteration of FindMustLL.gms. This file will only be generated if the user entered printExcel = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName_Info.txt: File containing one column array.
In each row the user will find a couple of reactions. Each couple of reaction was found in one iteration of FindMustLL.gms. This file will only be generated if the user entered printText = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
Note
This function is based in the GAMS files written by Sridhar Ranganathan which were provided by the research group of Costas D. Maranas. For a detailed description of the optForce procedure, please see: Ranganathan S, Suthers PF, Maranas CD (2010) OptForce: An Optimization Procedure for Identifying All Genetic Manipulations Leading to Targeted Overproductions. PLOS Computational Biology 6(4): e1000744. https://doi.org/10.1371/journal.pcbi.1000744
- findMustU(model, minFluxesW, maxFluxesW, varargin)[source]¶
This function runs the second step of optForce, that is to solve a bilevel mixed integer linear programming problem to find a first order MustU set.
- USAGE
[mustUSet, posMustU] = findMustU (model, minFluxesW, maxFluxesW, varargin)
- INPUTS
model – (structure) COBRA metabolic model with at least the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
minFluxesW – (double array) of size n_rxns x 1 Minimum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesW = [-90; -56];
maxFluxesW – (double array) of size n_rxns x 1 Maximum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce.
- OPTIONAL INPUTS
constrOpt – (structure) structure containing additional contraints. Include here only reactions whose flux is fixed, i.e., reactions whose lower and upper bounds have the same value. Do not include here reactions whose lower and upper bounds have different values. Such contraints should be defined in the lower and upper bounds of the model. The structure has the following fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array) E.g.: struct(‘rxnList’, {{‘EX_gluc’, ‘R75’, ‘EX_suc’}}, ‘values’, [-100, 0, 155.5]’);
runID – (string) ID for identifying this run. Default: [‘run’ date hour].
outputFolder – (string) name for folder in which results will be stored. Default: ‘OutputsFindMustU’.
outputFileName – (string) name for files in which results will be stored. Default: ‘MustUSet’.
printExcel – (double) boolean to describe wheter data must be printed in an excel file or not. Default: 1
printText – (double) boolean to describe wheter data must be printed in an plaint text file or not. Default: 1
printReport – (double) 1 to generate a report in a plain text file. 0 otherwise. Default: 1
keepInputs – (double) 1 to save inputs to run findMustU.m, 0 otherwise. Default: 1
printLevel – (double) 1 to print results in console. 0 otherwise. Default: 0
- OUTPUTS
mustUSet – (cell array) Size: number of reactions found X 1 cell array containing the reactions ID which belong to the Must_U Set
posMustU – (double array) Size: number of reactions found X 1 double array containing the positions of reactions in the model.
outputFileName.xls File containing one column array – with identifiers for reactions in MustU. This file will only be generated if the user entered printExcel = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
outputFileName.txt File containing one column array – with identifiers for reactions in MustU. This file will only be generated if the user entered printText = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName_Info.xls File containing five column arrays. – * C1: identifiers for reactions in MustU
C2: min fluxes for reactions according to FVA
C3: max fluxes for reactions according to FVA
C4: min fluxes achieved for reactions, according to findMustU
C5: max fluxes achieved for reactions, according to findMustU
This file will only be generated if the user entered printExcel = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName_Info.txt File containing five column arrays. – * C1: identifiers for reactions in MustU.
C2: min fluxes for reactions according to FVA
C3: max fluxes for reactions according to FVA
C4: min fluxes achieved for reactions, according to findMustU
C5: max fluxes achieved for reactions, according to findMustU
This file will only be generated if the user entered printText = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
Note
This function is based in the GAMS files written by Sridhar Ranganathan which were provided by the research group of Costas D. Maranas. For a detailed description of the optForce procedure, please see: Ranganathan S, Suthers PF, Maranas CD (2010) OptForce: An Optimization Procedure for Identifying All Genetic Manipulations Leading to Targeted Overproductions. PLOS Computational Biology 6(4): e1000744. https://doi.org/10.1371/journal.pcbi.1000744
- findMustUL(model, minFluxesW, maxFluxesW, varargin)[source]¶
This function runs the second step of optForce, that is to solve a bilevel mixed integer linear programming problem to find a second order MustUL set.
- USAGE
[mustUL, posMustUL, mustUL_linear, pos_mustUL_linear] = findMustUL (model, minFluxesW, maxFluxesW, varargin)
- INPUTS
model – (structure) COBRA metabolic model with at least the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
minFluxesW – (double array) of size n_rxns x 1. Minimum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesW = [-90; -56];
maxFluxesW – (double array) of size n_rxns x 1. Maximum fluxes for each reaction in the model for wild-type strain. This can be obtained by
- OPTIONAL INPUTS
- constrOpt: (structure) structure containing
additional contraints. Include here only reactions whose flux is fixed, i.e., reactions whose lower and upper bounds have the same value. Do not include here reactions whose lower and upper bounds have different values. Such contraints should be defined in the lower and upper bounds of the model. The structure has the following fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array) E.g.: struct(‘rxnList’, {{‘EX_gluc’, ‘R75’, ‘EX_suc’}}, ‘values’, [-100, 0, 155.5]’);
- excludedRxns: (cell array) Reactions to be excluded to
the MustUL set. This could be used to avoid finding transporters or exchange reactions in the set. Default: empty.
- runID: (string) ID for identifying this run.
Default: [‘run’ date hour].
- outputFolder: (string) name for folder in which results
will be stored. Default: ‘OutputsFindMustUL’.
- outputFileName: (string) name for files in which results
will be stored. Default: ‘MustULSet’.
- printExcel: (double) boolean to describe wheter data
must be printed in an excel file or not. Default: 1
- printText: (double) boolean to describe wheter data
must be printed in an plaint text file or not. Default: 1
- printReport: (double) 1 to generate a report in a plain
text file. 0 otherwise. Default: 1
- keepInputs: (double) 1 to save inputs to run
findMustUL.m, 0 otherwise. Default: 1
- printLevel: (double) 1 to print results in console.
0 otherwise. Default: 0
- OUTPUTS
- mustUL: (cell array) Size: number of sets found X 2
cell array containing the reactions IDs which belong to the MustUL set. Each row contain a couple of reactions.
- posMustUL: (double array) Size: number of sets found X 2
double array containing the positions of each reaction in mustUL with regard to model.rxns
- mustUL_linear: (cell array) Size: number of unique reactions found X 1
cell array containing the unique reactions ID which belong to the MustUL Set
- pos_mustUL_linear: (double array) Size: number of unique reactions found X 1
double array containing positions for reactions in mustUL_linear. with regard to model.rxns
- outputFileName.xls: File containing one column array
with identifiers for reactions in MustUL. This file will only be generated if the user entered printExcel = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName.txt: File containing one column array
with identifiers for reactions in MustUL. This file will only be generated if the user entered printText = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName_Info.xls: File containing one column array.
In each row the user will find a couple of reactions. Each couple of reaction was found in one iteration of FindMustUL.gms. This file will only be generated if the user entered printExcel = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName_Info.txt: File containing one column array.
In each row the user will find a couple of reactions. Each couple of reaction was found in one iteration of FindMustUL.gms. This file will only be generated if the user entered printText = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
Note
This function is based in the GAMS files written by Sridhar Ranganathan which were provided by the research group of Costas D. Maranas. For a detailed description of the optForce procedure, please see: Ranganathan S, Suthers PF, Maranas CD (2010) OptForce: An Optimization Procedure for Identifying All Genetic Manipulations Leading to Targeted Overproductions. PLOS Computational Biology 6(4): e1000744. https://doi.org/10.1371/journal.pcbi.1000744
- findMustUU(model, minFluxesW, maxFluxesW, varargin)[source]¶
This function runs the second step of optForce, that is to solve a bilevel mixed integer linear programming problem to find a second order MustUU set.
- USAGE
[mustUU, posMustUU, mustUU_linear, pos_mustUU_linear] = findMustUU (model, minFluxesW, maxFluxesW, varargin)
- INPUTS
model – (structure) COBRA metabolic model with at least the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
minFluxesW – (double array) of size n_rxns x 1. Minimum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesW = [-90; -56];
maxFluxesW – (double array) of size n_rxns x 1. Maximum fluxes for each reaction in the model for wild-type strain. This can be obtained by
- OPTIONAL INPUTS
- constrOpt: (structure) structure containing
additional contraints. Include here only reactions whose flux is fixed, i.e., reactions whose lower and upper bounds have the same value. Do not include here reactions whose lower and upper bounds have different values. Such contraints should be defined in the lower and upper bounds of the model. The structure has the following fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array) E.g.: struct(‘rxnList’, {{‘EX_gluc’, ‘R75’, ‘EX_suc’}}, ‘values’, [-100, 0, 155.5]’);
- excludedRxns: (cell array) Reactions to be excluded to
the MustUU set. This could be used to avoid finding transporters or exchange reactions in the set. Default: empty.
- runID: (string) ID for identifying this run.
Default: [‘run’ date hour].
- outputFolder: (string) name for folder in which results
will be stored. Default: ‘OutputsFindMustUU’.
- outputFileName: (string) name for files in which results
will be stored. Default: ‘MustUUSet’.
- printExcel: (double) boolean to describe wheter data
must be printed in an excel file or not. Default: 1
- printText: (double) boolean to describe wheter data
must be printed in an plaint text file or not. Default: 1
- printReport: (double) 1 to generate a report in a plain
text file. 0 otherwise. Default: 1
- keepInputs: (double) 1 to save inputs to run
findMustUU.m, 0 otherwise. Default: 1
- printLevel: (double) 1 to print results in console.
0 otherwise. Default: 0
- OUTPUTS
- mustUU: (cell array) Size: number of sets found X 2
cell array containing the reactions IDs which belong to the MustUU set. Each row contain a couple of reactions.
- posMustUU: (double array) Size: number of sets found X 2
double array containing the positions of each reaction in mustUU with regard to model.rxns
- mustUU_linear: (cell array) Size: number of unique reactions found X 1
Cell array containing the unique reactions ID which belong to the MustUU Set
- pos_mustUU_linear: (double array) Size: number of unique reactions found X 1
double array containing positions for reactions in mustUU_linear. with regard to model.rxns
- outputFileName.xls: File containing one column array
with identifiers for reactions in MustUU. This file will only be generated if the user entered printExcel = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName.txt: File containing one column array
with identifiers for reactions in MustUU. This file will only be generated if the user entered printText = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName_Info.xls: File containing one column array.
In each row the user will find a couple of reactions. Each couple of reaction was found in one iteration of FindMustUU.gms. This file will only be generated if the user entered printExcel = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
- outputFileName_Info.txt: File containing one column array.
In each row the user will find a couple of reactions. Each couple of reaction was found in one iteration of FindMustUU.gms. This file will only be generated if the user entered printText = 1. Note that the user can choose the name of this file entering the input outputFileName = ‘PutYourOwnFileNameHere’;
Note
This function is based in the GAMS files written by Sridhar Ranganathan which were provided by the research group of Costas D. Maranas. For a detailed description of the optForce procedure, please see: Ranganathan S, Suthers PF, Maranas CD (2010) OptForce: An Optimization Procedure for Identifying All Genetic Manipulations Leading to Targeted Overproductions. PLOS Computational Biology 6(4): e1000744. https://doi.org/10.1371/journal.pcbi.1000744
- optForce(model, targetRxn, biomassRxn, mustU, mustL, minFluxesW, maxFluxesW, minFluxesM, maxFluxesM, varargin)[source]¶
This function runs the third step of optForce that is to solve a bilevel mixed integer linear programming problem to find sets of interventions that lead to an increased production of a particular target
- USAGE
[optForceSets, posOptForceSets, typeRegOptForceSets, fluxOptForceSets] = optForce (model, targetRxn, mustU, mustL, minFluxesW, maxFluxesW, minFluxesM, maxFluxesM, k, varargin)
- INPUTS
model – (structure) COBRA metabolic model with at least the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
targetRxn – (string) string containing the ID for the reaction whose flux is intented to be increased. For E.g., if the production of succionate is desired to be increased, ‘EX_suc’ should be chosen as the target reaction. E.g.: targetRxn = ‘EX_suc’;
mustU – (cell array) List of reactions in the MustU set This input can be obtained by running the script findMustU.m. E.g. mustU = {‘R21_f’;’R22_f’};
mustL – (cell array) List of reactions in the MustL set This input can be obtained by running the script findMustL.m. E.g. first usage: mustL = {‘R11_f’;’R26_f’};
minFluxesW – (double array) of size n_rxns x 1. Minimum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesW = [-90; -56];
maxFluxesW – (double array) of size n_rxns x 1. Maximum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: maxFluxesW = [90; 56];
minFluxesM – (double array) of size n_rxns x 1. Minimum fluxes for each reaction in the model for mutant strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesM = [-90; -56];
maxFluxesM – (double array) of size n_rxns x1. Maximum fluxes for each reaction in the model for mutant strain. This can be obtained by running the function FVAOptForce. E.g.: maxFluxesM = [90; 56];
- OPTIONAL INPUTS
k – (double) number of intervations to be found Default k = 1;
nSets – (double) maximum number of force sets returned by optForce. Default nSets = 1;
constrOpt – (structure) structure containing additional contraints. Include here only reactions whose flux is fixed, i.e., reactions whose lower and upper bounds have the same value. Do not include here reactions whose lower and upper bounds have different values. Such contraints should be defined in the lower and upper bounds of the model. The structure has the following fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array) E.g.: struct(‘rxnList’, {{‘EX_gluc’, ‘R75’, ‘EX_suc’}}, ‘values’, [-100, 0, 155.5]’);
excludedRxns – (structure) Reactions to be excluded. This structure has the following fields:
.rxnList - Reaction list (cell array)
.typeReg - set from which reaction is excluded (char array) (U: Set of upregulared reactions, D: set of downregulared reations, K: set of knockout reactions)
E.g.: excludedRxns = struct(‘rxnList’, {{‘SUCt’, ‘R68_b’}}, ‘typeReg’, ‘UD’) In this E.g. ‘SUCt’ is prevented to appear in the set of upregulated reactions and ‘R68_b’ is prevented to appear in the downregulated set of reactions. Default: empty.
runID – (string) ID for identifying this run. Default: [‘run’ date hour].
outputFolder – (string) name for folder in which results will be stored. Default: ‘OutputsFindMustLL’.
outputFileName – (string) name for files in which results. will be stored. Default: ‘MustLLSet’.
printExcel – (double) boolean to describe wheter data must be printed in an excel file or not. Default: 1
printText – (double) boolean to describe wheter data must be printed in an plaint text file or not. Default: 1
printReport – (double) 1 to generate a report in a plain text file. 0 otherwise. Default: 1
keepInputs – (double) 1 to mantain folder with inputs to run findMustLL.gms. 0 otherwise. Default: 1
printLevel – (double) 1 to print results in console. 0 otherwise. Default: 0
- OUTPUTS
optForceSets – (cell array) cell array of size n x m, where n = number of sets found and m = size of sets found (k) Element in position i, j is reaction j in set i. E.g.:
rxn1
rxn2
set 1
R4
R2
set 2
R3
R1
posOptForceSets – (double array) double array of size n x m, where n = number of sets found and m = size of sets found (k) Element in position i, j is the position of reaction in optForceSets(i,j) in model.rxns E.g.:
rxn1
rxn2
set 1
4
2
set 2
3
1
typeRegOptForceSets – (cell array) cell array of size n x m, where n = number of sets found and m = size of sets found (k) Element in position i, j is the kind of intervention for reaction in optForceSets(i,j) E.g.:
rxn1
rxn2
set 1
upregulation
downregulation
set 2
upregulation
knockout
fluxOptForceSets – (double) matrix Matrix of size n + m, where n = number of sets found and m = size of sets found (k) The number in (i,j) is the flux achieved for the reaction in optForceSets(i,j)
outputFileName.xls – file containing 11 columns.
C1: Number of interventions (k)
C2: Set Number
C3: Identifiers for reactions in the force set
C4: Type of regulations for each reaction in the force set
C5: min flux of each reaction in force set, according to FVA
C6: max flux of each reaction in force set, according to FVA
C7: achieved flux of each of the reactions in the force set after applying the inverventions
C8: objetive function achieved by OptForce.gms
C9: Minimum flux fot target when applying the interventions
C10: Maximum flux fot target when applying the interventions
C11: Maximum growth rate when applying the interventions.
In the rows, the user can see each of the optForce sets found.
outputFileName.txt – Same as outputFileName.xls but in a .txt file, separated by tabs.
Note
This function is based in the GAMS files written by Sridhar Ranganathan which were provided by the research group of Costas D. Maranas. For a detailed description of the optForce procedure, please see: Ranganathan S, Suthers PF, Maranas CD (2010) OptForce: An Optimization Procedure for Identifying All Genetic Manipulations Leading to Targeted Overproductions. PLOS Computational Biology 6(4): e1000744. https://doi.org/10.1371/journal.pcbi.1000744
- saveInputsMustSetsFirstOrder(model, minFluxesW, maxFluxesW, constrOpt, inputFolder)[source]¶
This function saves all the inputs needed to run functions to find first order Must Sets (MustU, `MustL) The inputs will be stored in inputFolder.
- USAGE
saveInputsMustSetsFirstOrder (model, minFluxesW, maxFluxesW, constrOpt,inputFolder)
- INPUTS
model – (structure) COBRA metabolic model with at least the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
minFluxesW – (double array) of size n_rxns x 1. Minimum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesW = [-90; -56];
maxFluxesW – (double array) of size n_rxns x 1 Maximum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: maxFluxesW = [90; 56];
constrOpt – (structure) structure containing additional contraints. Include here only reactions whose flux is fixed, i.e., reactions whose lower and upper bounds have the same value. Do not include here reactions whose lower and upper bounds have different values. Such contraints should be defined in the lower and upper bounds of the model. The structure has the following fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array) E.g.: struct(‘rxnList’, {{‘EX_gluc’, ‘R75’, ‘EX_suc’}}, ‘values’, [-100, 0, 155.5]’);
inputFolder – (string) Folder where inputs for GAMS function will be stored
- OUTPUTS
model.mat File containing the model
minFluxesW.mat – File containing the minimum fluxes for the wild-type
maxFluxesW.mat – File containing the maximum fluxes for the mutant
constrOpt.mat – File containing the constraints used
- saveInputsMustSetsSecondOrder(model, minFluxesW, maxFluxesW, constrOpt, excludedRxns, inputFolder)[source]¶
This function saves all the inputs needed to run functions to find second order Must Sets (MustUU, MustLL and MustUL) The inputs will be stored in inputFolder.
- USAGE
saveInputsMustSetsSecondOrder (model, minFluxesW, maxFluxesW, constrOpt, excludedRxns, inputFolder)
- INPUTS
model – (structure) COBRA metabolic model with at least the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
minFluxesW – (double array) of size n_rxns x 1. Minimum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesW = [-90; -56];
maxFluxesW – (double array) of size n_rxns x 1 Maximum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: maxFluxesW = [90; 56];
constrOpt – (structure) structure containing additional contraints. Include here only reactions whose flux is fixed, i.e., reactions whose lower and upper bounds have the same value. Do not include here reactions whose lower and upper bounds have different values. Such contraints should be defined in the lower and upper bounds of the model. The structure has the following fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array) E.g.: struct(‘rxnList’, {{‘EX_gluc’, ‘R75’, ‘EX_suc’}}, ‘values’, [-100, 0, 155.5]’);
excludedRxns – (cell array) Reactions to be excluded to the MustXX set. This could be used to avoid finding transporters or exchange reactions in the set Default: empty.
inputFolder – (string) Folder where inputs for GAMS function will be stored
- OUTPUTS
model.mat – File containing the model
minFluxesW.mat – File containing the minimum fluxes for the wild-type
maxFluxesW.mat – File containing the maximum fluxes for the mutant
constrOpt.mat – File containing the constraints used
excludedRsns.mat – File containing the excluded reactions
- saveInputsOptForce(model, targetRxn, mustU, mustL, minFluxesW, maxFluxesW, minFluxesM, maxFluxesM, k, nSets, constrOpt, excludedURxns, excludedLRxns, excludedKRxns, inputFolder)[source]¶
This function saves all the inputs needed to run functions to find second order Must Sets (MustUU, MustLL and MustUL) The inputs will be stored in inputFolder.
- USAGE
saveInputsOptForce (model, targetRxn, mustU, mustL, minFluxesW, maxFluxesW, minFluxesM, maxFluxesM, k, nSets, constrOpt, excludedURxns, excludedLRxns, excludedKRxns, inputFolder)
- INPUTS
- model: (structure) COBRA metabolic model with at least
the following fields:
.rxns - Reaction IDs in the model
.mets - Metabolite IDs in the model
.S - Stoichiometric matrix (sparse)
.b - RHS of Sv = b (usually zeros)
.c - Objective coefficients
.lb - Lower bounds for fluxes
.ub - Upper bounds for fluxes
- minFluxesW: (double array) of size n_rxns x 1
Minimum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesW = [-90; -56];
- maxFluxesW: (double array) of size n_rxns x 1
Maximum fluxes for each reaction in the model for wild-type strain. This can be obtained by running the function FVAOptForce.
- minFluxesM: (double array) of size n_rxns x 1
Minimum fluxes for each reaction in the model for mutant strain. This can be obtained by running the function FVAOptForce. E.g.: minFluxesW = [-90; -56];
- maxFluxesM: (double array) of size n_rxns x 1
Maximum fluxes for each reaction in the model for mutant strain. This can be obtained by running the function FVAOptForce.
- constrOpt: (structure) structure containing
additional contraints. Include here only reactions whose flux is fixed, i.e., reactions whose lower and upper bounds have the same value. Do not include here reactions whose lower and upper bounds have different values. Such contraints should be defined in the lower and upper bounds of the model. The structure has the following fields:
.rxnList - Reaction list (cell array)
.values - Values for constrained reactions (double array) E.g.: struct(‘rxnList’, {{‘EX_gluc’, ‘R75’, ‘EX_suc’}}, ‘values’, [-100, 0, 155.5]’);
- excludedURxns: (cell array) Reactions to be excluded from
upregulations. This could be used to avoid finding transporters or exchange reactions in the set
- excludedLRxns: (cell array) Reactions to be excluded from
downregulations. This could be used to avoid finding transporters or exchange reactions in the set
- excludedKRxns: (cell array) Reactions to be excluded from
knockouts This could be used to avoid finding transporters or exchange reactions in the set
inputFolder: (string) Folder where inputs for GAMS function will be stored
- OUTPUTS
model.mat – File containing the model
targetRxn.mat – File containing the target reaction
mustU.mat – File containing mustU set
mustL.mat – File containing mustL set
minFluxesW.mat – File containing the minimum fluxes for the wild-type
maxFluxes.mat – File containing the maximum fluxes for the wild-type
minFluxesM.mat – File containing the minimum fluxes for the mutant
maxFluxesM.mat – File containing the maximum fluxes for the mutant
k.mat – File containing k the number of reactions in the optForce set
nSets.mat – File containing the maximum number of sets found by optForce