looped, unrealistically high flux

190 views
Skip to first unread message

Daniel Farkas

unread,
Mar 29, 2019, 12:44:25 PM3/29/19
to COBRA Toolbox
Hi,

I am a beginner, using COBRA Toolbox for an undergraduate dissertation.
The fluxes through these two reactions are unrealistically high compared to other fluxes within the distribution (I am using a minimal medium with glycerol as a carbon source). It seems the reactions are looped; and there is a net flux of -0.1 towards succoa. However, the ATP/ADP balance is affected by this. Does anyone know the reason behind this anomaly? I am using iLT1021 for Streptomyces clavuligerus.

#succinyl-CoA synthetase beta subunit [EC:6.2.1.5]
Flux: -992.2 
adp_c + pi_c + succoa_c = atp_c + coa_c + succ_c

and

#acyl-CoA thioesterase II [EC:3.1.2.-]
Flux: 992.1
h2o[c] + succoa[c]  -> h[c] + succ[c] + coa[c] 

Thank you in advance,
Dan


Siu Hung Joshua Chan

unread,
Mar 30, 2019, 5:26:37 PM3/30/19
to COBRA Toolbox
Hi Daniel,

It appears that the model you are working with has internal ATP generating cycles, which is thermodynamically infeasibie and should be eliminated.
You may look at this tutorial to see some sanity checks for a genome-scale metabolic model: https://opencobra.github.io/cobratoolbox/latest/tutorials/tutorialModelSanityChecks.html

I also attached a sample code I have for fixing the cycles:

% To check and fix ATP cycles

% read the model
model = readCbModel('filename');

% make a copy of the model
model2 = model;

% find all exchange reactions
rxnEx = findExcRxns(model2);
rxnExId = model2.rxns(rxnEx);

% shut down all uptake reactions (LB = 0)
model2 = changeRxnBounds(model2, rxnExId, 0, 'l');

% make sure no positive lower bound or negative upper bound
model2.ub(model2.ub < 0) = 0;

% ATP maintenance reaction (ATP + H2O -> ADP + PI + H, usually called ATPM in BiGG format)
rxnATPMid = 'ATPM';

% Or may need to  find the ATPM reaction 
metATPM = findMetIDs(model,{'atp[c]','adp[c]','pi[c]','h[c]','h2o[c]'});
metATPMlogic = false(numel(model.mets),1);
metATPMlogic(metATPM) = true;
% reaction that involves only these metabolites is the ATPM
rxnATPM = find(all(model.S(metATPMlogic, :), 1) & ~any(model.S(~metATPMlogic, :), 1));
rxnATPMid = model.rxns(rxnATPM);

% set a lower bound for ATPM
model2 = changeRxnBounds(model, rxnATPMid, 1, 'l');

% no objective function. Just want to check if the model is feasible
model2.c(:) = 0;

%%%%%%%% With this setting, a sound model should be infeasible because when there is no uptake, the model should have no way to generate ATP %%%%%%%% to satisfy the ATP maintenance requirement.
%%%%%%%% Add the fixes here and re-solve the model until the model is infeasible (sol.stat == 0)
%%%%%%%% E.g., make some reactions irreversible, fix proton symport/antiport, correct wrong stoichiometries

% solve the model ('one' to minimize the sum of absolute fluxes for easier interpretation)
sol = optimizeCbModel(model2, 'max', 'one');

if sol.stat == 1
    % feasible, meaning that there are internal ATP cycles making ATP to
    % satisfy the ATPM requirement. Check the cycles
    surfNet(model2, model2.rxns(sol.x ~= 0), 0, sol.x, 1, 0)

    % Find out what does not make sense in this solution. Then add the fixes to above and re-solve
else
    fprintf('No ATP cycles\n')
end

Best,
Joshua

Daniel Farkas

unread,
Apr 9, 2019, 11:14:25 AM4/9/19
to COBRA Toolbox
Thanks for your help Joshua!!!

Γιάννης Β.

unread,
Jan 8, 2022, 7:15:27 PM1/8/22
to COBRA Toolbox
Hello!
I have the same problem and I am trying to solve it. 
Have you come to any conclusions?
Was it the loop's fault?  
If I try loopless FVA, the unreastically high fluxes remain.

Ronan M.T. Fleming

unread,
Jan 8, 2022, 7:57:23 PM1/8/22
to COBRA Toolbox

--

---
You received this message because you are subscribed to the Google Groups "COBRA Toolbox" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cobra-toolbo...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/cobra-toolbox/420b6f0b-1bb0-42f7-bea9-322739f8289bn%40googlegroups.com.


--
--
Mr. Ronan MT Fleming B.V.M.S. Dip. Math. Ph.D.
----------------------------------------------------------------------------
Associate Professor,
School of Medicine,
National University of Ireland, Galway.
&
Assistant Professor,
Division of Systems Biomedicine and Pharmacology,
Leiden Academic Centre for Drug Research,
Faculty of Science,
Leiden University.
https://www.universiteitleiden.nl/en/staffmembers/ronan-fleming
&
H2020 Project Coordinator,
Systems Medicine of Mitochondrial Parkinson’s Disease,
http://sysmedpd.eu
----------------------------------------------------------------------------
Peer-reviewed publications: https://goo.gl/FZPG23
Mobile:  +353 852 109 806
Skype: ronan.fleming
----------------------------------------------------------------------------
(This message is confidential and may contain privileged information. It is intended for the named recipient only. If you receive it in error please notify me and permanently delete the original message and any copies.)

Γιάννης Β.

unread,
Jan 9, 2022, 10:38:03 AM1/9/22
to cobra-...@googlegroups.com
I tried this also but there are still flux values higher than the carbon uptake flux

Reply all
Reply to author
Forward
0 new messages