// Smolen et al book chapter p = defn CircadianModel var mRNA, promoter, null_promoter, WmRNA, x, P12_d, WP12, P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19, P20, P21, P22, P23, P24, P25, P26, P27, P28, P29, P30, P31, P32, P33, P34, P35, P36, P37, P38, P39, P40, P41, P42, P43, P44, P45, P46, P47, P48, P49, P50, P51, P52, P53, P54, P55, P56, P57, P58, P59, P60, P61, P62, P63, P64, P65, P66, P67, P68, P69, P70, P71, P72, P73, P74, P75, P76, P77, P78, P79, P80, P81, P82, P83, P84, P85, P86, P87, P88, P89, P90, P91, P92, P93, P94, P95, P96, P97, P98, P99, P100; [ImRNA] P100 + promoter -> null_promoter; k1*P100*promoter; [WmRNA] null_promoter -> P100 + promoter; k2*null_promoter; [IP0] promoter -> promoter + mRNA; vr*promoter; [mRNAW] mRNA -> WmRNA; kd*mRNA; [RP] mRNA -> mRNA + P0; kp*mRNA ; [IP00] P0 -> P1; kph*P0 ; [IP01] P1 -> P2; kph*P1 ; [IP02] P2 -> P3; kph*P2 ; [IP03] P3 -> P4; kph*P3 ; [IP04] P4 -> P5; kph*P4 ; [IP05] P5 -> P6; kph*P5 ; [IP06] P6 -> P7; kph*P6 ; [IP07] P7 -> P8; kph*P7 ; [IP08] P8 -> P9; kph*P8 ; [IP09] P9 -> P10; kph*P9 ; [IP10] P10 -> P11; kph*P10 ; [IP11] P11 -> P12; kph*P11 ; [IP12] P12 -> P13; kph*P12 ; [IP13] P13 -> P14; kph*P13 ; [IP14] P14 -> P15; kph*P14 ; [IP15] P15 -> P16; kph*P15 ; [IP16] P16 -> P17; kph*P16 ; [IP17] P17 -> P18; kph*P17 ; [IP18] P18 -> P19; kph*P18 ; [WP1] P19 -> P20; kph*P19; [IP20] P20 -> P21; kph*P20 ; [IP21] P21 -> P22; kph*P21 ; [IP22] P22 -> P23; kph*P22 ; [IP23] P23 -> P24; kph*P23 ; [IP24] P24 -> P25; kph*P24 ; [IP25] P25 -> P26; kph*P25 ; [IP26] P26 -> P27; kph*P26 ; [IP27] P27 -> P28; kph*P27 ; [IP28] P28 -> P29; kph*P28 ; [IP3] P29 -> P30; kph*P29; [IP30] P30 -> P31; kph*P30 ; [IP31] P31 -> P32; kph*P31 ; [IP32] P32 -> P33; kph*P32 ; [IP33] P33 -> P34; kph*P33 ; [IP34] P34 -> P35; kph*P34 ; [IP35] P35 -> P36; kph*P35 ; [IP36] P36 -> P37; kph*P36 ; [IP37] P37 -> P38; kph*P37 ; [IP38] P38 -> P39; kph*P38 ; [WP3] P39 -> P40; kph*P39; [IP40] P40 -> P41; kph*P40 ; [IP41] P41 -> P42; kph*P41 ; [IP42] P42 -> P43; kph*P42 ; [IP43] P43 -> P44; kph*P43 ; [IP44] P44 -> P45; kph*P44 ; [IP45] P45 -> P46; kph*P45 ; [IP46] P46 -> P47; kph*P46 ; [IP47] P47 -> P48; kph*P47 ; [IP48] P48 -> P49; kph*P48 ; [IP5] P49 -> P50; kph*P49 ; [IP50] P50 -> P51; kph*P50 ; [IP51] P51 -> P52; kph*P51 ; [IP52] P52 -> P53; kph*P52 ; [IP53] P53 -> P54; kph*P53 ; [IP54] P54 -> P55; kph*P54 ; [IP55] P55 -> P56; kph*P55 ; [IP56] P56 -> P57; kph*P56 ; [IP57] P57 -> P58; kph*P57 ; [IP58] P58 -> P59; kph*P58 ; [WP5] P59 -> P60; kph*P59; [IP60] P60 -> P61; kph*P60 ; [IP61] P61 -> P62; kph*P61 ; [IP62] P62 -> P63; kph*P62 ; [IP63] P63 -> P64; kph*P63 ; [IP64] P64 -> P65; kph*P64 ; [IP65] P65 -> P66; kph*P65 ; [IP66] P66 -> P67; kph*P66 ; [IP67] P67 -> P68; kph*P67 ; [IP68] P68 -> P69; kph*P68 ; [IP6] P69 -> P70; kph*P69 ; [IP70] P70 -> P71; kph*P70 ; [IP71] P71 -> P72; kph*P71 ; [IP72] P72 -> P73; kph*P72 ; [IP73] P73 -> P74; kph*P73 ; [IP74] P74 -> P75; kph*P74 ; [IP75] P75 -> P76; kph*P75 ; [IP76] P76 -> P77; kph*P76 ; [IP77] P77 -> P78; kph*P77 ; [IP78] P78 -> P79; kph*P78 ; [WP6] P79 -> P80; kph*P79; [IP80] P80 -> P81; kph*P80 ; [IP81] P81 -> P82; kph*P81 ; [IP82] P82 -> P83; kph*P82 ; [IP83] P83 -> P84; kph*P83 ; [IP84] P84 -> P85; kph*P84 ; [IP85] P85 -> P86; kph*P85 ; [IP86] P86 -> P87; kph*P86 ; [IP87] P87 -> P88; kph*P87 ; [IP88] P88 -> P89; kph*P88 ; [IP9] P89 -> P98; kph*P89 ; // [IP90] P90 -> P91; kph*P90 ; // [IP91] P91 -> P92; kph*P91 ; // [IP92] P92 -> P93; kph*P92 ; // [IP93] P93 -> P94; kph*P93 ; // [IP94] P94 -> P95; kph*P94 ; // [IP95] P95 -> P96; kph*P95 ; // [IP96] P96 -> P97; kph*P96 ; // [IP97] P97 -> P98; kph*P97 ; [IP98] P98 -> P99; kph*P98 ; [WP9] P99 -> P100; kph*P99; [P12x] P100 + x -> P12_d; k3*P100*x; [P12d] P12_d -> P100 + x; k4*P12_d; [WP12] P12_d -> x; vp*P12_d; end; // Initialise all the metabolite concentrations p.WmRNA = 0; p.vr = 100.0*1.3; p.kp = 0.2*1.3; p.kph = 2.0*1.3; p.mRNA = 3.0; p.promoter = 2.0; p.null_promoter = 0.0; p.x = 10.0; p.P12_d = 0.0; p.vp = 3.0*1.3; p.kd = 0.2*1.3; p.P0 = 0; p.P1 = 0; p.P2 = 0; p.P3 = 0; p.P4 = 0; p.P5 = 0; p.P6 = 0; p.P7 = 0; p.P8 = 0; p.P9 = 0; p.P10 = 0; p.P11 = 0; p.P12 = 0; p.P13 = 0; p.P14 = 0; p.P15 = 0; p.P16 = 0; p.P17 = 0; p.P18 = 0; p.P19 = 0; p.P20 = 0; p.P21 = 0; p.P22 = 0; p.P23 = 0; p.P24 = 0; p.P25 = 0; p.P26 = 0; p.P27 = 0; p.P28 = 0; p.P29 = 0; p.P30 = 0; p.P31 = 0; p.P32 = 0; p.P33 = 0; p.P34 = 0; p.P35 = 0; p.P36 = 0; p.P37 = 0; p.P38 = 0; p.P39 = 0; p.P40 = 0; p.P41 = 0; p.P42 = 0; p.P43 = 0; p.P44 = 0; p.P45 = 0; p.P46 = 0; p.P47 = 0; p.P48 = 0; p.P49 = 0; p.P50 = 0; p.P51 = 0; p.P52 = 0; p.P53 = 0; p.P54 = 0; p.P55 = 0; p.P56 = 0; p.P57 = 0; p.P58 = 0; p.P59 = 0; p.P60 = 0; p.P61 = 0; p.P62 = 0; p.P63 = 0; p.P64 = 0; p.P65 = 0; p.P66 = 0; p.P67 = 0; p.P68 = 0; p.P69 = 0; p.P70 = 0; p.P71 = 0; p.P72 = 0; p.P73 = 0; p.P74 = 0; p.P75 = 0; p.P76 = 0; p.P77 = 0; p.P78 = 0; p.P79 = 0; p.P80 = 0; p.P81 = 0; p.P82 = 0; p.P83 = 0; p.P84 = 0; p.P85 = 0; p.P86 = 0; p.P87 = 0; p.P88 = 0; p.P89 = 0; p.P90 = 0; p.P91 = 0; p.P92 = 0; p.P93 = 0; p.P94 = 0; p.P95 = 0; p.P96 = 0; p.P97 = 0; p.P98 = 0; p.P99 = 0; p.P100=0; p.k1 = 14.0*1.3; p.k2 = 50.0*1.3; p.k3 = 3.0*1.3; p.k4 = 30.0*1.3; t = 0; // p.xml("CMscaleModelSBML.xml"); println "Computing...."; hours = 200; hStep = 0.5; dataPoints = trunc(hours/hStep); m = matrix(dataPoints,4); setColumnName (m, 1, "Time"); setColumnName (m, 2, "mRNA"); setColumnName (m, 3, "P0"); setColumnName (m, 4, "P100"); startTime = timer; for i = 1 to dataPoints do begin t = p.sim.OneStep(t,hStep); //if (mod(i,trunc(1.0/hstep))==0) then print"+"; m[i] = {p.time, p.mRNA, p.P0, p.P100}; end; endTime = timer; println "Simulation time (sec) :" , (endTime - startTime)/1000.0; graph (m);