/* * Glycosomes Protect Trypanosomes from Glycolysis * * Model Status * * This CellML model runs in OpenCell (but not in COR due to the * presence of differential algebraic equations - or "circular * equations"). The units have been checked and they are consistent. * The model does not replicate the published results (we have * added 5mM of external glucose at 60 seconds but this does not * cause the ATP concetration to increase. The original CellML * model was based on equations published in the supplementary * material in PNAS but this is no longer available online. We * have tried to contact the authors and the journal but 10 years * on they were unable to locate the missing material. * * Model Structure * * ABSTRACT: Unlike in other organisms, in trypanosomes and other * Kinetoplastida the larger part of glycolysis takes place in * a specialized organelle, called the glycosome. At present it * is impossible to remove the glycosome without changing much * of the rest of the cell. It would seem impossible, therefore, * to assess the metabolic consequences of this compartmentation. * Therefore, we here develop a computer experimentation approach, * which we call computational cell biology. A validated molecular * kinetic computer replica was built of glycolysis in the parasite * Trypanosoma brucei. Removing the glycosome membrane in that * replica had little effect on the steady-state flux, which argues * against the prevalent speculation that glycosomes serve to increase * flux by concentrating the enzymes. Removal of the membrane did * cause (i) the sugar phosphates to rise to unphysiologically * high levels, which must have pathological effects, and (ii) * a failure to recover from glucose deprivation. We explain these * effects on the basis of the biochemical organization of the * glycosome. We conclude (i) that the glycosome protects trypanosomes * from the negative side effects of the "turbo" structure of glycolysis * and (ii) that computer experimentation based on solid molecular * data is a powerful tool to address questions that are not, or * not yet, accessible to experimentation. * * The original paper is cited below: * * Compartmentation protects trypanosomes from the dangerous design * of glycolysis, Barbara M. Bakker, Femke I.C. Mensonides, Bas * Teusink, Pim van Hoek, Paul A. M. Michels, and Hans V. Westerhoff, * 2000, Proceedings of the National Academy of Sciences, 97, 2087-2092. * PubMed ID: 10681445 * * A reaction diagram of glycolysis * * [[Image file: bakker_2000.png]] * * A scheme of glycolysis in the bloodstream form of the parasite * Trypanosoma brucei. In the model described here, the glycosome * is absent. */ import nsrunit; unit conversion on; unit minute=60 second^1; // unit millimolar predefined unit flux=.01666667 meter^(-3)*second^(-1)*mole^1; math main { realDomain time second; time.min=0; extern time.max; extern time.delta; real GlcI(time) millimolar; when(time=time.min) GlcI=0.0340009; real vHK(time) flux; real vGlcTr(time) flux; real hexose_P(time) millimolar; when(time=time.min) hexose_P=2.583763; real vPFK(time) flux; real Fru16BP(time) millimolar; when(time=time.min) Fru16BP=16.5371; real vALD(time) flux; real triose_P(time) millimolar; when(time=time.min) triose_P=3.9391429; real vGAPDH(time) flux; real vGDH(time) flux; real vGPO(time) flux; real BPGA13(time) millimolar; when(time=time.min) BPGA13=0.0326745; real vPGK(time) flux; real N(time) millimolar; when(time=time.min) N=1.59603; real vPK(time) flux; real Pyr(time) millimolar; when(time=time.min) Pyr=4.77413; real vPyrTr(time) flux; real NADH(time) millimolar; when(time=time.min) NADH=0.0448639; real NAD(time) millimolar; when(time=time.min) NAD=0.0448639; real Gly3P(time) millimolar; when(time=time.min) Gly3P=0.0; real vGlyK(time) flux; real Gly(time) millimolar; when(time=time.min) Gly=0.0; real P(time) millimolar; when(time=time.min) P=7.63936; real vATPase(time) flux; real ATP(time) millimolar; real ATP.sumA millimolar; ATP.sumA=3.9; real Keq_AK dimensionless; Keq_AK=0.442; real ADP(time) millimolar; real DHAP(time) millimolar; real Fru6P(time) millimolar; real GAP(time) millimolar; real Glc6P(time) millimolar; when(time=time.min) Glc6P=2.07199; real sumc4 millimolar; sumc4=45.0; real sumc5 millimolar; sumc5=5.0; real GlcE(time) millimolar; real vPGI(time) flux; real PGA3(time) millimolar; real PEP(time) millimolar; real Keq_ENO dimensionless; Keq_ENO=6.7; real Keq_PGM dimensionless; Keq_PGM=0.187; real K_Glc millimolar; K_Glc=2.0; real alpha dimensionless; alpha=0.75; real vGlcTr_max flux; vGlcTr_max=106.2; real K_GlcI millimolar; K_GlcI=0.1; real vHK.K_Glc6P millimolar; vHK.K_Glc6P=12.0; real vHK.K_ATP millimolar; vHK.K_ATP=0.116; real vHK.K_ADP millimolar; vHK.K_ADP=0.126; real vHK_max flux; vHK_max=625.0; real vPGI.K_Glc6P millimolar; vPGI.K_Glc6P=0.4; real K_Fru6P millimolar; K_Fru6P=0.12; real vPGI_max flux; vPGI_max=848.0; real Ki_1 millimolar; Ki_1=15.8; real Ki_2 millimolar; Ki_2=10.7; real KM_Fru6P millimolar; KM_Fru6P=0.82; real KM_ATP millimolar; KM_ATP=0.026; real vPFK_max flux; vPFK_max=780.0; real vALD.sumA millimolar; vALD.sumA=6.0; real KM_GAP millimolar; KM_GAP=0.067; real Ki_GAP millimolar; Ki_GAP=0.098; real KM_DHAP millimolar; KM_DHAP=0.015; real vALD_max_forward flux; vALD_max_forward=184.5; real vALD_max_reverse flux; vALD_max_reverse=219.555; real vTPI(time) flux; real vTPI.K_DHAP millimolar; vTPI.K_DHAP=1.2; real vTPI.K_GAP millimolar; vTPI.K_GAP=0.25; real vTPI_max flux; vTPI_max=842.0; real vGAPDH.K_NAD millimolar; vGAPDH.K_NAD=0.45; real vGAPDH.K_GAP millimolar; vGAPDH.K_GAP=0.15; real vGAPDH.K_BPGA13 millimolar; vGAPDH.K_BPGA13=0.1; real vGAPDH.K_NADH millimolar; vGAPDH.K_NADH=0.02; real vGAPDH_max_forward flux; vGAPDH_max_forward=1470.0; real vGAPDH_max_reverse flux; vGAPDH_max_reverse=984.9; real vGAPDH_max dimensionless; vGAPDH_max=1.0; real vGDH.K_NADH millimolar; vGDH.K_NADH=0.01; real vGDH.K_Gly3P millimolar; vGDH.K_Gly3P=2.0; real vGDH.K_DHAP millimolar; vGDH.K_DHAP=0.1; real vGDH.K_NAD millimolar; vGDH.K_NAD=0.4; real vGDH_max_forward flux; vGDH_max_forward=533.0; real vGDH_max_reverse flux; vGDH_max_reverse=149.24; real vGDH_max dimensionless; vGDH_max=1.0; real vGPO.K_Gly3P millimolar; vGPO.K_Gly3P=1.7; real vGPO_max flux; vGPO_max=368.0; real K_pyruvate millimolar; K_pyruvate=1.96; real vPyrTr_max flux; vPyrTr_max=200.0; real vPGK.K_ADP millimolar; vPGK.K_ADP=0.1; real vPGK.K_BPGA13 millimolar; vPGK.K_BPGA13=0.05; real K_PGA3 millimolar; K_PGA3=1.62; real vPGK.K_ATP millimolar; vPGK.K_ATP=0.29; real vPGK_max_forward flux; vPGK_max_forward=640.0; real vPGK_max_reverse flux; vPGK_max_reverse=18.56; real vPGK_max dimensionless; vPGK_max=1.0; real KM_ADP millimolar; KM_ADP=0.114; real n dimensionless; n=2.5; real vPK_max flux; vPK_max=2600; real k flux; k=50; real vGlyK.K_ADP millimolar; vGlyK.K_ADP=0.12; real vGlyK.K_Gly3P millimolar; vGlyK.K_Gly3P=5.1; real K_Gly millimolar; K_Gly=0.12; real vGlyK.K_ATP millimolar; vGlyK.K_ATP=0.19; real vGlyK_max_forward flux; vGlyK_max_forward=220.0; real vGlyK_max_reverse flux; vGlyK_max_reverse=334000.0; real vGlyK_max dimensionless; vGlyK_max=1.0; // // GlcI:time=(vGlcTr-vHK); // hexose_P:time=(vHK-vPFK); // Fru16BP:time=(vPFK-vALD); // triose_P:time=(2*vALD+vGPO-(vGAPDH+vGDH)); // BPGA13:time=(vGAPDH-vPGK); // N:time=(vPGK-vPK); // Pyr:time=(vPK-vPyrTr); // NADH:time=(vGAPDH-vGDH); // NAD:time=(vGDH-vGAPDH); // Gly3P:time=(vGDH-(vGlyK+vGPO)); // Gly:time=vGlyK; // P:time=(vPGK+vGlyK+vPK-(vHK+vPFK+vATPase)); // ATP=((P*(1-4*Keq_AK)-ATP.sumA+((ATP.sumA-(1-4*Keq_AK)*P)^2+4*(1-4*Keq_AK)*((-1)*Keq_AK*P^2))^.5)/(2*(1-4*Keq_AK))); // ADP=(P-2*ATP); // DHAP=(sumc5*DHAP/(sumc4+sumc5-(BPGA13+2*Fru16BP+Fru6P+GAP+Glc6P+P))); // GAP=(triose_P-DHAP); // GlcE=(if ((time>=(60 second)) and (time<(61 second))) (5 millimolar) else (.05 millimolar)); // Glc6P:time=(vHK-vPGI); // Fru6P=(hexose_P-Glc6P); // PGA3=(N-PEP); // PEP=(Keq_ENO*Keq_PGM*PGA3); // vGlcTr=(vGlcTr_max*((GlcE-GlcI)/(K_Glc+GlcE+GlcI+alpha*GlcE*(GlcI/K_Glc)))); // vHK=(vHK_max*GlcI*ATP/(vHK.K_ATP*K_GlcI*(1+Glc6P/vHK.K_Glc6P+GlcI/K_GlcI)*(1+ATP/vHK.K_ATP+ADP/vHK.K_ADP))); // vPGI=(vPGI_max*(Glc6P/vPGI.K_Glc6P-Fru6P/K_Fru6P)/(1+Glc6P/vPGI.K_Glc6P+Fru6P/K_Fru6P)); // vPFK=(Ki_1*vPFK_max*Fru6P*ATP/(KM_ATP*KM_Fru6P*(Fru16BP+Ki_1)*(1+Fru16BP/Ki_2+Fru6P/KM_Fru6P)*(1+ATP/KM_ATP))); // vALD=((vALD_max_forward*Fru16BP/((.009 millimolar)*(1+ATP/(.68 millimolar)+ADP/(1.51 millimolar)+(vALD.sumA-(ATP+ADP))/(3.65 millimolar)))-vALD_max_reverse*GAP*DHAP/(KM_DHAP*KM_GAP))/(1+GAP/KM_GAP+DHAP/KM_DHAP+GAP*DHAP/(KM_DHAP*KM_GAP)+Fru16BP/((.009 millimolar)*(1+ATP/(.68 millimolar)+ADP/(1.51 millimolar)+(vALD.sumA-(ATP+ADP))/(3.65 millimolar)))+Fru16BP*GAP/(Ki_GAP*(.009 millimolar)*(1+ATP/(.68 millimolar)+ADP/(1.51 millimolar)+(vALD.sumA-(ATP+ADP))/(3.65 millimolar))))); // vTPI=(vTPI_max*(DHAP/vTPI.K_DHAP-5.7*GAP/vTPI.K_GAP)/(1+GAP/vTPI.K_GAP+DHAP/vTPI.K_DHAP)); // vGAPDH=(vGAPDH_max*(vGAPDH_max_forward*(GAP*(NAD/vGAPDH.K_GAP/vGAPDH.K_NAD)-vGAPDH_max_reverse/vGAPDH_max_forward*(BPGA13*NADH/vGAPDH.K_BPGA13/vGAPDH.K_NADH))/((1+GAP/vGAPDH.K_GAP+BPGA13/vGAPDH.K_BPGA13)*(1+NAD/vGAPDH.K_NAD+NADH/vGAPDH.K_NADH)))); // vGDH=(vGDH_max*vGDH_max_forward*(NADH*DHAP/(vGDH.K_NADH*vGDH.K_DHAP)-vGDH_max_reverse*NAD*Gly3P/(vGDH.K_Gly3P*vGDH.K_NAD*vGDH_max_forward))/((1+NAD/vGDH.K_NAD+NADH/vGDH.K_NADH)*(1+DHAP/vGDH.K_DHAP+Gly3P/vGDH.K_Gly3P))); // vGPO=(vGPO_max*Gly3P/(Gly3P+vGPO.K_Gly3P)); // vPyrTr=(vPyrTr_max*Pyr/K_pyruvate/(1+Pyr/K_pyruvate)); // vPGK=(vPGK_max*vPGK_max_forward*((-1)*vPGK_max_reverse*PGA3*ATP/(vPGK.K_ATP*K_PGA3*vPGK_max_forward)+BPGA13*ADP/(vPGK.K_BPGA13*vPGK.K_ADP))/((1+BPGA13/vPGK.K_BPGA13+PGA3/K_PGA3)*(1+ADP/vPGK.K_ADP+ATP/vPGK.K_ATP))); // vPK=(vPK_max*(PEP/((.34 millimolar)*(1+ATP/(.57 millimolar)+ADP/(.64 millimolar))))^n*ADP/KM_ADP/((1+(PEP/((.34 millimolar)*(1+ATP/(.57 millimolar)+ADP/(.64 millimolar))))^n)*(1+ADP/KM_ADP))); // vATPase=(k*ATP/ADP); // vGlyK=(vGlyK_max*(vGlyK_max_forward*ADP*Gly3P/(vGlyK.K_ADP*vGlyK.K_Gly3P)-vGlyK_max_reverse*ATP*Gly/(vGlyK.K_ATP*K_Gly))/((1+Gly3P/vGlyK.K_Gly3P+Gly/K_Gly)*(1+ADP/vGlyK.K_ADP+ATP/vGlyK.K_ATP))); }