(* 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 = { Callose[t], E[t], E\[LetterSpace]int[t], PAMP[t], PRR[t], PRR\[LetterSpace]0[t], Path[t], Path\[LetterSpace]bulk[t], R[t], R\[LetterSpace]0[t] }; initialValues = { Callose[0] == 0.0, E[0] == 0.0, E\[LetterSpace]int[0] == 0.0, PAMP[0] == 0.0, PRR[0] == 0.0, PRR\[LetterSpace]0[0] == 1.0, Path[0] == 0.0, Path\[LetterSpace]bulk[0] == 0.0, R[0] == 1.0, R\[LetterSpace]0[0] == 0.0 }; rates = { Callose\[LetterSpace]production, Callose\[LetterSpace]removal, Callose\[LetterSpace]suppression, ETI, E\[LetterSpace]int\[LetterSpace]removal, Effector\[LetterSpace]production, Effector\[LetterSpace]recognition, Effector\[LetterSpace]removal, Effector\[LetterSpace]translocation, PAMP\[LetterSpace]production, PAMP\[LetterSpace]recognition, PAMP\[LetterSpace]removal, PTI, Pathogen\[LetterSpace]arrival, Pathogen\[LetterSpace]removal }; rateEquations = { Callose\[LetterSpace]production -> Callose\[LetterSpace]production\[LetterSpace]k1*PRR[t], Callose\[LetterSpace]removal -> Callose\[LetterSpace]removal\[LetterSpace]k1*Cell*Callose[t], Callose\[LetterSpace]suppression -> Callose\[LetterSpace]suppression\[LetterSpace]k1*Cell*Callose[t]*E\[LetterSpace]int[t], ETI -> ETI\[LetterSpace]k1*Path[t]*R\[LetterSpace]0[t], E\[LetterSpace]int\[LetterSpace]removal -> Cell*E\[LetterSpace]int\[LetterSpace]removal\[LetterSpace]k1*E\[LetterSpace]int[t], Effector\[LetterSpace]production -> Apoplast*Effector\[LetterSpace]production\[LetterSpace]k1*Path[t], Effector\[LetterSpace]recognition -> Cell*(Effector\[LetterSpace]recognition\[LetterSpace]k1*E\[LetterSpace]int[t]*R[t] - Effector\[LetterSpace]recognition\[LetterSpace]k2*R\[LetterSpace]0[t]), Effector\[LetterSpace]removal -> Apoplast*Effector\[LetterSpace]removal\[LetterSpace]k1*E[t], Effector\[LetterSpace]translocation -> Competitive\[LetterSpace]inhibition\[LetterSpace]\[LetterSpace]irr[E[t], Callose[t], Effector\[LetterSpace]translocation\[LetterSpace]Km, Effector\[LetterSpace]translocation\[LetterSpace]V, Effector\[LetterSpace]translocation\[LetterSpace]Ki], PAMP\[LetterSpace]production -> PAMP\[LetterSpace]production\[LetterSpace]k1*Path[t], PAMP\[LetterSpace]recognition -> -(PAMP\[LetterSpace]recognition\[LetterSpace]k2*PRR[t]) + PAMP\[LetterSpace]recognition\[LetterSpace]k1*PAMP[t]*PRR\[LetterSpace]0[t], PAMP\[LetterSpace]removal -> Cell*PAMP\[LetterSpace]removal\[LetterSpace]k1*PAMP[t], PTI -> PTI\[LetterSpace]k1*Callose[t]*Path[t], Pathogen\[LetterSpace]arrival -> Apoplast*Pathogen\[LetterSpace]arrival\[LetterSpace]k1*Path\[LetterSpace]bulk[t], Pathogen\[LetterSpace]removal -> Apoplast*Pathogen\[LetterSpace]removal\[LetterSpace]k1*Path[t] }; parameters = { PAMP\[LetterSpace]recognition\[LetterSpace]k1 -> 0.1, PAMP\[LetterSpace]recognition\[LetterSpace]k2 -> 0.1, Effector\[LetterSpace]recognition\[LetterSpace]k1 -> 0.1, Effector\[LetterSpace]recognition\[LetterSpace]k2 -> 0.1, Effector\[LetterSpace]removal\[LetterSpace]k1 -> 0.1, PAMP\[LetterSpace]removal\[LetterSpace]k1 -> 0.1, Pathogen\[LetterSpace]arrival\[LetterSpace]k1 -> 0.1, Pathogen\[LetterSpace]removal\[LetterSpace]k1 -> 0.1, PAMP\[LetterSpace]production\[LetterSpace]k1 -> 0.1, Effector\[LetterSpace]production\[LetterSpace]k1 -> 0.1, E\[LetterSpace]int\[LetterSpace]removal\[LetterSpace]k1 -> 0.1, ETI\[LetterSpace]k1 -> 0.1, Effector\[LetterSpace]translocation\[LetterSpace]Km -> 0.1, Effector\[LetterSpace]translocation\[LetterSpace]V -> 0.1, Effector\[LetterSpace]translocation\[LetterSpace]Ki -> 0.1, Callose\[LetterSpace]production\[LetterSpace]k1 -> 0.1, Callose\[LetterSpace]removal\[LetterSpace]k1 -> 0.1, PTI\[LetterSpace]k1 -> 0.1, Callose\[LetterSpace]suppression\[LetterSpace]k1 -> 0.1, Apoplast -> 1.0, Cell -> 1.0 }; assignments = { Competitive\[LetterSpace]inhibition\[LetterSpace]\[LetterSpace]irr[substrate_,Inhibitor_,Km_,V_,Ki_] -> (substrate*V)/(Km + (Inhibitor*Km)/Ki + substrate) }; events = { }; speciesAnnotations = { }; reactionAnnotations = { }; units = { {"time" -> "", "metabolite" -> "", "extent" -> ""} }; (* Time evolution *) odes = { Callose'[t] == 1.0*Callose\[LetterSpace]production +1.0*PTI -1.0*Callose\[LetterSpace]removal -1.0*PTI -1.0*Callose\[LetterSpace]suppression, E'[t] == 1.0*Effector\[LetterSpace]production -1.0*Effector\[LetterSpace]removal -1.0*Effector\[LetterSpace]translocation, E\[LetterSpace]int'[t] == 1.0*Effector\[LetterSpace]translocation +1.0*Callose\[LetterSpace]suppression -1.0*Effector\[LetterSpace]recognition -1.0*E\[LetterSpace]int\[LetterSpace]removal -1.0*Callose\[LetterSpace]suppression, PAMP'[t] == 1.0*PAMP\[LetterSpace]production -1.0*PAMP\[LetterSpace]recognition -1.0*PAMP\[LetterSpace]removal, PRR'[t] == 1.0*PAMP\[LetterSpace]recognition +1.0*Callose\[LetterSpace]production -1.0*Callose\[LetterSpace]production, PRR\[LetterSpace]0'[t] == -1.0*PAMP\[LetterSpace]recognition, Path'[t] == 1.0*Pathogen\[LetterSpace]arrival +1.0*PAMP\[LetterSpace]production +1.0*Effector\[LetterSpace]production -1.0*Pathogen\[LetterSpace]removal -1.0*PAMP\[LetterSpace]production -1.0*Effector\[LetterSpace]production -1.0*ETI -1.0*PTI, Path\[LetterSpace]bulk'[t] == 1.0*Pathogen\[LetterSpace]arrival -1.0*Pathogen\[LetterSpace]arrival, R'[t] == -1.0*Effector\[LetterSpace]recognition, R\[LetterSpace]0'[t] == 1.0*Effector\[LetterSpace]recognition +1.0*ETI -1.0*ETI }; 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]}]