(* 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 = { C1[t], C2[t], X2[t], M2[t], X1[t], M1[t] }; initialValues = { X2[0] == 0.0, M2[0] == 0.0, X1[0] == 0.0, M1[0] == 1.0, C1[0] == 2.0, C2[0] == 0.0 }; rates = { R1, R10, R2, R3, R8, R9 }; rateEquations = { R1 -> (compartment*Kim1*vi1)/(Kim1 + M2[t]), R10 -> compartment*kd2*C2[t], R2 -> (compartment*vd1*C1[t]*X1[t])/(K\[LetterSpace]d1 + C1[t]), R3 -> compartment*kd1*C1[t], R8 -> (compartment*Kim2*vi2)/(Kim2 + M1[t]), R9 -> (compartment*vd2*C2[t]*X2[t])/(K\[LetterSpace]d2 + C2[t]) }; parameters = { H1 -> 0.01, H2 -> 0.01, H3 -> 0.01, H4 -> 0.01, K1 -> 0.01, K2 -> 0.01, K3 -> 0.01, K4 -> 0.01, K\[LetterSpace]d1 -> 0.02, K\[LetterSpace]d2 -> 0.02, Kc1 -> 0.5, Kc2 -> 0.5, Kim1 -> 0.03, Kim2 -> 0.03, U2 -> 0.15, U4 -> 0.05, U\[LetterSpace]M1 -> 0.3, U\[LetterSpace]M3 -> 0.1, V2 -> 0.15, V4 -> 0.05, V\[LetterSpace]M1 -> 0.3, V\[LetterSpace]M3 -> 0.1, kd1 -> 0.001, kd2 -> 0.001, vd1 -> 0.025, vd2 -> 0.025, vi1 -> 0.05, vi2 -> 0.05, compartment -> 1.0 }; assignments = { U3 -> U\[LetterSpace]M3*M2[t], U1 -> (U\[LetterSpace]M1*C2[t])/(Kc2 + C2[t]), V3 -> V\[LetterSpace]M3*M1[t], V1 -> (V\[LetterSpace]M1*C1[t])/(Kc1 + C1[t]) }; events = { }; speciesAnnotations = { }; reactionAnnotations = { }; units = { {"time" -> "", "metabolite" -> "micromole/", "extent" -> "micromole/"} }; (* Time evolution *) odes = { C1'[t] == 1.0*R1 -1.0*R2 -1.0*R3, C2'[t] == 1.0*R8 -1.0*R9 -1.0*R10, X2'[t] == (U3*(1 - X2[t]))/(1 + H3 - X2[t]) - (U4*X2[t])/(H4 + X2[t]), M2'[t] == (U1*(1 - M2[t]))/(1 + H1 - M2[t]) - (U2*M2[t])/(H2 + M2[t]), X1'[t] == (V3*(1 - X1[t]))/(1 + K3 - X1[t]) - (V4*X1[t])/(K4 + X1[t]), M1'[t] == (V1*(1 - M1[t]))/(1 + K1 - M1[t]) - (V2*M1[t])/(K2 + M1[t]) }; 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]}]