(* 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 = { e[t], mR[t], x1[t], x2[t], x3[t] }; initialValues = { e[0] == 1.0, mR[0] == 1.0, x1[0] == 1.0, x2[0] == 1.0, x3[0] == 1.0 }; rates = { v\[LetterSpace]1, v\[LetterSpace]2, v\[LetterSpace]3, v\[LetterSpace]4, v\[LetterSpace]5, v\[LetterSpace]6, v\[LetterSpace]7, v\[LetterSpace]8 }; rateEquations = { v\[LetterSpace]1 -> (k1*S*e[t]*(1 - x1[t]/(Keq1*S))*(((1 + S/K1s + x1[t]/K1x1)/(1 + (cs*S)/K1s + (cp*x1[t])/K1x1))^n + (cs*L*(1 + S/K1s + x1[t]/K1x1)*(1 + x3[t]/K1x3)^n)/(1 + (cs*S)/K1s + (cp*x1[t])/K1x1)))/(K1s*(1 + S/K1s + x1[t]/K1x1)*(((1 + S/K1s + x1[t]/K1x1)/(1 + (cs*S)/K1s + (cp*x1[t])/K1x1))^n + L*(1 + x3[t]/K1x3)^n)), v\[LetterSpace]2 -> (k2*e[t]*x1[t]*(1 - x2[t]/(Keq2*x1[t])))/(K2x1*(1 + x1[t]/K2x1 + x2[t]/K2x2)), v\[LetterSpace]3 -> (k3*e[t]*x2[t]*(1 - x3[t]/(Keq3*x2[t])))/(K3x2*(1 + x2[t]/K3x2 + x3[t]/K3x3)), v\[LetterSpace]4 -> (V4*(1 - P/(Keq4*x3[t]))*x3[t])/(K4x3*(1 + P/K4P + x3[t]/K4x3)), v\[LetterSpace]5 -> (1 + (x3[t]/Ktrx3)^ntr)^(-1), v\[LetterSpace]6 -> ktrscdeg*mR[t], v\[LetterSpace]7 -> ktrnlsyn*mR[t], v\[LetterSpace]8 -> ktrnldeg*e[t] }; parameters = { K1s -> 0.05, K1x1 -> 1000.0, K1x3 -> 1.0, K2x1 -> 1.0, K2x2 -> 1.0, K3x2 -> 1.0, K3x3 -> 10.0, K4P -> 1.0, K4x3 -> 0.4, Keq1 -> 100.0, Keq2 -> 10.0, Keq3 -> 1.0, Keq4 -> 10.0, Ktrx3 -> 0.5, L -> 0.8, V4 -> 100.0, cp -> 0.0001, cs -> 0.0001, k1 -> 100.0, k2 -> 50.0, k3 -> 75.0, ktrnldeg -> 0.5, ktrnlsyn -> 1.0, ktrscdeg -> 0.5, n -> 3.0, ntr -> 2.0, P -> 1.0, S -> 1.0, esink -> 1.0, esource -> 1.0, mRsink -> 1.0, mRsource -> 1.0, default\[LetterSpace]compartment -> 1.0 }; assignments = { }; events = { }; speciesAnnotations = { }; reactionAnnotations = { }; units = { {"time" -> "", "metabolite" -> "", "extent" -> ""} }; (* Time evolution *) odes = { e'[t] == 1.0*v\[LetterSpace]7 -1.0*v\[LetterSpace]8, mR'[t] == 1.0*v\[LetterSpace]5 -1.0*v\[LetterSpace]6, x1'[t] == 1.0*v\[LetterSpace]1 -1.0*v\[LetterSpace]2, x2'[t] == 1.0*v\[LetterSpace]2 -1.0*v\[LetterSpace]3, x3'[t] == 1.0*v\[LetterSpace]3 -1.0*v\[LetterSpace]4 }; 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]}]