From b512ea321b3001c1ff1c6140baccd3a3566e23d0 Mon Sep 17 00:00:00 2001 From: Eduard Kerkhoven Date: Mon, 17 Jul 2023 12:11:51 +0200 Subject: [PATCH 1/9] Create version.txt --- version.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 version.txt diff --git a/version.txt b/version.txt new file mode 100644 index 000000000..94ff29cc4 --- /dev/null +++ b/version.txt @@ -0,0 +1 @@ +3.1.1 From cb95be20329195f0e49b385fd379b2b635ec626c Mon Sep 17 00:00:00 2001 From: Eduard Kerkhoven Date: Sat, 2 Dec 2023 01:16:52 +0100 Subject: [PATCH 2/9] Update version.txt --- version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.txt b/version.txt index 94ff29cc4..ef538c281 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -3.1.1 +3.1.2 From afa233429fe17f0a341f2ec8886fd6364fa94094 Mon Sep 17 00:00:00 2001 From: Eduard Kerkhoven Date: Tue, 30 Jan 2024 11:05:15 +0100 Subject: [PATCH 3/9] Update version.txt --- version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.txt b/version.txt index ef538c281..ff365e06b 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -3.1.2 +3.1.3 From acd52ff9828ccae4dbfeeb4f20040af3b8d374e7 Mon Sep 17 00:00:00 2001 From: HossFir Date: Fri, 19 Apr 2024 00:01:52 +0200 Subject: [PATCH 4/9] Update 'reportEnzymeUsage' to modify the total protein pool by summing up protein pool exchange and proteomics integrated, adjusting 'percUsage' accordingly. --- src/geckomat/utilities/reportEnzymeUsage.m | 24 +++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/src/geckomat/utilities/reportEnzymeUsage.m b/src/geckomat/utilities/reportEnzymeUsage.m index 85d5a8acd..d3ec223b3 100644 --- a/src/geckomat/utilities/reportEnzymeUsage.m +++ b/src/geckomat/utilities/reportEnzymeUsage.m @@ -61,7 +61,29 @@ topUsage.rxnNames = {}; topUsage.grRules = {}; -protPool = -ecModel.lb(strcmp(ecModel.rxns,'prot_pool_exchange'))/100; +% Calculate the protein pool flux from the 'prot_pool_exchange' reaction +protPoolExchangeFlux = -ecModel.lb(strcmp(ecModel.rxns,'prot_pool_exchange')); + +% Obtain the fluxes +sol = solveLP(ecModel); +if isempty(sol.x) + error('No solution found.'); +end +fluxValues = sol.x; + +% Sum fluxes for all 'usage_prot_' reactions, excluding the 'usage_prot_standard' +usageProtIndices = startsWith(ecModel.rxns, 'usage_prot_') & ... + ~contains(ecModel.rxns, 'standard'); + +% Sum the absolute values of the usage fluxes +totalUsageProtFlux = sum(abs(fluxValues(usageProtIndices))); + +% Define the new protein pool as the sum of prot_pool_exchange flux and total usage_prot fluxes +protPool = (protPoolExchangeFlux + totalUsageProtFlux)/100; + +fprintf('Total Protein Pool Flux: %f\n', protPoolExchangeFlux); +fprintf('total UsageProt Flux: %f\n', totalUsageProtFlux); + for i=1:numel(topEnzyme) [rxns, kcat, idx, rxnNames, grRules] = getReactionsFromEnzyme(ecModel,topEnzyme{i}); From 978519ed5a2eb0eb204b210697904d8c6fff8cbf Mon Sep 17 00:00:00 2001 From: HossFir Date: Fri, 19 Apr 2024 00:05:17 +0200 Subject: [PATCH 5/9] Update 'reportEnzymeUsage' to modify the total protein pool by summing up protein pool exchange and proteomics integrated, adjusting 'percUsage' accordingly. --- git | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 git diff --git a/git b/git new file mode 100644 index 000000000..e69de29bb From 2ab84b239da48266d0ee5e08696447ae42fd975f Mon Sep 17 00:00:00 2001 From: Eduard Kerkhoven Date: Sun, 28 Apr 2024 14:41:10 +0200 Subject: [PATCH 6/9] feat: enzymeUsage parses fluxes to output --- src/geckomat/utilities/enzymeUsage.m | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/geckomat/utilities/enzymeUsage.m b/src/geckomat/utilities/enzymeUsage.m index 2af9f6d83..8f622ccd5 100644 --- a/src/geckomat/utilities/enzymeUsage.m +++ b/src/geckomat/utilities/enzymeUsage.m @@ -26,6 +26,7 @@ % absUsage vector of absolute enzyme usages % UB vector of enzyme exchange reaction upper bounds % protID string array of matching protein IDs +% fluxes vector of fluxes, copy of input fluxes % % Usage: % usageData = enzymeUsage(ecModel,fluxes,zero) @@ -42,6 +43,7 @@ usageData.LB = ecModel.lb(rxnIdx); usageData.absUsage = abs(fluxes(rxnIdx)); usageData.capUsage = abs(usageData.absUsage./usageData.LB); +usageData.fluxes = fluxes; if ~zero nonzero = usageData.absUsage<0; From 1b45edd21f6910ffb26feabf79e34e6afbbc7c79 Mon Sep 17 00:00:00 2001 From: Eduard Kerkhoven Date: Sun, 28 Apr 2024 14:44:25 +0200 Subject: [PATCH 7/9] feat: reportEnzymeUsage input and output - use fluxes from usageData - give protein pool in usageReport instead of printing to command window --- src/geckomat/utilities/reportEnzymeUsage.m | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/src/geckomat/utilities/reportEnzymeUsage.m b/src/geckomat/utilities/reportEnzymeUsage.m index d3ec223b3..5d793990d 100644 --- a/src/geckomat/utilities/reportEnzymeUsage.m +++ b/src/geckomat/utilities/reportEnzymeUsage.m @@ -1,10 +1,10 @@ -function usageReport = topEnzymeUsage(ecModel, usageData, highCapUsage, topAbsUsage) +function usageReport = reportEnzymeUsage(ecModel, usageData, highCapUsage, topAbsUsage) % reportEnzymeUsage % Summarizes the results from enzymeUsage. % % Input: % ecModel a GECKO3 ecModel -% usageData output from reportEnzymeUsage +% usageData output from enzymeUsage % highCapUsage minimum ratio of enzyme capacity usage to be considered % as high usage (Optional, default 0.9, refering to a % minimum of 90% capacity usage) @@ -64,12 +64,7 @@ % Calculate the protein pool flux from the 'prot_pool_exchange' reaction protPoolExchangeFlux = -ecModel.lb(strcmp(ecModel.rxns,'prot_pool_exchange')); -% Obtain the fluxes -sol = solveLP(ecModel); -if isempty(sol.x) - error('No solution found.'); -end -fluxValues = sol.x; +fluxValues = usageData.fluxes; % Sum fluxes for all 'usage_prot_' reactions, excluding the 'usage_prot_standard' usageProtIndices = startsWith(ecModel.rxns, 'usage_prot_') & ... @@ -81,10 +76,6 @@ % Define the new protein pool as the sum of prot_pool_exchange flux and total usage_prot fluxes protPool = (protPoolExchangeFlux + totalUsageProtFlux)/100; -fprintf('Total Protein Pool Flux: %f\n', protPoolExchangeFlux); -fprintf('total UsageProt Flux: %f\n', totalUsageProtFlux); - - for i=1:numel(topEnzyme) [rxns, kcat, idx, rxnNames, grRules] = getReactionsFromEnzyme(ecModel,topEnzyme{i}); rxnNumber = numel(rxns); @@ -98,5 +89,7 @@ topUsage.rxnNames(end+1:end+rxnNumber,1) = rxnNames; topUsage.grRules(end+1:end+rxnNumber,1) = grRules; end -usageReport.topAbsUsage = struct2table(topUsage); +usageReport.topAbsUsage = struct2table(topUsage); +usageReport.totalProtPool = protPoolExchangeFlux; +usageReport.totalUsageFlux = totalUsageProtFlux; end From ef711db86d6a942f92c5707344c5c762996cd427 Mon Sep 17 00:00:00 2001 From: Eduard Kerkhoven Date: Sun, 28 Apr 2024 17:11:21 +0200 Subject: [PATCH 8/9] delete empty git file --- git | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 git diff --git a/git b/git deleted file mode 100644 index e69de29bb..000000000 From 86b8f3cd5657ef9033f98b4feddfa7043f94d366 Mon Sep 17 00:00:00 2001 From: Eduard Kerkhoven Date: Sun, 28 Apr 2024 17:11:40 +0200 Subject: [PATCH 9/9] Delete version.txt --- version.txt | 1 - 1 file changed, 1 deletion(-) delete mode 100644 version.txt diff --git a/version.txt b/version.txt deleted file mode 100644 index ff365e06b..000000000 --- a/version.txt +++ /dev/null @@ -1 +0,0 @@ -3.1.3