Annihilation of calcium oscillations (optimica)

From Mintoc

Jump to: navigation, search

This page contains the model formulation of the MIOCP Annihilation of calcium oscillations in optimica format.

optimica

The model in optimica code.

// Resetting the phase in a calcium signalling system
// (c) Sebastian Sager, 2005-2009
// More info on http://mintoc.de/index.php/Annihilation_of_calcium_oscillations
 
package calcium_pack
 
  optimization calcium_opt (objective = cost(finalTime),
                         startTime = 0,
                         finalTime = 22)
 
    // Parameters
    parameter Real k1 = 0.09;             // Parameter k1
    parameter Real k2 = 2.30066;          // Parameter k2
    parameter Real k3 = 0.64;             // Parameter k3
    parameter Real K4 = 0.19;             // Parameter K4
    parameter Real k5 = 4.88;             // Parameter k5
    parameter Real K6 = 1.18;             // Parameter K6
    parameter Real k7 = 2.08;             // Parameter k7
    parameter Real k8 = 32.24;            // Parameter k8
    parameter Real K9 = 29.09;            // Parameter K9
    parameter Real k10 = 5.0;             // Parameter k10
    parameter Real K11 = 2.67;            // Parameter K11
    parameter Real k12 = 0.7;             // Parameter k12
    parameter Real k13 = 13.58;           // Parameter k13
    parameter Real k14 = 153.0;           // Parameter k14
    parameter Real K15 = 0.16;            // Parameter K15
    parameter Real k16 = 4.85;            // Parameter k16
    parameter Real K17 = 0.05;            // Parameter K17
    parameter Real p17 = 1.0;             // Parameter p17
    parameter Real p18 = 1.0;             // Parameter p18
    parameter Real umax = 1.3;     
 
    parameter Real p1 = 100;              // Parameter p1
    parameter Real x0tilde = 6.78677;     // Parameter x0tilde 
    parameter Real x1tilde = 22.65836;    // Parameter
    parameter Real x2tilde = 0.384306;    // Parameter x2tilde 
    parameter Real x3tilde = 0.28977;     // Parameter x3tilde 
 
    // The states
    Real x0(start=0.03966);
    Real x1(start=1.09799);
    Real x2(start=0.00142);
    Real x3(start=1.65431);
    Real cost(start=0);
 
    // The control signal
    input Real u(free=true);
 
  equation
    der(x0) = k1+k2*x0-((k3*x0*x1)/(x0+K4))-((k5*x0*x2)/(x0+K6));
    der(x1) = k7*x0 - ((k8*x1)/(x1+K9));
    der(x2)=(k10*x1*x2*x3)/(x3+K11)+p18*k12*x1+k13*x0-(k14*x2)/(  p17*(1.0 + u*( umax - 1.0))  *x2+K15)-(k16*x2)/(x2+K17)+x3/10;
    der(x3)=-(k10*x1*x2*x3)/(x3+K11)+(k16*x2)/(x2+K17)-x3/10;
    der(cost)=(x0-x0tilde)*(x0-x0tilde)+(x1-x1tilde)*(x1-x1tilde)+
              (x2-x2tilde)*(x2-x2tilde)+(x3-x3tilde)*(x3-x3tilde)+p1*u;
 
  constraint
     x0>=0;
     x1>=0;
     x2>=0;
     x3>=0;
  end calcium_opt;
 
end calcium_pack;
Personal tools