Examples

To complement the existing documentation some toy examples can be found below. These examples pertain to versions 0.1.x, as the existence of version 0.2.0 is for legacy reasons only.

The following examples (and some others) can be downloaded as a zip file.

Genetic Network

r3 = 0.0039;
r2 = 0.043;
r4 = 0.0007;
r5i = 0.5;
r5 = 0.025;

kineticLawOf a1 : 0.00616/(1+P2/356);
kineticLawOf a2 : fMA(r2);
kineticLawOf a3 : fMA(r3);
kineticLawOf a4 : fMA(r4);
kineticLawOf a5 : fMA(r5);
kineticLawOf a5i : fMA(r5i);

M = a1 >> M + a2 (+) M + a3 << M;
P = a2 >> P + a4 << P + (a5,2) << P + (a5i,2) >> P;
P2 = a5 >> P2 + a5i << P2;
D = a1 (+) D;

D[1] <*> M[0] <*> P[0] <*> P2[0]

Goldbeter model (1991, see [1])

omega = 6022; // ~6.0221415E23 * 1E-14 * *1E-6
vi = 0.025*omega;
kd = 0.01;
kc = 0.5*omega;
v1 = 12*omega;
v2 = 1.5;
v3 = 12;
v4 = 2;
k1 = 0.02*omega;
k2 = 0.02*omega;
k3 = 0.02*omega;
k4 = 0.02*omega;
vd2 = 0.0625;
kd2 = 0.02*omega;

kineticLawOf a1 : fMA(vi);
kineticLawOf a2 : fMA(kd);
kineticLawOf a3 : ((v1*C)/(kc + C))*(inactive_M/(k1 + inactive_M));
kineticLawOf a4 : fMM(v2,k2);
kineticLawOf a5 : fMM(v3,k3);
kineticLawOf a6 : fMM(v4,k4);
kineticLawOf a7 : (C*vd2*active_X)/(C + kd2);

C = a1 >> C + a2 << C + a3 (+) C + a7 << C;
inactive_M = a3 << inactive_M + a4 >> inactive_M;
active_M = a3 >> active_M + a4 << active_M + a5 (+) active_M;
inactive_X = a5 << inactive_X + a6 >> inactive_X;
active_X = a5 >> active_X + a6 << active_X + a7 (+) active_X;
enzyme = a4 (+) enzyme + a6 (+) enzyme;

C[60] <*> active_M[60] <*> inactive_M[5962] <*> active_X[60]
      <*> inactive_X[5962] <*> enzyme[6022]