Model 1
p = defn model
J1: S1 -> S2; k1*S1;
end;
p.S1 = 10;
p.S2 = 0;
p.k1 = 0.1;
m = p.sim.eval (0, 60, 100, [<p.time>, <p.S1>]);
graph (m);
Model 2
p = defn model
J1: S1 -> S2; k1*S1;
J2: S2 -> S3; k2*S2;
end;
p.S1 = 10;
p.S2 = 0;
p.k1 = 0.1;
p.k2 = 0.2;
m = p.sim.eval (0, 60, 100, [<p.time>, <p.S1>, <p.S2>, <p.S3>]);
graph (m);
Model 3
p = defn model
J1: S1 -> S2; k11*S1 - k12*S2;
J2: S2 -> S3; k21*S2 - k22*S3;
end;
p.S1 = 10;
p.S2 = 0;
p.k11 = 0.1; p.k12 = 0.08;
p.k21 = 0.2; p.k22 = 0.06;
m = p.sim.eval (0, 60, 100, [<p.time>, <p.S1>, <p.S2>, <p.S3>]);
graph (m);
Model 4
p = defn model
J1: S1 -> S2; k11*S1 - k12*S2;
J2: S2 -> S3; k21*S2 - k22*S3;
end;
p.S1 = 10;
p.S2 = 0;
p.k11 = 0.1; p.k12 = 0.08;
p.k21 = 0.2; p.k22 = 0.06;
m = p.sim.eval (0, 60, 100, [<p.time>, <p.S1>, <p.S2>, <p.S3>, <p.J1>, <p.J2>]);
graph (m);
Model 5
p = defn model
J1: $Xo -> S1; k0*Xo;
J2: S1 -> S2; k1*S1;
J3: S2 -> S3; k2*S2;
J4: S3 -> $X1; k3*S3;
end;
p.Xo = 10;
p.S1 = 0;
p.S2 = 0;
p.S3 = 0;
p.X1 = 0;
p.k0 = 0.05;
p.k1 = 0.1;
p.k2 = 0.2;
p.k3 = 0.34;
m = p.sim.eval (0, 60, 100, [<p.time>, <p.S1>, <p.S2>, <p.S3>, <p.J1>, <p.J2>]);
graph (m);
Model 6
p = defn model
J1: $Xo -> S1; (Vm1/Km1)*(Xo - S1/Keq1)/(1 + Xo/Km1 + S1/Km2);
J2: S1 -> S2; (Vm2/Km3)*(S1 - S2/Keq2)/(1 + S1/Km3 + S2/Km4);
J3: S2 -> S3; (Vm3/Km4)*(S2 - S3/Keq3)/(1 + S2/Km5 + S3/Km6);
J4: S3 -> $X1; (Vm4/Km7)*(S3 - X1/Keq4)/(1 + S3/Km7 + X1/Km8);
end;
p.Xo = 10;
p.S1 = 0;
p.S2 = 0;
p.S3 = 0;
p.X1 = 0;
p.Vm1 = 1.5; p.Vm2 = 2.9; p.Vm3 = 10.5; p.Vm4 = 7.3;
p.Km1 = 1; p.Km2 = 1;
p.Km3 = 0.2; p.Km4 = 3.4;
p.Km5 = 0.9; p.Km6 = 1.2;
p.Km7 = 6.7; p.Km8 = 1.1;
p.Keq1 = 3.2;
p.Keq2 = 2.1;
p.Keq3 = 14.6;
p.Keq4 = 5.3;
m = p.sim.eval (0, 140, 200, [<p.time>, <p.S1>, <p.S2>, <p.S3>, <p.J1>, <p.J2>]);
graph (m);
p.ss.eval;
println p.J1;
Model 7
p = defn model
J1: $Xo -> S1; (Vm1/Km1)*(Xo - S1/Keq1)/(1 + Xo/Km1 + S1/Km2 + pow(S3,J0_h));
J2: S1 -> S2; (Vm2/Km3)*(S1 - S2/Keq2)/(1 + S1/Km3 + S2/Km4);
J3: S2 -> S3; (Vm3/Km4)*(S2 - S3/Keq3)/(1 + S2/Km5 + S3/Km6);
J4: S3 -> $X1; (Vm4/Km7)*(S3 - X1/Keq4)/(1 + S3/Km7 + X1/Km8);
end;
p.Xo = 10;
p.S1 = 0;
p.S2 = 0;
p.S3 = 0;
p.X1 = 0;
p.J0_h = 0; // This controls the strength of the feedback
p.Vm1 = 1.5; p.Vm2 = 2.9; p.Vm3 = 10.5; p.Vm4 = 7.3;
p.Km1 = 1; p.Km2 = 1;
p.Km3 = 0.2; p.Km4 = 3.4;
p.Km5 = 0.9; p.Km6 = 1.2;
p.Km7 = 6.7; p.Km8 = 1.1;
p.Keq1 = 3.2;
p.Keq2 = 2.1;
p.Keq3 = 14.6;
p.Keq4 = 5.3;
m = p.sim.eval (0, 140, 200,
[<p.time>, <p.S1>, <p.S2>, <p.S3>, <p.J1>, <p.J2>]);
graph (m);
p.ss.eval;
println p.cc (<p.J1>, p.Vm1);
println p.cc (<p.J1>, p.Vm2);
println p.cc (<p.J1>, p.Vm3);
println p.cc (<p.J1>, p.Vm4);
Model 8
p = defn feedback J0: $X0 -> S1; J0_VM1*(X0-S1/J0_Keq1)/(1+X0+S1+pow(S4,J0_h)); J1: S1 -> S2; (10*S1-2*S2)/(1+S1+S2); J2: S2 -> S3; (10*S2-2*S3)/(1+S2+S3); J3: S3 -> S4; (10*S3-2*S4)/(1+S3+S4); J4: S4 -> $X1; J4_V4*S4/(J4_KS4+S4); end; p.X0 = 10; p.X1 = 0; p.S1 = 0; p.S2 = 0; p.S3 = 0; p.S4 = 0; p.J0_VM1 = 10; p.J0_Keq1 = 10; p.J0_h = 1; p.J4_V4 = 2.5; p.J4_KS4 = 0.5; m = p.sim.eval (0, 100, 200, [<p.time>, <p.S4>]); graph (m);