Generated Code

The following is c code generated by the CellML API from this CellML file. (Back to language selection)

The raw code is available.

/*
   There are a total of 66 entries in the algebraic variable array.
   There are a total of 42 entries in each of the rate and state variable arrays.
   There are a total of 94 entries in the constant variable array.
 */
/*
 * VOI is time in component environment (second).
 * STATES[0] is Casp8 in component Casp8 (micromolar).
 * STATES[1] is Casp8Bid in component Casp8 (micromolar).
 * STATES[2] is FeLnNO in component FeLn (micromolar).
 * STATES[3] is Bid in component Bid (micromolar).
 * ALGEBRAIC[2] is J_0 in component Casp8 (flux).
 * ALGEBRAIC[0] is J_f0 in component Casp8 (flux).
 * ALGEBRAIC[1] is J_Casp8 in component Casp8 (flux).
 * ALGEBRAIC[3] is r_20NO in component Casp8 (flux).
 * ALGEBRAIC[61] is r_19NO in component PTPC (flux).
 * CONSTANTS[0] is k_f0 in component model_constant (first_order_rate_constant).
 * CONSTANTS[1] is k_10 in component model_constant (second_order_rate_constant).
 * CONSTANTS[2] is k_00 in component model_constant (first_order_rate_constant).
 * CONSTANTS[3] is u in component model_constant (first_order_rate_constant).
 * CONSTANTS[4] is k_20NO in component model_constant (second_order_rate_constant).
 * STATES[4] is Apaf_1 in component Apaf_1 (micromolar).
 * STATES[5] is CytcApaf_1 in component CytcApaf_1 (micromolar).
 * STATES[6] is Cytc in component Cytc (micromolar).
 * ALGEBRAIC[4] is J_Apaf_1 in component Apaf_1 (flux).
 * ALGEBRAIC[5] is J_1 in component Apaf_1 (flux).
 * CONSTANTS[5] is P_Apaf_1 in component model_constant (flux).
 * CONSTANTS[6] is k_11 in component model_constant (second_order_rate_constant).
 * CONSTANTS[7] is k_01 in component model_constant (first_order_rate_constant).
 * STATES[7] is Apop in component Apop (micromolar).
 * ALGEBRAIC[7] is J_1b in component CytcApaf_1 (flux).
 * CONSTANTS[8] is k_11b in component model_constant (rate).
 * CONSTANTS[9] is k_01b in component model_constant (first_order_rate_constant).
 * CONSTANTS[10] is p in component model_constant (dimensionless).
 * STATES[8] is Cytc_mito in component Cytc_mito (micromolar).
 * STATES[9] is PTPC in component PTPC (micromolar).
 * ALGEBRAIC[8] is PTPC_act in component Cytc (micromolar).
 * CONSTANTS[11] is PTPC_0 in component model_constant (micromolar).
 * ALGEBRAIC[12] is J_14 in component Cytc_mito (flux).
 * ALGEBRAIC[6] is J_Cytc in component Cytc (flux).
 * CONSTANTS[12] is k_1 in component model_constant (second_order_rate_constant).
 * STATES[10] is Bax_2 in component Bax_2 (micromolar).
 * ALGEBRAIC[10] is J_Cytc_mito in component Cytc_mito (flux).
 * CONSTANTS[13] is P_Cytc_mito in component model_constant (flux).
 * CONSTANTS[14] is k14 in component model_constant (second_order_rate_constant).
 * ALGEBRAIC[17] is J_12b in component tBidBax (flux).
 * ALGEBRAIC[9] is J_Bax_2 in component Bax_2 (flux).
 * STATES[11] is tBid_mito in component tBid_mito (micromolar).
 * STATES[12] is Bax in component Bax (micromolar).
 * ALGEBRAIC[14] is J_11 in component tBid (flux).
 * ALGEBRAIC[13] is J_12a in component tBid_mito (flux).
 * ALGEBRAIC[11] is J_tBid_mito in component tBid_mito (flux).
 * CONSTANTS[15] is k12a in component model_constant (second_order_rate_constant).
 * STATES[13] is tBid in component tBid (micromolar).
 * ALGEBRAIC[25] is J_f8 in component Casp3Bid (flux).
 * ALGEBRAIC[15] is J_tBid in component tBid (flux).
 * CONSTANTS[16] is k11 in component model_constant (first_order_rate_constant).
 * STATES[14] is tBidBax in component tBidBax (micromolar).
 * ALGEBRAIC[16] is J_tBidBax in component tBidBax (flux).
 * CONSTANTS[17] is k12b in component model_constant (second_order_rate_constant).
 * STATES[15] is Bcl_2 in component Bcl_2 (micromolar).
 * ALGEBRAIC[19] is J_13 in component Bax (flux).
 * ALGEBRAIC[18] is J_Bax in component Bax (flux).
 * CONSTANTS[91] is P_Bax in component Bax (flux).
 * CONSTANTS[18] is k13 in component model_constant (second_order_rate_constant).
 * CONSTANTS[19] is P_oBax in component model_constant (flux).
 * CONSTANTS[20] is p53 in component model_constant (micromolar).
 * CONSTANTS[21] is p53_thresh in component model_constant (micromolar).
 * CONSTANTS[22] is u_Bax in component model_constant (first_order_rate_constant).
 * STATES[16] is Casp3 in component Casp3 (micromolar).
 * STATES[17] is Casp3Bcl_2 in component Casp3Bcl_2 (micromolar).
 * ALGEBRAIC[20] is J_9 in component Bcl_2 (flux).
 * ALGEBRAIC[22] is J_Bcl_2 in component Bcl_2 (flux).
 * CONSTANTS[23] is k_19 in component model_constant (second_order_rate_constant).
 * CONSTANTS[24] is k_09 in component model_constant (first_order_rate_constant).
 * CONSTANTS[92] is P_Bcl_2 in component Bcl_2 (flux).
 * CONSTANTS[25] is P_oBcl_2 in component model_constant (flux).
 * CONSTANTS[26] is u_Bcl_2 in component model_constant (first_order_rate_constant).
 * ALGEBRAIC[21] is J_f9 in component Casp3Bcl_2 (flux).
 * CONSTANTS[27] is k_f9 in component model_constant (first_order_rate_constant).
 * STATES[18] is Casp3Bid in component Casp3Bid (micromolar).
 * ALGEBRAIC[23] is J_8 in component Casp3Bid (flux).
 * CONSTANTS[28] is k_18 in component model_constant (second_order_rate_constant).
 * CONSTANTS[29] is k_08 in component model_constant (first_order_rate_constant).
 * CONSTANTS[30] is k_f8 in component model_constant (first_order_rate_constant).
 * ALGEBRAIC[24] is J_Bid in component Bid (flux).
 * CONSTANTS[31] is P_Bid in component model_constant (flux).
 * STATES[19] is IAP in component IAP (micromolar).
 * STATES[20] is Casp3IAP in component Casp3 (micromolar).
 * ALGEBRAIC[34] is J_f6 in component Casp9Pro3 (flux).
 * ALGEBRAIC[33] is J_f6b in component ApopCasp9_2Pro3 (flux).
 * ALGEBRAIC[27] is J_7 in component Casp3 (flux).
 * ALGEBRAIC[26] is J_Casp3 in component Casp3 (flux).
 * ALGEBRAIC[65] is r_22NO in component FeLn (flux).
 * CONSTANTS[32] is k_17 in component model_constant (second_order_rate_constant).
 * CONSTANTS[33] is k_07 in component model_constant (first_order_rate_constant).
 * ALGEBRAIC[29] is J_2 in component Pro9 (flux).
 * ALGEBRAIC[42] is J_4b in component ApopCasp9 (flux).
 * STATES[21] is Pro9 in component Pro9 (micromolar).
 * STATES[22] is ApopPro9 in component Pro9 (micromolar).
 * STATES[23] is ApopPro9_2 in component ApopPro9_2 (micromolar).
 * ALGEBRAIC[30] is J_3 in component Pro9 (flux).
 * ALGEBRAIC[28] is J_Pro9 in component Pro9 (flux).
 * CONSTANTS[34] is k_12 in component model_constant (second_order_rate_constant).
 * CONSTANTS[35] is k_02 in component model_constant (first_order_rate_constant).
 * CONSTANTS[36] is k_13 in component model_constant (second_order_rate_constant).
 * CONSTANTS[37] is k_03 in component model_constant (first_order_rate_constant).
 * CONSTANTS[38] is P_Pro9 in component model_constant (flux).
 * ALGEBRAIC[31] is J_f3 in component ApopPro9_2 (flux).
 * CONSTANTS[39] is k_f3 in component model_constant (first_order_rate_constant).
 * STATES[24] is ApopCasp9_2Pro3 in component ApopCasp9_2Pro3 (micromolar).
 * STATES[25] is ApopCasp9_2 in component ApopCasp9_2 (micromolar).
 * STATES[26] is Pro3 in component Pro3 (micromolar).
 * ALGEBRAIC[32] is J_6b in component ApopCasp9_2Pro3 (flux).
 * CONSTANTS[40] is k_16b in component model_constant (second_order_rate_constant).
 * CONSTANTS[41] is k_06b in component model_constant (first_order_rate_constant).
 * CONSTANTS[42] is k_f6b in component model_constant (first_order_rate_constant).
 * STATES[27] is Casp9Pro3 in component Casp9Pro3 (micromolar).
 * ALGEBRAIC[35] is J_6 in component Pro3 (flux).
 * CONSTANTS[43] is k_f6 in component model_constant (first_order_rate_constant).
 * STATES[28] is Casp9 in component Casp9 (micromolar).
 * ALGEBRAIC[36] is J_Pro3 in component Pro3 (flux).
 * CONSTANTS[44] is k_16 in component model_constant (second_order_rate_constant).
 * CONSTANTS[45] is k_06 in component model_constant (first_order_rate_constant).
 * CONSTANTS[46] is P_Pro3 in component model_constant (flux).
 * STATES[29] is Casp9IAP in component IAP (micromolar).
 * STATES[30] is ApopCasp9IAP in component IAP (micromolar).
 * STATES[31] is ApopCasp9_2IAP in component IAP (micromolar).
 * STATES[32] is ApopCasp9 in component ApopCasp9 (micromolar).
 * ALGEBRAIC[37] is J_5 in component IAP (flux).
 * ALGEBRAIC[38] is J_5b in component IAP (flux).
 * ALGEBRAIC[39] is J_5c in component IAP (flux).
 * ALGEBRAIC[41] is J_IAP in component IAP (flux).
 * CONSTANTS[47] is P_IAP in component model_constant (flux).
 * CONSTANTS[48] is k_15 in component model_constant (second_order_rate_constant).
 * CONSTANTS[49] is k_05 in component model_constant (first_order_rate_constant).
 * CONSTANTS[50] is k_15b in component model_constant (second_order_rate_constant).
 * CONSTANTS[51] is k_05b in component model_constant (first_order_rate_constant).
 * CONSTANTS[52] is k_15c in component model_constant (second_order_rate_constant).
 * CONSTANTS[53] is k_05c in component model_constant (first_order_rate_constant).
 * ALGEBRAIC[40] is J_4 in component ApopCasp9 (flux).
 * CONSTANTS[54] is k_14 in component model_constant (first_order_rate_constant).
 * CONSTANTS[55] is k_04 in component model_constant (second_order_rate_constant).
 * CONSTANTS[56] is k_14b in component model_constant (first_order_rate_constant).
 * CONSTANTS[57] is k_04b in component model_constant (second_order_rate_constant).
 * ALGEBRAIC[43] is J_Casp9 in component Casp9 (flux).
 * ALGEBRAIC[64] is r_21NO in component FeLn (flux).
 * STATES[33] is NO in component NO (micromolar).
 * STATES[34] is O_2m in component O_2m (micromolar).
 * CONSTANTS[58] is O_2 in component NO (micromolar).
 * STATES[35] is NO_2 in component NO (micromolar).
 * STATES[36] is N2O3 in component N2O3 (micromolar).
 * STATES[37] is GSNO in component GSNO (micromolar).
 * STATES[38] is CcOX in component NO (micromolar).
 * STATES[39] is FeLn in component FeLn (micromolar).
 * CONSTANTS[90] is r_1NO in component NO (flux).
 * ALGEBRAIC[44] is r_4NO in component NO (flux).
 * ALGEBRAIC[45] is r_12aNO in component NO (flux).
 * ALGEBRAIC[46] is r_12bNOp in component NO (flux).
 * ALGEBRAIC[47] is r_12bNOm in component NO (flux).
 * ALGEBRAIC[48] is r_14NO in component NO (flux).
 * ALGEBRAIC[49] is r_15NO in component NO (flux).
 * ALGEBRAIC[50] is r_16NO in component NO (flux).
 * CONSTANTS[59] is k_1NO in component model_constant (flux).
 * CONSTANTS[60] is k_4NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[61] is k_12aNO in component model_constant (rate2).
 * CONSTANTS[62] is k_12bNOp in component model_constant (second_order_rate_constant).
 * CONSTANTS[63] is k_12bNOm in component model_constant (first_order_rate_constant).
 * CONSTANTS[64] is k_14NO in component model_constant (first_order_rate_constant).
 * CONSTANTS[65] is k_15NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[66] is k_16NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[67] is SOD in component O_2m (micromolar).
 * CONSTANTS[93] is r_2NO in component O_2m (flux).
 * ALGEBRAIC[51] is r_5NO in component O_2m (flux).
 * ALGEBRAIC[52] is r_10NO in component O_2m (flux).
 * CONSTANTS[68] is k_2NO in component model_constant (flux).
 * CONSTANTS[69] is k_5NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[70] is k_10NO in component model_constant (rate2).
 * STATES[40] is ONOO_m in component ONOO_m (micromolar).
 * STATES[41] is GSH in component GSH (micromolar).
 * CONSTANTS[71] is GPX in component ONOO_m (micromolar).
 * CONSTANTS[72] is CO_2 in component ONOO_m (micromolar).
 * CONSTANTS[73] is Cyt_c in component ONOO_m (micromolar).
 * ALGEBRAIC[53] is r_6NO in component ONOO_m (flux).
 * ALGEBRAIC[54] is r_7NO in component ONOO_m (flux).
 * ALGEBRAIC[57] is r_8NO in component ONOO_m (flux).
 * ALGEBRAIC[60] is r_9NO in component ONOO_m (flux).
 * ALGEBRAIC[63] is r_18NO in component ONOO_m (flux).
 * CONSTANTS[74] is k_6NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[75] is k_7NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[76] is k_8NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[77] is k_9NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[78] is k_18NO in component model_constant (second_order_rate_constant).
 * ALGEBRAIC[55] is GSSG in component GSH (micromolar).
 * CONSTANTS[79] is FeLn_0 in component model_constant (micromolar).
 * CONSTANTS[80] is GSH_0 in component model_constant (micromolar).
 * ALGEBRAIC[56] is r_11NO in component GSH (flux).
 * ALGEBRAIC[59] is r_m in component GSH (flux).
 * ALGEBRAIC[62] is r_17NO in component GSH (flux).
 * CONSTANTS[81] is k_11NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[82] is v_m in component model_constant (flux).
 * CONSTANTS[83] is k_m in component model_constant (micromolar).
 * CONSTANTS[84] is k_17NO in component model_constant (second_order_rate_constant).
 * ALGEBRAIC[58] is r_13NO in component N2O3 (flux).
 * CONSTANTS[85] is k_13NO in component model_constant (first_order_rate_constant).
 * CONSTANTS[86] is k_21NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[87] is k_22NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[88] is k_19NO in component model_constant (second_order_rate_constant).
 * CONSTANTS[89] is k_17bNO in component model_constant (second_order_rate_constant).
 * RATES[0] is d/dt Casp8 in component Casp8 (micromolar).
 * RATES[1] is d/dt Casp8Bid in component Casp8 (micromolar).
 * RATES[4] is d/dt Apaf_1 in component Apaf_1 (micromolar).
 * RATES[5] is d/dt CytcApaf_1 in component CytcApaf_1 (micromolar).
 * RATES[6] is d/dt Cytc in component Cytc (micromolar).
 * RATES[8] is d/dt Cytc_mito in component Cytc_mito (micromolar).
 * RATES[10] is d/dt Bax_2 in component Bax_2 (micromolar).
 * RATES[11] is d/dt tBid_mito in component tBid_mito (micromolar).
 * RATES[13] is d/dt tBid in component tBid (micromolar).
 * RATES[14] is d/dt tBidBax in component tBidBax (micromolar).
 * RATES[12] is d/dt Bax in component Bax (micromolar).
 * RATES[15] is d/dt Bcl_2 in component Bcl_2 (micromolar).
 * RATES[17] is d/dt Casp3Bcl_2 in component Casp3Bcl_2 (micromolar).
 * RATES[18] is d/dt Casp3Bid in component Casp3Bid (micromolar).
 * RATES[3] is d/dt Bid in component Bid (micromolar).
 * RATES[20] is d/dt Casp3IAP in component Casp3 (micromolar).
 * RATES[16] is d/dt Casp3 in component Casp3 (micromolar).
 * RATES[7] is d/dt Apop in component Apop (micromolar).
 * RATES[21] is d/dt Pro9 in component Pro9 (micromolar).
 * RATES[22] is d/dt ApopPro9 in component Pro9 (micromolar).
 * RATES[23] is d/dt ApopPro9_2 in component ApopPro9_2 (micromolar).
 * RATES[24] is d/dt ApopCasp9_2Pro3 in component ApopCasp9_2Pro3 (micromolar).
 * RATES[27] is d/dt Casp9Pro3 in component Casp9Pro3 (micromolar).
 * RATES[26] is d/dt Pro3 in component Pro3 (micromolar).
 * RATES[29] is d/dt Casp9IAP in component IAP (micromolar).
 * RATES[30] is d/dt ApopCasp9IAP in component IAP (micromolar).
 * RATES[31] is d/dt ApopCasp9_2IAP in component IAP (micromolar).
 * RATES[19] is d/dt IAP in component IAP (micromolar).
 * RATES[32] is d/dt ApopCasp9 in component ApopCasp9 (micromolar).
 * RATES[28] is d/dt Casp9 in component Casp9 (micromolar).
 * RATES[25] is d/dt ApopCasp9_2 in component ApopCasp9_2 (micromolar).
 * RATES[33] is d/dt NO in component NO (micromolar).
 * RATES[38] is d/dt CcOX in component NO (micromolar).
 * RATES[35] is d/dt NO_2 in component NO (micromolar).
 * RATES[34] is d/dt O_2m in component O_2m (micromolar).
 * RATES[40] is d/dt ONOO_m in component ONOO_m (micromolar).
 * RATES[41] is d/dt GSH in component GSH (micromolar).
 * RATES[37] is d/dt GSNO in component GSNO (micromolar).
 * RATES[36] is d/dt N2O3 in component N2O3 (micromolar).
 * RATES[39] is d/dt FeLn in component FeLn (micromolar).
 * RATES[2] is d/dt FeLnNO in component FeLn (micromolar).
 * RATES[9] is d/dt PTPC in component PTPC (micromolar).
 */
void
initConsts(double* CONSTANTS, double* RATES, double *STATES)
{
STATES[0] = 0;
STATES[1] = 0;
STATES[2] = 0;
STATES[3] = 0.004;
CONSTANTS[0] = 0.1;
CONSTANTS[1] = 10;
CONSTANTS[2] = 0.5;
CONSTANTS[3] = 0.006;
CONSTANTS[4] = 66;
STATES[4] = 0.004;
STATES[5] = 0;
STATES[6] = 0;
CONSTANTS[5] = 0.0003;
CONSTANTS[6] = 5;
CONSTANTS[7] = 0.5;
STATES[7] = 0;
CONSTANTS[8] = 50000;
CONSTANTS[9] = 0.5;
CONSTANTS[10] = 4;
STATES[8] = 0.004;
STATES[9] = 0;
CONSTANTS[11] = 0;
CONSTANTS[12] = 1;
STATES[10] = 0;
CONSTANTS[13] = 0.0003;
CONSTANTS[14] = 10;
STATES[11] = 0;
STATES[12] = 0.004;
CONSTANTS[15] = 10;
STATES[13] = 0;
CONSTANTS[16] = 10;
STATES[14] = 0;
CONSTANTS[17] = 10;
STATES[15] = 0.004;
CONSTANTS[18] = 10;
CONSTANTS[19] = 0.00003;
CONSTANTS[20] = 0.0066;
CONSTANTS[21] = 0.004;
CONSTANTS[22] = 0.006;
STATES[16] = 0;
STATES[17] = 0;
CONSTANTS[23] = 10;
CONSTANTS[24] = 0.5;
CONSTANTS[25] = 0.00008;
CONSTANTS[26] = 0.006;
CONSTANTS[27] = 0.1;
STATES[18] = 0;
CONSTANTS[28] = 10;
CONSTANTS[29] = 0.5;
CONSTANTS[30] = 0.1;
CONSTANTS[31] = 0.00003;
STATES[19] = 0.004;
STATES[20] = 0;
CONSTANTS[32] = 5;
CONSTANTS[33] = 0.0035;
STATES[21] = 0.004;
STATES[22] = 0;
STATES[23] = 0;
CONSTANTS[34] = 10;
CONSTANTS[35] = 0.5;
CONSTANTS[36] = 10;
CONSTANTS[37] = 0.5;
CONSTANTS[38] = 0.0003;
CONSTANTS[39] = 0.1;
STATES[24] = 0;
STATES[25] = 0;
STATES[26] = 0.004;
CONSTANTS[40] = 10;
CONSTANTS[41] = 0.5;
CONSTANTS[42] = 0.1;
STATES[27] = 0;
CONSTANTS[43] = 0.001;
STATES[28] = 0;
CONSTANTS[44] = 10;
CONSTANTS[45] = 0.5;
CONSTANTS[46] = 0.0003;
STATES[29] = 0;
STATES[30] = 0;
STATES[31] = 0;
STATES[32] = 0;
CONSTANTS[47] = 0.00003;
CONSTANTS[48] = 5;
CONSTANTS[49] = 0.0035;
CONSTANTS[50] = 5;
CONSTANTS[51] = 0.0035;
CONSTANTS[52] = 5;
CONSTANTS[53] = 0.0035;
CONSTANTS[54] = 5;
CONSTANTS[55] = 0.5;
CONSTANTS[56] = 5;
CONSTANTS[57] = 0.5;
STATES[33] = 0;
STATES[34] = 35;
CONSTANTS[58] = 35;
STATES[35] = 0;
STATES[36] = 0;
STATES[37] = 0;
STATES[38] = 0.1;
STATES[39] = 0.05;
CONSTANTS[59] = 1;
CONSTANTS[60] = 6700;
CONSTANTS[61] = 0.000006;
CONSTANTS[62] = 1100;
CONSTANTS[63] = 81000;
CONSTANTS[64] = 0.0002;
CONSTANTS[65] = 100;
CONSTANTS[66] = 1.21;
CONSTANTS[67] = 10;
CONSTANTS[68] = 0.1;
CONSTANTS[69] = 2400;
CONSTANTS[70] = 0.0006;
STATES[40] = 0;
STATES[41] = 10000;
CONSTANTS[71] = 5.8;
CONSTANTS[72] = 1000;
CONSTANTS[73] = 400;
CONSTANTS[74] = 0.00135;
CONSTANTS[75] = 2;
CONSTANTS[76] = 0.058;
CONSTANTS[77] = 0.025;
CONSTANTS[78] = 1;
CONSTANTS[79] = 0.05;
CONSTANTS[80] = 10000;
CONSTANTS[81] = 66;
CONSTANTS[82] = 320;
CONSTANTS[83] = 50;
CONSTANTS[84] = 66;
CONSTANTS[85] = 1600;
CONSTANTS[86] = 66;
CONSTANTS[87] = 66;
CONSTANTS[88] = 10;
CONSTANTS[89] = 0.0002;
CONSTANTS[90] = CONSTANTS[59];
CONSTANTS[91] =  CONSTANTS[19]*(1.00000+pow(CONSTANTS[20], 4.00000)/(pow(CONSTANTS[20], 4.00000)+pow(CONSTANTS[21], 4.00000)));
CONSTANTS[92] = ( CONSTANTS[25]*pow(CONSTANTS[21], 4.00000))/(pow(CONSTANTS[20], 4.00000)+pow(CONSTANTS[21], 4.00000));
CONSTANTS[93] = CONSTANTS[68];
}
void
computeRates(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC)
{
ALGEBRAIC[2] =  CONSTANTS[1]*STATES[0]*STATES[3] -  CONSTANTS[2]*STATES[1];
ALGEBRAIC[0] =  CONSTANTS[0]*STATES[1];
RATES[1] = ALGEBRAIC[2] - ALGEBRAIC[0];
ALGEBRAIC[4] = CONSTANTS[5] -  CONSTANTS[3]*STATES[4];
ALGEBRAIC[5] =  CONSTANTS[6]*STATES[6]*STATES[4] -  CONSTANTS[7]*STATES[5];
RATES[4] = - ALGEBRAIC[5]+ALGEBRAIC[4];
ALGEBRAIC[7] =  CONSTANTS[8]*pow(STATES[5], CONSTANTS[10]) -  CONSTANTS[9]*STATES[7];
RATES[5] = ALGEBRAIC[5] -  7.00000*ALGEBRAIC[7];
ALGEBRAIC[8] = CONSTANTS[11] - STATES[9];
ALGEBRAIC[12] =  CONSTANTS[14]*STATES[10]*STATES[8];
ALGEBRAIC[6] =  - CONSTANTS[3]*STATES[6];
RATES[6] = (ALGEBRAIC[12] - ALGEBRAIC[5])+ALGEBRAIC[6]+ CONSTANTS[12]*ALGEBRAIC[8]*STATES[8];
ALGEBRAIC[10] = CONSTANTS[13] -  CONSTANTS[3]*STATES[8];
RATES[8] = - ALGEBRAIC[12]+ALGEBRAIC[10];
ALGEBRAIC[14] =  CONSTANTS[16]*STATES[13];
ALGEBRAIC[13] =  CONSTANTS[15]*STATES[11]*STATES[12];
ALGEBRAIC[11] =  - CONSTANTS[3]*STATES[11];
RATES[11] = (ALGEBRAIC[14] - ALGEBRAIC[13])+ALGEBRAIC[11];
ALGEBRAIC[17] =  CONSTANTS[17]*STATES[14]*STATES[12];
ALGEBRAIC[9] =  - CONSTANTS[3]*STATES[10];
RATES[10] = ALGEBRAIC[17]+ALGEBRAIC[9];
ALGEBRAIC[16] =  - CONSTANTS[3]*STATES[14];
RATES[14] = (ALGEBRAIC[13] - ALGEBRAIC[17])+ALGEBRAIC[16];
ALGEBRAIC[19] =  CONSTANTS[18]*STATES[15]*STATES[12];
ALGEBRAIC[18] = CONSTANTS[91] -  CONSTANTS[22]*STATES[12];
RATES[12] = ((- ALGEBRAIC[13] - ALGEBRAIC[17]) - ALGEBRAIC[19])+ALGEBRAIC[18];
ALGEBRAIC[20] =  CONSTANTS[23]*STATES[16]*STATES[15] -  CONSTANTS[24]*STATES[17];
ALGEBRAIC[22] = CONSTANTS[92] -  CONSTANTS[26]*STATES[15];
RATES[15] = (- ALGEBRAIC[20] - ALGEBRAIC[19])+ALGEBRAIC[22];
ALGEBRAIC[21] =  CONSTANTS[27]*STATES[17];
RATES[17] = ALGEBRAIC[20] - ALGEBRAIC[21];
ALGEBRAIC[25] =  CONSTANTS[30]*STATES[18];
ALGEBRAIC[15] =  - CONSTANTS[3]*STATES[13];
RATES[13] = ((ALGEBRAIC[0]+ALGEBRAIC[25]) - ALGEBRAIC[14])+ALGEBRAIC[17]+ALGEBRAIC[15];
ALGEBRAIC[23] =  CONSTANTS[28]*STATES[16]*STATES[3] -  CONSTANTS[29]*STATES[18];
RATES[18] = ALGEBRAIC[23] - ALGEBRAIC[25];
ALGEBRAIC[24] = CONSTANTS[31] -  CONSTANTS[3]*STATES[3];
RATES[3] = (- ALGEBRAIC[2] - ALGEBRAIC[23])+ALGEBRAIC[24];
ALGEBRAIC[27] =  CONSTANTS[32]*STATES[16]*STATES[19] -  CONSTANTS[33]*STATES[20];
RATES[20] = ALGEBRAIC[27];
ALGEBRAIC[29] =  CONSTANTS[34]*STATES[7]*STATES[21] -  CONSTANTS[35]*STATES[22];
ALGEBRAIC[30] =  CONSTANTS[36]*STATES[22]*STATES[21] -  CONSTANTS[37]*STATES[23];
ALGEBRAIC[28] = CONSTANTS[38] -  CONSTANTS[3]*STATES[21];
RATES[21] = (- ALGEBRAIC[29] - ALGEBRAIC[30])+ALGEBRAIC[28];
RATES[22] = ALGEBRAIC[29] - ALGEBRAIC[30];
ALGEBRAIC[31] =  CONSTANTS[39]*STATES[23];
RATES[23] = ALGEBRAIC[30] - ALGEBRAIC[31];
ALGEBRAIC[33] =  CONSTANTS[42]*STATES[24];
ALGEBRAIC[32] =  CONSTANTS[40]*STATES[25]*STATES[26] -  CONSTANTS[41]*STATES[24];
RATES[24] = ALGEBRAIC[32] - ALGEBRAIC[33];
ALGEBRAIC[34] =  CONSTANTS[43]*STATES[27];
ALGEBRAIC[35] =  CONSTANTS[44]*STATES[28]*STATES[26] -  CONSTANTS[45]*STATES[27];
RATES[27] = ALGEBRAIC[35] - ALGEBRAIC[34];
ALGEBRAIC[36] = CONSTANTS[46] -  CONSTANTS[3]*STATES[26];
RATES[26] = (- ALGEBRAIC[35] - ALGEBRAIC[32])+ALGEBRAIC[36];
ALGEBRAIC[37] =  CONSTANTS[48]*STATES[28]*STATES[19] -  CONSTANTS[49]*STATES[29];
RATES[29] = ALGEBRAIC[37];
ALGEBRAIC[38] =  CONSTANTS[50]*STATES[32]*STATES[19] -  CONSTANTS[51]*STATES[30];
RATES[30] = ALGEBRAIC[38];
ALGEBRAIC[39] =  CONSTANTS[52]*STATES[25]*STATES[19] -  CONSTANTS[53]*STATES[31];
RATES[31] = ALGEBRAIC[39];
ALGEBRAIC[41] = CONSTANTS[47] -  CONSTANTS[3]*STATES[19];
RATES[19] = (((- ALGEBRAIC[37] - ALGEBRAIC[38]) - ALGEBRAIC[39]) - ALGEBRAIC[27])+ALGEBRAIC[41];
ALGEBRAIC[40] =  CONSTANTS[54]*STATES[25] -  CONSTANTS[55]*STATES[32]*STATES[28];
RATES[25] = (((ALGEBRAIC[31] - ALGEBRAIC[40]) - ALGEBRAIC[39]) - ALGEBRAIC[32])+ALGEBRAIC[33];
ALGEBRAIC[42] =  CONSTANTS[56]*STATES[32] -  CONSTANTS[57]*STATES[7]*STATES[28];
RATES[7] = (ALGEBRAIC[7] - ALGEBRAIC[29])+ALGEBRAIC[42];
RATES[32] = (ALGEBRAIC[40] - ALGEBRAIC[42]) - ALGEBRAIC[38];
ALGEBRAIC[45] =  CONSTANTS[61]*pow(STATES[33], 2.00000)*CONSTANTS[58];
ALGEBRAIC[46] =  CONSTANTS[62]*STATES[35]*STATES[33];
ALGEBRAIC[47] =  CONSTANTS[63]*STATES[36];
RATES[35] = ( 2.00000*ALGEBRAIC[45] - ALGEBRAIC[46])+ALGEBRAIC[47];
ALGEBRAIC[49] =  CONSTANTS[65]*STATES[38]*STATES[33];
RATES[38] = - ALGEBRAIC[49];
ALGEBRAIC[44] =  CONSTANTS[60]*STATES[33]*STATES[34];
ALGEBRAIC[48] =  CONSTANTS[64]*STATES[37];
ALGEBRAIC[50] =  CONSTANTS[66]*STATES[39]*STATES[33];
RATES[33] = (((((CONSTANTS[90] - ALGEBRAIC[44]) -  2.00000*ALGEBRAIC[45]) - ALGEBRAIC[46])+ALGEBRAIC[47]+ALGEBRAIC[48]) - ALGEBRAIC[49]) - ALGEBRAIC[50];
ALGEBRAIC[51] =  CONSTANTS[69]*CONSTANTS[67]*STATES[34];
ALGEBRAIC[52] =  CONSTANTS[70]*pow(STATES[37], 2.00000)*STATES[34];
RATES[34] = ((CONSTANTS[93] - ALGEBRAIC[44]) - ALGEBRAIC[51]) - ALGEBRAIC[52];
ALGEBRAIC[1] =  - CONSTANTS[3]*STATES[0];
ALGEBRAIC[3] =  CONSTANTS[4]*STATES[2]*STATES[0];
ALGEBRAIC[61] =  CONSTANTS[88]*STATES[36]*STATES[0];
RATES[0] = ((- ALGEBRAIC[2]+ALGEBRAIC[0]+ALGEBRAIC[1]) - ALGEBRAIC[61]) - ALGEBRAIC[3];
ALGEBRAIC[53] =  CONSTANTS[74]*STATES[40]*STATES[41];
ALGEBRAIC[54] =  CONSTANTS[75]*STATES[40]*CONSTANTS[71];
ALGEBRAIC[57] =  CONSTANTS[76]*STATES[40]*CONSTANTS[72];
ALGEBRAIC[60] =  CONSTANTS[77]*STATES[40]*CONSTANTS[73];
ALGEBRAIC[63] =  CONSTANTS[78]*STATES[40]*STATES[9];
RATES[40] = ((((ALGEBRAIC[44] - ALGEBRAIC[53]) - ALGEBRAIC[54]) - ALGEBRAIC[57]) - ALGEBRAIC[60]) - ALGEBRAIC[63];
ALGEBRAIC[56] =  CONSTANTS[81]*STATES[36]*STATES[41];
ALGEBRAIC[55] = ((CONSTANTS[80] - STATES[41]) - STATES[37])/2.00000;
ALGEBRAIC[59] = ( CONSTANTS[82]*ALGEBRAIC[55])/(CONSTANTS[83]+ALGEBRAIC[55]);
ALGEBRAIC[62] =  CONSTANTS[84]*STATES[2]*STATES[41];
RATES[41] = ((- ALGEBRAIC[53] - ALGEBRAIC[56])+ 2.00000*ALGEBRAIC[59]) - ALGEBRAIC[62];
RATES[37] = (((ALGEBRAIC[53] -  2.00000*ALGEBRAIC[52])+ALGEBRAIC[56]) - ALGEBRAIC[48])+ALGEBRAIC[62];
ALGEBRAIC[58] =  CONSTANTS[85]*STATES[36];
RATES[36] = (((- ALGEBRAIC[56]+ALGEBRAIC[46]) - ALGEBRAIC[47]) - ALGEBRAIC[58]) - ALGEBRAIC[61];
RATES[9] = - ALGEBRAIC[61];
ALGEBRAIC[43] =  - CONSTANTS[3]*STATES[28];
ALGEBRAIC[64] =  CONSTANTS[86]*STATES[2]*STATES[28];
RATES[28] = ((((ALGEBRAIC[40]+ALGEBRAIC[42]) - ALGEBRAIC[37]) - ALGEBRAIC[35])+ALGEBRAIC[34]+ALGEBRAIC[43]) - ALGEBRAIC[64];
ALGEBRAIC[26] =  - CONSTANTS[3]*STATES[16];
ALGEBRAIC[65] =  CONSTANTS[87]*STATES[2]*STATES[16];
RATES[16] = ((((((ALGEBRAIC[34]+ALGEBRAIC[33]) - ALGEBRAIC[27]) - ALGEBRAIC[23])+ALGEBRAIC[25]) - ALGEBRAIC[20])+ALGEBRAIC[21]+ALGEBRAIC[26]) - ALGEBRAIC[65];
RATES[39] = - ALGEBRAIC[50]+ALGEBRAIC[62]+ALGEBRAIC[3]+ALGEBRAIC[64]+ALGEBRAIC[65];
RATES[2] = (((ALGEBRAIC[50] - ALGEBRAIC[62]) - ALGEBRAIC[3]) - ALGEBRAIC[64]) - ALGEBRAIC[65];
}
void
computeVariables(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC)
{
ALGEBRAIC[2] =  CONSTANTS[1]*STATES[0]*STATES[3] -  CONSTANTS[2]*STATES[1];
ALGEBRAIC[0] =  CONSTANTS[0]*STATES[1];
ALGEBRAIC[4] = CONSTANTS[5] -  CONSTANTS[3]*STATES[4];
ALGEBRAIC[5] =  CONSTANTS[6]*STATES[6]*STATES[4] -  CONSTANTS[7]*STATES[5];
ALGEBRAIC[7] =  CONSTANTS[8]*pow(STATES[5], CONSTANTS[10]) -  CONSTANTS[9]*STATES[7];
ALGEBRAIC[8] = CONSTANTS[11] - STATES[9];
ALGEBRAIC[12] =  CONSTANTS[14]*STATES[10]*STATES[8];
ALGEBRAIC[6] =  - CONSTANTS[3]*STATES[6];
ALGEBRAIC[10] = CONSTANTS[13] -  CONSTANTS[3]*STATES[8];
ALGEBRAIC[14] =  CONSTANTS[16]*STATES[13];
ALGEBRAIC[13] =  CONSTANTS[15]*STATES[11]*STATES[12];
ALGEBRAIC[11] =  - CONSTANTS[3]*STATES[11];
ALGEBRAIC[17] =  CONSTANTS[17]*STATES[14]*STATES[12];
ALGEBRAIC[9] =  - CONSTANTS[3]*STATES[10];
ALGEBRAIC[16] =  - CONSTANTS[3]*STATES[14];
ALGEBRAIC[19] =  CONSTANTS[18]*STATES[15]*STATES[12];
ALGEBRAIC[18] = CONSTANTS[91] -  CONSTANTS[22]*STATES[12];
ALGEBRAIC[20] =  CONSTANTS[23]*STATES[16]*STATES[15] -  CONSTANTS[24]*STATES[17];
ALGEBRAIC[22] = CONSTANTS[92] -  CONSTANTS[26]*STATES[15];
ALGEBRAIC[21] =  CONSTANTS[27]*STATES[17];
ALGEBRAIC[25] =  CONSTANTS[30]*STATES[18];
ALGEBRAIC[15] =  - CONSTANTS[3]*STATES[13];
ALGEBRAIC[23] =  CONSTANTS[28]*STATES[16]*STATES[3] -  CONSTANTS[29]*STATES[18];
ALGEBRAIC[24] = CONSTANTS[31] -  CONSTANTS[3]*STATES[3];
ALGEBRAIC[27] =  CONSTANTS[32]*STATES[16]*STATES[19] -  CONSTANTS[33]*STATES[20];
ALGEBRAIC[29] =  CONSTANTS[34]*STATES[7]*STATES[21] -  CONSTANTS[35]*STATES[22];
ALGEBRAIC[30] =  CONSTANTS[36]*STATES[22]*STATES[21] -  CONSTANTS[37]*STATES[23];
ALGEBRAIC[28] = CONSTANTS[38] -  CONSTANTS[3]*STATES[21];
ALGEBRAIC[31] =  CONSTANTS[39]*STATES[23];
ALGEBRAIC[33] =  CONSTANTS[42]*STATES[24];
ALGEBRAIC[32] =  CONSTANTS[40]*STATES[25]*STATES[26] -  CONSTANTS[41]*STATES[24];
ALGEBRAIC[34] =  CONSTANTS[43]*STATES[27];
ALGEBRAIC[35] =  CONSTANTS[44]*STATES[28]*STATES[26] -  CONSTANTS[45]*STATES[27];
ALGEBRAIC[36] = CONSTANTS[46] -  CONSTANTS[3]*STATES[26];
ALGEBRAIC[37] =  CONSTANTS[48]*STATES[28]*STATES[19] -  CONSTANTS[49]*STATES[29];
ALGEBRAIC[38] =  CONSTANTS[50]*STATES[32]*STATES[19] -  CONSTANTS[51]*STATES[30];
ALGEBRAIC[39] =  CONSTANTS[52]*STATES[25]*STATES[19] -  CONSTANTS[53]*STATES[31];
ALGEBRAIC[41] = CONSTANTS[47] -  CONSTANTS[3]*STATES[19];
ALGEBRAIC[40] =  CONSTANTS[54]*STATES[25] -  CONSTANTS[55]*STATES[32]*STATES[28];
ALGEBRAIC[42] =  CONSTANTS[56]*STATES[32] -  CONSTANTS[57]*STATES[7]*STATES[28];
ALGEBRAIC[45] =  CONSTANTS[61]*pow(STATES[33], 2.00000)*CONSTANTS[58];
ALGEBRAIC[46] =  CONSTANTS[62]*STATES[35]*STATES[33];
ALGEBRAIC[47] =  CONSTANTS[63]*STATES[36];
ALGEBRAIC[49] =  CONSTANTS[65]*STATES[38]*STATES[33];
ALGEBRAIC[44] =  CONSTANTS[60]*STATES[33]*STATES[34];
ALGEBRAIC[48] =  CONSTANTS[64]*STATES[37];
ALGEBRAIC[50] =  CONSTANTS[66]*STATES[39]*STATES[33];
ALGEBRAIC[51] =  CONSTANTS[69]*CONSTANTS[67]*STATES[34];
ALGEBRAIC[52] =  CONSTANTS[70]*pow(STATES[37], 2.00000)*STATES[34];
ALGEBRAIC[1] =  - CONSTANTS[3]*STATES[0];
ALGEBRAIC[3] =  CONSTANTS[4]*STATES[2]*STATES[0];
ALGEBRAIC[61] =  CONSTANTS[88]*STATES[36]*STATES[0];
ALGEBRAIC[53] =  CONSTANTS[74]*STATES[40]*STATES[41];
ALGEBRAIC[54] =  CONSTANTS[75]*STATES[40]*CONSTANTS[71];
ALGEBRAIC[57] =  CONSTANTS[76]*STATES[40]*CONSTANTS[72];
ALGEBRAIC[60] =  CONSTANTS[77]*STATES[40]*CONSTANTS[73];
ALGEBRAIC[63] =  CONSTANTS[78]*STATES[40]*STATES[9];
ALGEBRAIC[56] =  CONSTANTS[81]*STATES[36]*STATES[41];
ALGEBRAIC[55] = ((CONSTANTS[80] - STATES[41]) - STATES[37])/2.00000;
ALGEBRAIC[59] = ( CONSTANTS[82]*ALGEBRAIC[55])/(CONSTANTS[83]+ALGEBRAIC[55]);
ALGEBRAIC[62] =  CONSTANTS[84]*STATES[2]*STATES[41];
ALGEBRAIC[58] =  CONSTANTS[85]*STATES[36];
ALGEBRAIC[43] =  - CONSTANTS[3]*STATES[28];
ALGEBRAIC[64] =  CONSTANTS[86]*STATES[2]*STATES[28];
ALGEBRAIC[26] =  - CONSTANTS[3]*STATES[16];
ALGEBRAIC[65] =  CONSTANTS[87]*STATES[2]*STATES[16];
}