/* * This code is generated by BioUML FrameWork * for BIOMD0000000032.xml diagram at 2008.03.20 15:04:09 */ import biouml.plugins.simulation.ae.NewtonSolver; import biouml.plugins.simulation.java.JavaBaseModel; import ru.biosoft.math.MathRoutines; public class BIOMD0000000032 extends JavaBaseModel { /* * Write rules to calculate equation parameters */ /* * Write rules to calculate equation parameters excluding internal variables. */ public void __internalRateVarInitFunc_0(double time, double[] x) { rate_v1 = Extracellular*x[1]*x[0]*v1_k1; rate_v10 = _Extracellular_compartment_*x[13]*x[25]*v10_k10; rate_v11 = _Extracellular_compartment_*x[26]*v11_k11; rate_v12 = _Extracellular_compartment_*x[21]*x[15]*v12_k12; rate_v13 = _Extracellular_compartment_*x[23]*v13_k13; rate_v14 = _Extracellular_compartment_*x[22]*x[8]*v14_k14; rate_v15 = _Extracellular_compartment_*x[24]*v15_k15; rate_v16 = _Extracellular_compartment_*x[23]*x[24]*v16_k16; rate_v17 = _Extracellular_compartment_*x[25]*v17_k17; rate_v18 = _Extracellular_compartment_*x[26]*x[19]*v18_k18; rate_v19 = _Extracellular_compartment_*x[27]*v19_k19; rate_v2 = _Extracellular_compartment_*x[18]*x[1]*v2_k2; rate_v20 = _Extracellular_compartment_*x[27]*v20_k20; rate_v21 = _Extracellular_compartment_*x[27]*v21_k21; rate_v22 = _Extracellular_compartment_*x[28]*v22_k22; rate_v23 = _Extracellular_compartment_*x[28]*v23_k23; rate_v24 = _Extracellular_compartment_*x[29]*v24_k24; rate_v25 = _Extracellular_compartment_*x[29]*v25_k25; rate_v26 = _Extracellular_compartment_*x[30]*v26_k26; rate_v27 = _Extracellular_compartment_*x[30]*v27_k27; rate_v28 = _Extracellular_compartment_*x[31]*v28_k28; rate_v29 = _Extracellular_compartment_*x[33]*x[8]*v29_k29; rate_v3 = _Extracellular_compartment_*x[20]*v3_k3; rate_v30 = _Extracellular_compartment_*x[32]*v30_k30; rate_v31 = _Extracellular_compartment_*x[32]*v31_k31; rate_v32 = _Extracellular_compartment_*x[33]*v32_k32; rate_v33 = _Extracellular_compartment_*x[9]*v33_k33; rate_v34 = _Extracellular_compartment_*x[16]*x[9]*v34_k34; rate_v35 = _Extracellular_compartment_*x[17]*v35_k35; rate_v36 = _Extracellular_compartment_*x[17]*x[2]*v36_k36; rate_v37 = _Extracellular_compartment_*x[3]*v37_k37; rate_v38 = _Extracellular_compartment_*x[3]*v38_k38; rate_v39 = _Extracellular_compartment_*(x[5]*x[9]*x[9]/(10000.0 + x[9]*x[9]))*v39_k39; rate_v4 = _Extracellular_compartment_*x[20]*v4_k4; rate_v40 = _Extracellular_compartment_*x[6]*v40_k40; rate_v41 = _Extracellular_compartment_*x[5]*x[4]*v41_k41; rate_v42 = _Extracellular_compartment_*x[13]*x[6]*v42_k42; rate_v43 = _Extracellular_compartment_*x[34]*v43_k43; rate_v44 = _Extracellular_compartment_*x[35]*v44_k44; rate_v45 = _Extracellular_compartment_*x[6]*x[4]*v45_k45; } public void __internalRateVarInitFunc_1(double time, double[] x) { rate_v46 = _Extracellular_compartment_*(Math.pow(x[9], 2)/(16.0 + Math.pow(x[9], 2)))*v46_k46; rate_v47 = _Extracellular_compartment_*x[14]*v47_k47; rate_v5 = _Extracellular_compartment_*x[18]*v5_k5; rate_v6 = _Extracellular_compartment_*x[20]*x[12]*v6_k6; rate_v7 = _Extracellular_compartment_*x[11]*v7_k7; rate_v8 = _Extracellular_compartment_*x[11]*x[14]*v8_k8; rate_v9 = _Extracellular_compartment_*x[10]*x[13]*v9_k9; } public void Init() { initialValues = getInitialValues(); /* * Initialize variables */ _Extracellular_compartment_ = 1.0; // initial value of $"Extracellular.compartment" Extracellular = 1.0; // initial value of $Extracellular v10_k10 = 0.1; // initial value of v10_k10 v11_k11 = 5.0; // initial value of v11_k11 v12_k12 = 1.0; // initial value of v12_k12 v13_k13 = 3.0; // initial value of v13_k13 v14_k14 = 1.0; // initial value of v14_k14 v15_k15 = 3.0; // initial value of v15_k15 v16_k16 = 3.0; // initial value of v16_k16 v17_k17 = 100.0; // initial value of v17_k17 v18_k18 = 5.0; // initial value of v18_k18 v19_k19 = 1.0; // initial value of v19_k19 v1_k1 = 0.03; // initial value of v1_k1 v20_k20 = 10.0; // initial value of v20_k20 v21_k21 = 5.0; // initial value of v21_k21 v22_k22 = 47.0; // initial value of v22_k22 v23_k23 = 5.0; // initial value of v23_k23 v24_k24 = 345.0; // initial value of v24_k24 v25_k25 = 5.0; // initial value of v25_k25 v26_k26 = 50.0; // initial value of v26_k26 v27_k27 = 5.0; // initial value of v27_k27 v28_k28 = 140.0; // initial value of v28_k28 v29_k29 = 10.0; // initial value of v29_k29 v2_k2 = 0.0012; // initial value of v2_k2 v30_k30 = 1.0; // initial value of v30_k30 v31_k31 = 250.0; // initial value of v31_k31 v32_k32 = 5.0; // initial value of v32_k32 v33_k33 = 50.0; // initial value of v33_k33 v34_k34 = 18.0; // initial value of v34_k34 v35_k35 = 10.0; // initial value of v35_k35 v36_k36 = 0.1; // initial value of v36_k36 v37_k37 = 0.1; // initial value of v37_k37 v38_k38 = 0.01; // initial value of v38_k38 v39_k39 = 18.0; // initial value of v39_k39 v3_k3 = 0.6; // initial value of v3_k3 v40_k40 = 1.0; // initial value of v40_k40 v41_k41 = 0.02; // initial value of v41_k41 v42_k42 = 0.1; // initial value of v42_k42 v43_k43 = 0.01; // initial value of v43_k43 v44_k44 = 0.01; // initial value of v44_k44 v45_k45 = 0.1; // initial value of v45_k45 v46_k46 = 200.0; // initial value of v46_k46 v47_k47 = 1.0; // initial value of v47_k47 v4_k4 = 0.24; // initial value of v4_k4 v5_k5 = 0.024; // initial value of v5_k5 v6_k6 = 0.0036; // initial value of v6_k6 v7_k7 = 0.24; // initial value of v7_k7 v8_k8 = 0.033; // initial value of v8_k8 v9_k9 = 2000.0; // initial value of v9_k9 } /* * Model variables initial values */ protected double _Extracellular_compartment_; protected double _Extracellular_compartment_p_; protected double rate_v1; protected double rate_v10; protected double rate_v11; protected double rate_v12; protected double rate_v13; protected double rate_v14; protected double rate_v15; protected double rate_v16; protected double rate_v17; protected double rate_v18; protected double rate_v19; protected double rate_v2; protected double rate_v20; protected double rate_v21; protected double rate_v22; protected double rate_v23; protected double rate_v24; protected double rate_v25; protected double rate_v26; protected double rate_v27; protected double rate_v28; protected double rate_v29; protected double rate_v3; protected double rate_v30; protected double rate_v31; protected double rate_v32; protected double rate_v33; protected double rate_v34; protected double rate_v35; protected double rate_v36; protected double rate_v37; protected double rate_v38; protected double rate_v39; protected double rate_v4; protected double rate_v40; protected double rate_v41; protected double rate_v42; protected double rate_v43; protected double rate_v44; protected double rate_v45; protected double rate_v46; protected double rate_v47; protected double rate_v5; protected double rate_v6; protected double rate_v7; protected double rate_v8; protected double rate_v9; protected double Extracellular; protected double v10_k10; protected double v11_k11; protected double v12_k12; protected double v13_k13; protected double v14_k14; protected double v15_k15; protected double v16_k16; protected double v17_k17; protected double v18_k18; protected double v19_k19; protected double v1_k1; protected double v20_k20; protected double v21_k21; protected double v22_k22; protected double v23_k23; protected double v24_k24; protected double v25_k25; protected double v26_k26; protected double v27_k27; protected double v28_k28; protected double v29_k29; protected double v2_k2; protected double v30_k30; protected double v31_k31; protected double v32_k32; protected double v33_k33; protected double v34_k34; protected double v35_k35; protected double v36_k36; protected double v37_k37; protected double v38_k38; protected double v39_k39; protected double v3_k3; protected double v40_k40; protected double v41_k41; protected double v42_k42; protected double v43_k43; protected double v44_k44; protected double v45_k45; protected double v46_k46; protected double v47_k47; protected double v4_k4; protected double v5_k5; protected double v6_k6; protected double v7_k7; protected double v8_k8; protected double v9_k9; public double[] extendResult(double time,double [] x) { this.time = time; double[] y = new double[36]; y[0] = x[0]; y[1] = x[1]; y[2] = x[2]; y[3] = x[3]; y[4] = x[4]; y[5] = x[5]; y[6] = x[6]; y[7] = x[7]; y[8] = x[8]; y[9] = x[9]; y[10] = x[10]; y[11] = x[11]; y[12] = x[12]; y[13] = x[13]; y[14] = x[14]; y[15] = x[15]; y[16] = x[16]; y[17] = x[17]; y[18] = x[18]; y[19] = x[19]; y[20] = x[20]; y[21] = x[21]; y[22] = x[22]; y[23] = x[23]; y[24] = x[24]; y[25] = x[25]; y[26] = x[26]; y[27] = x[27]; y[28] = x[28]; y[29] = x[29]; y[30] = x[30]; y[31] = x[31]; y[32] = x[32]; y[33] = x[33]; y[34] = x[34]; y[35] = x[35]; return y; } public double[] getInitialValues() { double [] x = new double[36]; this.time = 0.0; x[0] = 0.0; // - $"Extracellular.Bar1aex" x[1] = 100.0; // - $"Extracellular.alpha" x[2] = 200.0; // - $"Extracellular.compartment.Bar1" x[3] = 0.0; // - $"Extracellular.compartment.Bar1a" x[4] = 300.0; // - $"Extracellular.compartment.Cdc28" x[5] = 500.0; // - $"Extracellular.compartment.Far1" x[6] = 0.0; // - $"Extracellular.compartment.Far1PP" x[7] = 0.0; // - $"Extracellular.compartment.Far1U" x[8] = 686.399701640513; // - $"Extracellular.compartment.Fus3" x[9] = 0.0; // - $"Extracellular.compartment.Fus3PP" x[10] = 0.0; // - $"Extracellular.compartment.GaGDP" x[11] = 0.0; // - $"Extracellular.compartment.GaGTP" x[12] = 1666.6666667; // - $"Extracellular.compartment.Gabc" x[13] = 0.0; // - $"Extracellular.compartment.Gbc" x[14] = 0.0; // - $"Extracellular.compartment.Sst2" x[15] = 158.33176608789; // - $"Extracellular.compartment.Ste11" x[16] = 200.0; // - $"Extracellular.compartment.Ste12" x[17] = 0.0; // - $"Extracellular.compartment.Ste12a" x[18] = 1666.6666667; // - $"Extracellular.compartment.Ste2" x[19] = 1000.0; // - $"Extracellular.compartment.Ste20" x[20] = 0.0; // - $"Extracellular.compartment.Ste2a" x[21] = 158.33176608789; // - $"Extracellular.compartment.Ste5" x[22] = 36.3997016405141; // - $"Extracellular.compartment.Ste7" x[23] = 105.943298120207; // - $"Extracellular.compartment.complexA" x[24] = 77.8753625675829; // - $"Extracellular.compartment.complexB" x[25] = 235.724935791903; // - $"Extracellular.compartment.complexC" x[26] = 0.0; // - $"Extracellular.compartment.complexD" x[27] = 0.0; // - $"Extracellular.compartment.complexE" x[28] = 0.0; // - $"Extracellular.compartment.complexF" x[29] = 0.0; // - $"Extracellular.compartment.complexG" x[30] = 0.0; // - $"Extracellular.compartment.complexH" x[31] = 0.0; // - $"Extracellular.compartment.complexI" x[32] = 0.0; // - $"Extracellular.compartment.complexK" x[33] = 0.0; // - $"Extracellular.compartment.complexL" x[34] = 0.0; // - $"Extracellular.compartment.complexM" x[35] = 0.0; // - $"Extracellular.compartment.complexN" __internalRateVarInitFunc_0(time, x); __internalRateVarInitFunc_1(time, x); return x; } /* * code for algebraic rules calculations */ /* * end of code for algebraic rules calculations */ protected void calculateRates(double time, double[] x) { __internalRateVarInitFunc_0(time, x); __internalRateVarInitFunc_1(time, x); } /* * calculate dy/dt for 'BIOMD0000000032.xml' model */ public void __internalDyDt_0(double time, double [] x, double[] result) { result[0] = +rate_v38; result[1] = -rate_v1; result[2] = -rate_v36+rate_v37; result[3] = +rate_v36-rate_v37-rate_v38; result[4] = +rate_v44-rate_v45; result[5] = -rate_v39+rate_v40-rate_v41; result[6] = +rate_v39-rate_v40-rate_v42+rate_v43+rate_v44-rate_v45; result[7] = +rate_v41; result[8] = -rate_v14+rate_v15+rate_v17+rate_v21+rate_v23+rate_v25+rate_v27-rate_v29+rate_v30+rate_v33; result[9] = +rate_v28-rate_v33-rate_v34+rate_v35; result[10] = +rate_v7+rate_v8-rate_v9; result[11] = +rate_v6-rate_v7-rate_v8; result[12] = -rate_v6+rate_v9; result[13] = -rate_v10+rate_v11+rate_v21+rate_v23+rate_v25+rate_v27+rate_v32-rate_v42+rate_v43+rate_v6-rate_v9; result[14] = +rate_v46-rate_v47; result[15] = -rate_v12+rate_v13+rate_v17+rate_v21+rate_v23+rate_v25+rate_v27+rate_v32; result[16] = -rate_v34+rate_v35; result[17] = +rate_v34-rate_v35; result[18] = -rate_v2+rate_v3-rate_v5; result[19] = -rate_v18+rate_v19+rate_v21+rate_v23+rate_v25+rate_v27+rate_v32; result[20] = +rate_v2-rate_v3-rate_v4; result[21] = -rate_v12+rate_v13+rate_v17+rate_v21+rate_v23+rate_v25+rate_v27+rate_v32; result[22] = -rate_v14+rate_v15+rate_v17+rate_v21+rate_v23+rate_v25+rate_v27+rate_v32; result[23] = +rate_v12-rate_v13-rate_v16; result[24] = +rate_v14-rate_v15-rate_v16; result[25] = -rate_v10+rate_v11+rate_v16-rate_v17; result[26] = +rate_v10-rate_v11-rate_v18+rate_v19; result[27] = +rate_v18-rate_v19-rate_v20-rate_v21; result[28] = +rate_v20-rate_v22-rate_v23; result[29] = +rate_v22-rate_v24-rate_v25; result[30] = +rate_v24-rate_v26-rate_v27; result[31] = +rate_v26-rate_v28+rate_v31; result[32] = +rate_v29-rate_v30-rate_v31; result[33] = +rate_v28-rate_v29+rate_v30-rate_v32; result[34] = +rate_v42-rate_v43; result[35] = -rate_v44+rate_v45; } protected double [] calculateResult(double time, double[] x) { double[] result = new double[36]; __internalDyDt_0(time, x, result); return result; } public double[] dy_dt(double time, double[] x) { this.time = time; calculateRates( time,x ); return calculateResult( time,x ); } } // class ...