(* Generated by JWS Online *) (* This is an experimental feature of JWS Online. Please report any mistakes.*) (* Note that the following notable SBML entities or features are not supported in notebook outputyet: *) (* Events *) (* Constraints *) (* Units and UnitDefinitions *) (* AlgebraicRules *) (* conversionFactors *) variables = { ADP[t], ATP[t], BPG[t], Glc[t], NAD[t], NADH[t], P3G[t], gap[t], pep[t], pyr[t] }; initialValues = { ADP[0] == 0.0, ATP[0] == 10.0, BPG[0] == 0.0, Glc[0] == 10.0, NAD[0] == 0.0, NADH[0] == 0.2, P3G[0] == 3.0, gap[0] == 0.365, pep[0] == 10.0, pyr[0] == 0.15 }; rates = { v1, v2, v4, v5 }; rateEquations = { v1 -> -((VmPGK*(KeqPGK*ADP[t]*BPG[t] - ATP[t]*P3G[t]))/(KmPGKATP*KmPGKP3G*(1 + ADP[t]/KmPGKADP + ATP[t]/KmPGKATP)*(1 + BPG[t]/KmPGKBPG + P3G[t]/KmPGKP3G))), v2 -> kPK*ADP[t]*pep[t], v4 -> -(((VmGAPDHf*gap[t]*NAD[t])/(KmGAPDHGAP*KmGAPDHNAD) - (VmGAPDHr*BPG[t]*NADH[t])/(KmGAPDHBPG*KmGAPDHNADH))/((1 + BPG[t]/KmGAPDHBPG + gap[t]/KmGAPDHGAP)*(1 + NAD[t]/KmGAPDHNAD + NADH[t]/KmGAPDHNADH))), v5 -> kGDH*Glc[t]*NAD[t] }; parameters = { KeqPGK -> 3200.0, KmGAPDHBPG -> 0.0098, KmGAPDHGAP -> 0.21, KmGAPDHNAD -> 0.09, KmGAPDHNADH -> 0.06, KmPGKADP -> 0.2, KmPGKATP -> 0.3, KmPGKBPG -> 0.003, KmPGKP3G -> 0.53, VmGAPDHf -> 0.188086, VmGAPDHr -> 1.04, VmPGK -> 0.038, kGDH -> 10.0, kPK -> 10.0, GA -> 0.0, default -> 1.0 }; assignments = { }; events = { }; speciesAnnotations = { }; reactionAnnotations = { }; units = { {"time" -> "", "metabolite" -> "", "extent" -> ""} }; (* Time evolution *) odes = { ADP'[t] == 1.0*v1 -1.0*v2, ATP'[t] == 1.0*v2 -1.0*v1, BPG'[t] == 1.0*v1 -1.0*v4, Glc'[t] == -1.0*v5, NAD'[t] == 1.0*v4 -1.0*v5, NADH'[t] == 1.0*v5 -1.0*v4, P3G'[t] == -1.0*v1, gap'[t] == 1.0*v4 , pep'[t] == -1.0*v2, pyr'[t] == 1.0*v2 }; timeCourse = NDSolve[Join[odes, initialValues]//.rateEquations//.assignments//.parameters, variables, {t, 0, 100}]; (* Steady-state solution initialized with result of time evolution *) findRootEquations = odes /.D[_[t],t]->0; findRootVariables = Partition[Flatten[{#, #/.timeCourse/.t->100} &/@variables],2]; steadyStateVariables = FindRoot[findRootEquations//.rateEquations//.assignments//.parameters, findRootVariables, MaxIterations->100] fluxes = #//.assignments//.parameters/.steadyStateVariables&/@rateEquations (* Plot the time evolution of the variables *) plotTable=Table[Plot[variables[[i]]/.parameters/.timeCourse,{t,0,100},PlotLegends->variables[[i]],PlotRange->Full],{i,Length[variables]}]