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 84 entries in the algebraic variable array. There are a total of 39 entries in each of the rate and state variable arrays. There are a total of 148 entries in the constant variable array. */ /* * CONSTANTS[0] is t_period in component Istim_parameters (ms). * CONSTANTS[1] is V_ICCrest in component Istim_parameters (mV). * CONSTANTS[2] is V_ICCamp in component Istim_parameters (mV). * CONSTANTS[3] is t_ICCpeak in component Istim_parameters (ms). * CONSTANTS[4] is t_slope in component Istim_parameters (ms). * CONSTANTS[5] is f_1 in component Istim_parameters (ms). * CONSTANTS[6] is f_2 in component Istim_parameters (ms). * CONSTANTS[7] is Gcouple in component Istim_parameters (nS). * VOI is time in component time (ms). * ALGEBRAIC[13] is I_stim in component Periodic_IStim_protocol (pA). * ALGEBRAIC[8] is V_ICC in component Periodic_IStim_protocol (mV). * STATES[0] is V in component Membrane_potential (mV). * ALGEBRAIC[82] is I_ion in component Membrane_potential (pA). * ALGEBRAIC[37] is I in component Ionic_currents (pA). * ALGEBRAIC[45] is I in component Ionic_currents (pA). * ALGEBRAIC[54] is I in component Ionic_currents (pA). * ALGEBRAIC[61] is I in component Ionic_currents (pA). * ALGEBRAIC[67] is I in component Ionic_currents (pA). * ALGEBRAIC[25] is I_NCX in component INCX (pA). * ALGEBRAIC[29] is I_NaK in component INaK (pA). * ALGEBRAIC[73] is I in component Ionic_currents (pA). * ALGEBRAIC[79] is I in component Ionic_currents (pA). * STATES[1] is Cai in component Cai (mM). * STATES[2] is Nai in component Nai (mM). * STATES[3] is Ki in component Ki (mM). * STATES[4] is O_CaL in component ICaL_channel_states (dimensionless). * ALGEBRAIC[17] is P_CaT in component ICaT (dimensionless). * STATES[5] is O4 in component IBK_channel_states (dimensionless). * ALGEBRAIC[21] is P_Kv in component IKv (dimensionless). * STATES[6] is O_Na in component INa_channel_states (dimensionless). * ALGEBRAIC[83] is norm in component ICaL_channel_states (dimensionless). * ALGEBRAIC[81] is norm in component IBK_channel_states (dimensionless). * ALGEBRAIC[56] is norm in component INa_channel_states (dimensionless). * STATES[7] is X in component gating_kinetics (dimensionless). * STATES[8] is X in component gating_kinetics (dimensionless). * STATES[9] is X in component gating_kinetics (dimensionless). * STATES[10] is X in component gating_kinetics (dimensionless). * CONSTANTS[8] is g_CaL in component g_parameters (nS). * CONSTANTS[9] is g_Kv in component g_parameters (nS). * CONSTANTS[10] is g_BK in component g_parameters (nS). * CONSTANTS[11] is g_Na in component g_parameters (nS). * CONSTANTS[12] is V_init in component initial_conditions (mV). * CONSTANTS[13] is Cm in component model_parameters (pF). * CONSTANTS[14] is R in component model_parameters (J_per_K_mol). * CONSTANTS[15] is T in component model_parameters (kelvin). * CONSTANTS[16] is F in component model_parameters (C_per_mmol). * CONSTANTS[17] is T0CaL in component model_parameters (kelvin). * CONSTANTS[18] is T0CaT in component model_parameters (kelvin). * CONSTANTS[19] is Q10Ca in component model_parameters (dimensionless). * CONSTANTS[20] is Cao in component model_parameters (mM). * CONSTANTS[21] is C0_init in component initial_conditions (dimensionless). * CONSTANTS[22] is C1_init in component initial_conditions (dimensionless). * CONSTANTS[23] is C2_init in component initial_conditions (dimensionless). * CONSTANTS[24] is C3_init in component initial_conditions (dimensionless). * CONSTANTS[25] is C0Ca_init in component initial_conditions (dimensionless). * CONSTANTS[26] is C1Ca_init in component initial_conditions (dimensionless). * CONSTANTS[27] is C2Ca_init in component initial_conditions (dimensionless). * CONSTANTS[28] is C3Ca_init in component initial_conditions (dimensionless). * CONSTANTS[29] is ICa_init in component initial_conditions (dimensionless). * CONSTANTS[30] is IVs_init in component initial_conditions (dimensionless). * CONSTANTS[31] is IVf_init in component initial_conditions (dimensionless). * CONSTANTS[32] is IVfCa_init in component initial_conditions (dimensionless). * CONSTANTS[33] is IVsCa_init in component initial_conditions (dimensionless). * CONSTANTS[34] is O_CaL_init in component initial_conditions (dimensionless). * CONSTANTS[35] is g_CaT in component model_parameters (nS). * CONSTANTS[36] is d_CaT_init in component initial_conditions (dimensionless). * CONSTANTS[37] is f_CaT_init in component initial_conditions (dimensionless). * CONSTANTS[38] is tau_dCaT in component model_parameters (ms). * CONSTANTS[39] is T0K in component model_parameters (kelvin). * CONSTANTS[40] is Q10K in component model_parameters (dimensionless). * CONSTANTS[41] is Ko in component model_parameters (mM). * CONSTANTS[42] is x_Kv_init in component initial_conditions (dimensionless). * CONSTANTS[43] is y_Kv_init in component initial_conditions (dimensionless). * CONSTANTS[44] is tau_xKv in component model_parameters (ms). * CONSTANTS[45] is tau_yKv in component model_parameters (ms). * CONSTANTS[46] is BK_C0_init in component initial_conditions (dimensionless). * CONSTANTS[47] is BK_C1_init in component initial_conditions (dimensionless). * CONSTANTS[48] is BK_C2_init in component initial_conditions (dimensionless). * CONSTANTS[49] is BK_C3_init in component initial_conditions (dimensionless). * CONSTANTS[50] is BK_C4_init in component initial_conditions (dimensionless). * CONSTANTS[51] is O0_init in component initial_conditions (dimensionless). * CONSTANTS[52] is O1_init in component initial_conditions (dimensionless). * CONSTANTS[53] is O2_init in component initial_conditions (dimensionless). * CONSTANTS[54] is O3_init in component initial_conditions (dimensionless). * CONSTANTS[55] is O4_init in component initial_conditions (dimensionless). * CONSTANTS[56] is k_on in component model_parameters (per_ms). * CONSTANTS[57] is k_off_C in component model_parameters (per_ms). * CONSTANTS[58] is k_off_O in component model_parameters (per_ms). * CONSTANTS[59] is T0Na in component model_parameters (kelvin). * CONSTANTS[60] is Q10Na in component model_parameters (dimensionless). * CONSTANTS[61] is Nao in component model_parameters (mM). * CONSTANTS[62] is Na_C1_init in component initial_conditions (dimensionless). * CONSTANTS[63] is Na_C2_init in component initial_conditions (dimensionless). * CONSTANTS[64] is Na_C3_init in component initial_conditions (dimensionless). * CONSTANTS[65] is I1_init in component initial_conditions (dimensionless). * CONSTANTS[66] is I2_init in component initial_conditions (dimensionless). * CONSTANTS[67] is O_Na_init in component initial_conditions (dimensionless). * CONSTANTS[68] is K_mCa in component model_parameters (mM). * CONSTANTS[69] is K_mNai in component model_parameters (mM). * CONSTANTS[70] is k_sat in component model_parameters (dimensionless). * CONSTANTS[71] is gamma in component model_parameters (dimensionless). * CONSTANTS[72] is P_NCX in component model_parameters (pA). * CONSTANTS[73] is K_mK in component model_parameters (mM). * CONSTANTS[74] is K_mNa in component model_parameters (mM). * CONSTANTS[75] is P_NaK in component model_parameters (pA). * CONSTANTS[76] is g_NsNa in component model_parameters (nS). * CONSTANTS[77] is g_NsK in component model_parameters (nS). * CONSTANTS[78] is n_CRT in component model_parameters (dimensionless). * CONSTANTS[79] is n_CaM in component model_parameters (dimensionless). * CONSTANTS[80] is CRT_total in component model_parameters (mM). * CONSTANTS[81] is CaM_total in component model_parameters (mM). * CONSTANTS[82] is K_D_CRT in component model_parameters (mM). * CONSTANTS[83] is K_D_CaM in component model_parameters (mM4). * CONSTANTS[84] is V_cell in component model_parameters (litre). * CONSTANTS[85] is Cai_total_init in component initial_conditions (mM). * CONSTANTS[86] is Cai_init in component initial_conditions (mM). * CONSTANTS[87] is Nai_init in component initial_conditions (mM). * CONSTANTS[88] is Ki_init in component initial_conditions (mM). * ALGEBRAIC[0] is t in component Periodic_IStim_protocol (ms). * CONSTANTS[89] is g_CaL in component model_parameters (nS). * CONSTANTS[90] is g_Kv in component model_parameters (nS). * CONSTANTS[91] is g_BK in component model_parameters (nS). * CONSTANTS[92] is g_Na in component model_parameters (nS). * CONSTANTS[93] is PO in component INS_Na (dimensionless). * CONSTANTS[94] is PO in component INS_K (dimensionless). * STATES[11] is Cai_total in component Cai (mM). * ALGEBRAIC[52] is Cai_total_rate in component Cai (mM_per_ms). * CONSTANTS[95] is Cvt in component Cai (fM_per_s2mM_per_ms). * CONSTANTS[96] is Cvt in component Nai (fM_per_s2mM_per_ms). * CONSTANTS[97] is Cvt in component Ki (fM_per_s2mM_per_ms). * ALGEBRAIC[33] is E in component Nernst_potential (mV). * STATES[12] is C0 in component ICaL_channel_states (dimensionless). * STATES[13] is C1 in component ICaL_channel_states (dimensionless). * STATES[14] is C2 in component ICaL_channel_states (dimensionless). * STATES[15] is C3 in component ICaL_channel_states (dimensionless). * STATES[16] is C0Ca in component ICaL_channel_states (dimensionless). * STATES[17] is C1Ca in component ICaL_channel_states (dimensionless). * STATES[18] is C2Ca in component ICaL_channel_states (dimensionless). * STATES[19] is C3Ca in component ICaL_channel_states (dimensionless). * STATES[20] is ICa in component ICaL_channel_states (dimensionless). * STATES[21] is IVs in component ICaL_channel_states (dimensionless). * STATES[22] is IVf in component ICaL_channel_states (dimensionless). * STATES[23] is IVfCa in component ICaL_channel_states (dimensionless). * STATES[24] is IVsCa in component ICaL_channel_states (dimensionless). * ALGEBRAIC[1] is alpha in component ICaL_channel_states (per_ms). * ALGEBRAIC[9] is beta in component ICaL_channel_states (per_ms). * ALGEBRAIC[14] is alpha_0 in component ICaL_channel_states (per_ms). * ALGEBRAIC[18] is alpha_1 in component ICaL_channel_states (per_ms). * ALGEBRAIC[22] is alpha_2 in component ICaL_channel_states (per_ms). * ALGEBRAIC[26] is alpha_3 in component ICaL_channel_states (per_ms). * ALGEBRAIC[31] is beta_0 in component ICaL_channel_states (per_ms). * ALGEBRAIC[36] is beta_1 in component ICaL_channel_states (per_ms). * ALGEBRAIC[40] is beta_2 in component ICaL_channel_states (per_ms). * ALGEBRAIC[44] is beta_3 in component ICaL_channel_states (per_ms). * CONSTANTS[147] is delta in component ICaL_channel_states (per_ms). * ALGEBRAIC[80] is theta in component ICaL_channel_states (per_ms). * ALGEBRAIC[53] is phi_s in component ICaL_channel_states (per_ms). * ALGEBRAIC[48] is phi_f in component ICaL_channel_states (per_ms). * ALGEBRAIC[71] is omega_s in component ICaL_channel_states (per_ms). * ALGEBRAIC[68] is omega_f in component ICaL_channel_states (per_ms). * ALGEBRAIC[77] is omega_fs in component ICaL_channel_states (per_ms). * ALGEBRAIC[74] is omega_sf in component ICaL_channel_states (per_ms). * ALGEBRAIC[66] is psi_s in component ICaL_channel_states (per_ms). * ALGEBRAIC[63] is psi_f in component ICaL_channel_states (per_ms). * ALGEBRAIC[60] is xi_s in component ICaL_channel_states (per_ms). * ALGEBRAIC[57] is xi_f in component ICaL_channel_states (per_ms). * CONSTANTS[133] is phi in component temperature_factor (dimensionless). * ALGEBRAIC[41] is E in component Nernst_potential (mV). * ALGEBRAIC[2] is X_inf in component d_inf (dimensionless). * CONSTANTS[134] is phi in component temperature_factor (dimensionless). * ALGEBRAIC[3] is X_inf in component f_inf (dimensionless). * ALGEBRAIC[10] is tau in component tau_f (ms). * CONSTANTS[135] is phi in component temperature_factor (dimensionless). * ALGEBRAIC[49] is E in component Nernst_potential (mV). * ALGEBRAIC[4] is X_inf in component x_inf (dimensionless). * CONSTANTS[136] is phi in component temperature_factor (dimensionless). * ALGEBRAIC[5] is X_inf in component y_inf (dimensionless). * CONSTANTS[137] is phi in component temperature_factor (dimensionless). * ALGEBRAIC[58] is E in component Nernst_potential (mV). * STATES[25] is C0 in component IBK_channel_states (dimensionless). * STATES[26] is C1 in component IBK_channel_states (dimensionless). * STATES[27] is C2 in component IBK_channel_states (dimensionless). * STATES[28] is C3 in component IBK_channel_states (dimensionless). * STATES[29] is C4 in component IBK_channel_states (dimensionless). * STATES[30] is O0 in component IBK_channel_states (dimensionless). * STATES[31] is O1 in component IBK_channel_states (dimensionless). * STATES[32] is O2 in component IBK_channel_states (dimensionless). * STATES[33] is O3 in component IBK_channel_states (dimensionless). * ALGEBRAIC[6] is alpha in component IBK_channel_states (per_ms). * ALGEBRAIC[11] is beta in component IBK_channel_states (per_ms). * ALGEBRAIC[15] is k_C0O0 in component IBK_channel_states (per_ms). * ALGEBRAIC[19] is k_C1O1 in component IBK_channel_states (per_ms). * ALGEBRAIC[23] is k_C2O2 in component IBK_channel_states (per_ms). * ALGEBRAIC[27] is k_C3O3 in component IBK_channel_states (per_ms). * ALGEBRAIC[32] is k_C4O4 in component IBK_channel_states (per_ms). * ALGEBRAIC[34] is k_O0C0 in component IBK_channel_states (per_ms). * ALGEBRAIC[38] is k_O1C1 in component IBK_channel_states (per_ms). * ALGEBRAIC[42] is k_O2C2 in component IBK_channel_states (per_ms). * ALGEBRAIC[46] is k_O3C3 in component IBK_channel_states (per_ms). * ALGEBRAIC[50] is k_O4C4 in component IBK_channel_states (per_ms). * ALGEBRAIC[55] is k_C0C1 in component IBK_channel_states (per_ms). * ALGEBRAIC[59] is k_C1C2 in component IBK_channel_states (per_ms). * ALGEBRAIC[62] is k_C2C3 in component IBK_channel_states (per_ms). * ALGEBRAIC[65] is k_C3C4 in component IBK_channel_states (per_ms). * CONSTANTS[138] is k_C4C3 in component IBK_channel_states (per_ms). * CONSTANTS[139] is k_C3C2 in component IBK_channel_states (per_ms). * CONSTANTS[140] is k_C2C1 in component IBK_channel_states (per_ms). * CONSTANTS[141] is k_C1C0 in component IBK_channel_states (per_ms). * ALGEBRAIC[69] is k_O0O1 in component IBK_channel_states (per_ms). * ALGEBRAIC[72] is k_O1O2 in component IBK_channel_states (per_ms). * ALGEBRAIC[75] is k_O2O3 in component IBK_channel_states (per_ms). * ALGEBRAIC[78] is k_O3O4 in component IBK_channel_states (per_ms). * CONSTANTS[142] is k_O4O3 in component IBK_channel_states (per_ms). * CONSTANTS[143] is k_O3O2 in component IBK_channel_states (per_ms). * CONSTANTS[144] is k_O2O1 in component IBK_channel_states (per_ms). * CONSTANTS[145] is k_O1O0 in component IBK_channel_states (per_ms). * ALGEBRAIC[64] is E in component Nernst_potential (mV). * STATES[34] is C1 in component INa_channel_states (dimensionless). * STATES[35] is C2 in component INa_channel_states (dimensionless). * STATES[36] is C3 in component INa_channel_states (dimensionless). * STATES[37] is I1 in component INa_channel_states (dimensionless). * STATES[38] is I2 in component INa_channel_states (dimensionless). * ALGEBRAIC[7] is k_I2I1 in component INa_channel_states (per_ms). * ALGEBRAIC[12] is k_I1O in component INa_channel_states (per_ms). * ALGEBRAIC[16] is k_OC1 in component INa_channel_states (per_ms). * ALGEBRAIC[20] is k_C1C2 in component INa_channel_states (per_ms). * ALGEBRAIC[24] is k_C2C3 in component INa_channel_states (per_ms). * ALGEBRAIC[28] is k_C3C2 in component INa_channel_states (per_ms). * ALGEBRAIC[30] is k_C2C1 in component INa_channel_states (per_ms). * ALGEBRAIC[35] is k_C1O in component INa_channel_states (per_ms). * ALGEBRAIC[39] is k_OI1 in component INa_channel_states (per_ms). * ALGEBRAIC[43] is k_I1I2 in component INa_channel_states (per_ms). * ALGEBRAIC[47] is k_I1C1 in component INa_channel_states (per_ms). * ALGEBRAIC[51] is k_C1I1 in component INa_channel_states (per_ms). * CONSTANTS[146] is phi in component temperature_factor (dimensionless). * ALGEBRAIC[70] is E in component Nernst_potential (mV). * ALGEBRAIC[76] is E in component Nernst_potential (mV). * CONSTANTS[98] is R in component constants (J_per_K_mol). * CONSTANTS[99] is F in component constants (C_per_mmol). * CONSTANTS[100] is z_Ca in component constants (dimensionless). * CONSTANTS[101] is z_Na in component constants (dimensionless). * CONSTANTS[102] is z_K in component constants (dimensionless). * CONSTANTS[103] is R in component constants (J_per_K_mol). * CONSTANTS[104] is F in component constants (C_per_mmol). * CONSTANTS[105] is z_Ca in component constants (dimensionless). * CONSTANTS[106] is z_Na in component constants (dimensionless). * CONSTANTS[107] is z_K in component constants (dimensionless). * CONSTANTS[108] is R in component constants (J_per_K_mol). * CONSTANTS[109] is F in component constants (C_per_mmol). * CONSTANTS[110] is z_K in component constants (dimensionless). * CONSTANTS[111] is z_Na in component constants (dimensionless). * CONSTANTS[112] is z_Ca in component constants (dimensionless). * CONSTANTS[113] is R in component constants (J_per_K_mol). * CONSTANTS[114] is F in component constants (C_per_mmol). * CONSTANTS[115] is z_K in component constants (dimensionless). * CONSTANTS[116] is z_Na in component constants (dimensionless). * CONSTANTS[117] is z_Ca in component constants (dimensionless). * CONSTANTS[118] is R in component constants (J_per_K_mol). * CONSTANTS[119] is F in component constants (C_per_mmol). * CONSTANTS[120] is z_Na in component constants (dimensionless). * CONSTANTS[121] is z_Ca in component constants (dimensionless). * CONSTANTS[122] is z_K in component constants (dimensionless). * CONSTANTS[123] is R in component constants (J_per_K_mol). * CONSTANTS[124] is F in component constants (C_per_mmol). * CONSTANTS[125] is z_Na in component constants (dimensionless). * CONSTANTS[126] is z_Ca in component constants (dimensionless). * CONSTANTS[127] is z_K in component constants (dimensionless). * CONSTANTS[128] is R in component constants (J_per_K_mol). * CONSTANTS[129] is F in component constants (C_per_mmol). * CONSTANTS[130] is z_K in component constants (dimensionless). * CONSTANTS[131] is z_Na in component constants (dimensionless). * CONSTANTS[132] is z_Ca in component constants (dimensionless). * RATES[0] is d/dt V in component Membrane_potential (mV). * RATES[11] is d/dt Cai_total in component Cai (mM). * RATES[1] is d/dt Cai in component Cai (mM). * RATES[2] is d/dt Nai in component Nai (mM). * RATES[3] is d/dt Ki in component Ki (mM). * RATES[15] is d/dt C3 in component ICaL_channel_states (dimensionless). * RATES[14] is d/dt C2 in component ICaL_channel_states (dimensionless). * RATES[13] is d/dt C1 in component ICaL_channel_states (dimensionless). * RATES[12] is d/dt C0 in component ICaL_channel_states (dimensionless). * RATES[19] is d/dt C3Ca in component ICaL_channel_states (dimensionless). * RATES[18] is d/dt C2Ca in component ICaL_channel_states (dimensionless). * RATES[17] is d/dt C1Ca in component ICaL_channel_states (dimensionless). * RATES[16] is d/dt C0Ca in component ICaL_channel_states (dimensionless). * RATES[4] is d/dt O_CaL in component ICaL_channel_states (dimensionless). * RATES[20] is d/dt ICa in component ICaL_channel_states (dimensionless). * RATES[21] is d/dt IVs in component ICaL_channel_states (dimensionless). * RATES[22] is d/dt IVf in component ICaL_channel_states (dimensionless). * RATES[24] is d/dt IVsCa in component ICaL_channel_states (dimensionless). * RATES[23] is d/dt IVfCa in component ICaL_channel_states (dimensionless). * RATES[7] is d/dt X in component gating_kinetics (dimensionless). * RATES[8] is d/dt X in component gating_kinetics (dimensionless). * RATES[9] is d/dt X in component gating_kinetics (dimensionless). * RATES[10] is d/dt X in component gating_kinetics (dimensionless). * RATES[29] is d/dt C4 in component IBK_channel_states (dimensionless). * RATES[28] is d/dt C3 in component IBK_channel_states (dimensionless). * RATES[27] is d/dt C2 in component IBK_channel_states (dimensionless). * RATES[26] is d/dt C1 in component IBK_channel_states (dimensionless). * RATES[25] is d/dt C0 in component IBK_channel_states (dimensionless). * RATES[5] is d/dt O4 in component IBK_channel_states (dimensionless). * RATES[33] is d/dt O3 in component IBK_channel_states (dimensionless). * RATES[32] is d/dt O2 in component IBK_channel_states (dimensionless). * RATES[31] is d/dt O1 in component IBK_channel_states (dimensionless). * RATES[30] is d/dt O0 in component IBK_channel_states (dimensionless). * RATES[36] is d/dt C3 in component INa_channel_states (dimensionless). * RATES[35] is d/dt C2 in component INa_channel_states (dimensionless). * RATES[34] is d/dt C1 in component INa_channel_states (dimensionless). * RATES[6] is d/dt O_Na in component INa_channel_states (dimensionless). * RATES[38] is d/dt I2 in component INa_channel_states (dimensionless). * RATES[37] is d/dt I1 in component INa_channel_states (dimensionless). */ void initConsts(double* CONSTANTS, double* RATES, double *STATES) { CONSTANTS[0] = 10000; CONSTANTS[1] = -57; CONSTANTS[2] = 33.5; CONSTANTS[3] = 300; CONSTANTS[4] = 600; CONSTANTS[5] = 12000; CONSTANTS[6] = 300; CONSTANTS[7] = 2.6; CONSTANTS[8] = 1.44; CONSTANTS[9] = 1.0217; CONSTANTS[10] = 80; CONSTANTS[11] = 25.1; CONSTANTS[12] = -73.5049651455872; CONSTANTS[13] = 50; CONSTANTS[14] = 8.314; CONSTANTS[15] = 310; CONSTANTS[16] = 96.48534; CONSTANTS[17] = 310; CONSTANTS[18] = 297; CONSTANTS[19] = 2.1; CONSTANTS[20] = 2; CONSTANTS[21] = 0.815464741971086; CONSTANTS[22] = 0.152399266235657; CONSTANTS[23] = 0.0106805060777161; CONSTANTS[24] = 0.000332673548872087; CONSTANTS[25] = 0.0175888495282545; CONSTANTS[26] = 0.00328711668724504; CONSTANTS[27] = 0.000230369020877669; CONSTANTS[28] = 7.1754726923539e-6; CONSTANTS[29] = 8.38123983500905e-8; CONSTANTS[30] = 1.1193313274705e-6; CONSTANTS[31] = 4.0998751301597e-6; CONSTANTS[32] = 8.84306615061238e-8; CONSTANTS[33] = 2.41429816075123e-8; CONSTANTS[34] = 3.88576045134351e-6; CONSTANTS[35] = 0.0425; CONSTANTS[36] = 0.0791635737410974; CONSTANTS[37] = 0.377831534375835; CONSTANTS[38] = 1.9508; CONSTANTS[39] = 297; CONSTANTS[40] = 3.1; CONSTANTS[41] = 5.4; CONSTANTS[42] = 0.14714161078933; CONSTANTS[43] = 0.99994773314105; CONSTANTS[44] = 4.7803; CONSTANTS[45] = 763.7564; CONSTANTS[46] = 0.48379087935899; CONSTANTS[47] = 0.385183559520031; CONSTANTS[48] = 0.115002824567753; CONSTANTS[49] = 0.0152602714149774; CONSTANTS[50] = 0.000759264410974374; CONSTANTS[51] = 6.94960798375172e-7; CONSTANTS[52] = 5.55636826398253e-8; CONSTANTS[53] = 2.85143702125325e-8; CONSTANTS[54] = 1.59832806123435e-6; CONSTANTS[55] = 1.82113764497095e-6; CONSTANTS[56] = 40633; CONSTANTS[57] = 11; CONSTANTS[58] = 1.1; CONSTANTS[59] = 297; CONSTANTS[60] = 2.45; CONSTANTS[61] = 140; CONSTANTS[62] = 0.0119443135223679; CONSTANTS[63] = 0.0109545368437155; CONSTANTS[64] = 0.973782548650071; CONSTANTS[65] = 0.000126882921013389; CONSTANTS[66] = 0.00318975045717667; CONSTANTS[67] = 1.96760342050475e-6; CONSTANTS[68] = 1.38; CONSTANTS[69] = 87.5; CONSTANTS[70] = 0.1; CONSTANTS[71] = 0.35; CONSTANTS[72] = 1992.1865; CONSTANTS[73] = 1; CONSTANTS[74] = 40; CONSTANTS[75] = 16.197; CONSTANTS[76] = 0.022488; CONSTANTS[77] = 0.017512; CONSTANTS[78] = 1; CONSTANTS[79] = 4; CONSTANTS[80] = 0.034; CONSTANTS[81] = 0.012; CONSTANTS[82] = 0.0009; CONSTANTS[83] = 0.0001; CONSTANTS[84] = 3.5e-12; CONSTANTS[85] = 0.004914; CONSTANTS[86] = 5.38843941249284e-5; CONSTANTS[87] = 10.5731241425458; CONSTANTS[88] = 153.604280337996; CONSTANTS[89] = 1.44; CONSTANTS[90] = 1.0217; CONSTANTS[91] = 80; CONSTANTS[92] = 25.1; CONSTANTS[93] = 1; CONSTANTS[94] = 1; CONSTANTS[95] = 1e-15; CONSTANTS[96] = 1e-15; CONSTANTS[97] = 1e-15; CONSTANTS[98] = 8.314; CONSTANTS[99] = 96.48534; CONSTANTS[100] = 2; CONSTANTS[101] = 1; CONSTANTS[102] = 1; CONSTANTS[103] = 8.314; CONSTANTS[104] = 96.48534; CONSTANTS[105] = 2; CONSTANTS[106] = 1; CONSTANTS[107] = 1; CONSTANTS[108] = 8.314; CONSTANTS[109] = 96.48534; CONSTANTS[110] = 1; CONSTANTS[111] = 1; CONSTANTS[112] = 2; CONSTANTS[113] = 8.314; CONSTANTS[114] = 96.48534; CONSTANTS[115] = 1; CONSTANTS[116] = 1; CONSTANTS[117] = 2; CONSTANTS[118] = 8.314; CONSTANTS[119] = 96.48534; CONSTANTS[120] = 1; CONSTANTS[121] = 2; CONSTANTS[122] = 1; CONSTANTS[123] = 8.314; CONSTANTS[124] = 96.48534; CONSTANTS[125] = 1; CONSTANTS[126] = 2; CONSTANTS[127] = 1; CONSTANTS[128] = 8.314; CONSTANTS[129] = 96.48534; CONSTANTS[130] = 1; CONSTANTS[131] = 1; CONSTANTS[132] = 2; CONSTANTS[133] = pow(CONSTANTS[19], (CONSTANTS[15] - CONSTANTS[17])/10.0000); CONSTANTS[134] = pow(CONSTANTS[19], (CONSTANTS[15] - CONSTANTS[18])/10.0000); CONSTANTS[135] = pow(CONSTANTS[19], (CONSTANTS[15] - CONSTANTS[18])/10.0000); CONSTANTS[136] = pow(CONSTANTS[40], (CONSTANTS[15] - CONSTANTS[39])/10.0000); CONSTANTS[137] = pow(CONSTANTS[40], (CONSTANTS[15] - CONSTANTS[39])/10.0000); CONSTANTS[138] = 4.00000*CONSTANTS[57]; CONSTANTS[139] = 3.00000*CONSTANTS[57]; CONSTANTS[140] = 2.00000*CONSTANTS[57]; CONSTANTS[141] = 1.00000*CONSTANTS[57]; CONSTANTS[142] = 4.00000*CONSTANTS[58]; CONSTANTS[143] = 3.00000*CONSTANTS[58]; CONSTANTS[144] = 2.00000*CONSTANTS[58]; CONSTANTS[145] = 1.00000*CONSTANTS[58]; CONSTANTS[146] = pow(CONSTANTS[60], (CONSTANTS[15] - CONSTANTS[59])/10.0000); CONSTANTS[147] = CONSTANTS[133]*0.0100000; STATES[0] = CONSTANTS[12]; STATES[1] = CONSTANTS[86]; STATES[2] = CONSTANTS[87]; STATES[3] = CONSTANTS[88]; STATES[4] = CONSTANTS[34]; STATES[5] = CONSTANTS[55]; STATES[6] = CONSTANTS[67]; STATES[7] = CONSTANTS[36]; STATES[8] = CONSTANTS[37]; STATES[9] = CONSTANTS[42]; STATES[10] = CONSTANTS[43]; STATES[11] = CONSTANTS[85]; STATES[12] = CONSTANTS[21]; STATES[13] = CONSTANTS[22]; STATES[14] = CONSTANTS[23]; STATES[15] = CONSTANTS[24]; STATES[16] = CONSTANTS[25]; STATES[17] = CONSTANTS[26]; STATES[18] = CONSTANTS[27]; STATES[19] = CONSTANTS[28]; STATES[20] = CONSTANTS[29]; STATES[21] = CONSTANTS[30]; STATES[22] = CONSTANTS[31]; STATES[23] = CONSTANTS[32]; STATES[24] = CONSTANTS[32]; STATES[25] = CONSTANTS[46]; STATES[26] = CONSTANTS[47]; STATES[27] = CONSTANTS[48]; STATES[28] = CONSTANTS[49]; STATES[29] = CONSTANTS[50]; STATES[30] = CONSTANTS[51]; STATES[31] = CONSTANTS[52]; STATES[32] = CONSTANTS[53]; STATES[33] = CONSTANTS[54]; STATES[34] = CONSTANTS[62]; STATES[35] = CONSTANTS[63]; STATES[36] = CONSTANTS[64]; STATES[37] = CONSTANTS[65]; STATES[38] = CONSTANTS[66]; } void computeRates(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC) { ALGEBRAIC[2] = 1.00000/(1.00000+exp(- (STATES[0]+60.5000)/5.30000)); RATES[7] = ((ALGEBRAIC[2] - STATES[7])/CONSTANTS[38])*CONSTANTS[134]; ALGEBRAIC[4] = 1.00000/(1.00000+exp(- (STATES[0]+43.0000)/17.3600)); RATES[9] = ((ALGEBRAIC[4] - STATES[9])/CONSTANTS[44])*CONSTANTS[136]; ALGEBRAIC[5] = 1.00000/(1.00000+exp((STATES[0] - 44.9000)/12.0096)); RATES[10] = ((ALGEBRAIC[5] - STATES[10])/CONSTANTS[45])*CONSTANTS[137]; ALGEBRAIC[3] = 1.00000/(1.00000+exp((STATES[0]+75.5000)/4.00000)); ALGEBRAIC[10] = 0.381170*(8.60000+ 14.7000*exp(- pow(STATES[0]+50.0000, 2.00000)/( 900.000*1.00000))); RATES[8] = ((ALGEBRAIC[3] - STATES[8])/ALGEBRAIC[10])*CONSTANTS[135]; ALGEBRAIC[33] = (( CONSTANTS[98]*CONSTANTS[15])/( CONSTANTS[100]*CONSTANTS[99]))*log(CONSTANTS[20]/STATES[1]); ALGEBRAIC[37] = CONSTANTS[8]*STATES[4]*(STATES[0] - ALGEBRAIC[33]); ALGEBRAIC[17] = STATES[7]*STATES[8]; ALGEBRAIC[41] = (( CONSTANTS[103]*CONSTANTS[15])/( CONSTANTS[105]*CONSTANTS[104]))*log(CONSTANTS[20]/STATES[1]); ALGEBRAIC[45] = CONSTANTS[35]*ALGEBRAIC[17]*(STATES[0] - ALGEBRAIC[41]); ALGEBRAIC[25] = ( CONSTANTS[72]*( exp(( CONSTANTS[71]*STATES[0]*CONSTANTS[16])/( CONSTANTS[14]*CONSTANTS[15]))*pow(STATES[2], 3.00000)*CONSTANTS[20] - 2.50000*exp(( (CONSTANTS[71] - 1.00000)*STATES[0]*CONSTANTS[16])/( CONSTANTS[14]*CONSTANTS[15]))*pow(CONSTANTS[61], 3.00000)*STATES[1]))/( (pow(CONSTANTS[69], 3.00000)+pow(CONSTANTS[61], 3.00000))*(CONSTANTS[68]+CONSTANTS[20])*(1.00000+ CONSTANTS[70]*exp(( (CONSTANTS[71] - 1.00000)*STATES[0]*CONSTANTS[16])/( CONSTANTS[14]*CONSTANTS[15])))); RATES[11] = ( - ((ALGEBRAIC[37]+ALGEBRAIC[45]) - 2.00000*ALGEBRAIC[25])*CONSTANTS[95])/( 2.00000*CONSTANTS[16]*CONSTANTS[84]); ALGEBRAIC[52] = ( - ((ALGEBRAIC[37]+ALGEBRAIC[45]) - 2.00000*ALGEBRAIC[25])*CONSTANTS[95])/( 2.00000*CONSTANTS[16]*CONSTANTS[84]); RATES[1] = ALGEBRAIC[52]/(1.00000+( CONSTANTS[78]*CONSTANTS[80]*CONSTANTS[82]*pow(STATES[1], CONSTANTS[78] - 1.00000))/pow(pow(STATES[1], CONSTANTS[78])+CONSTANTS[82], 2.00000)+( CONSTANTS[79]*CONSTANTS[81]*CONSTANTS[83]*pow(STATES[1], CONSTANTS[79] - 1.00000))/pow(pow(STATES[1], CONSTANTS[79])+CONSTANTS[83], 2.00000)); ALGEBRAIC[56] = STATES[6]+STATES[34]+STATES[35]+STATES[36]+STATES[37]+STATES[38]; ALGEBRAIC[24] = CONSTANTS[146]*0.554320*exp(- 0.0990740+ 0.0364410*STATES[0]); ALGEBRAIC[28] = CONSTANTS[146]*0.000525480*exp(- 0.0691020+ 0.00319450*STATES[0]); RATES[36] = ( - ALGEBRAIC[28]*STATES[36])/ALGEBRAIC[56]+( ALGEBRAIC[24]*STATES[35])/ALGEBRAIC[56]; ALGEBRAIC[20] = CONSTANTS[146]*3.15660*exp(0.363520+ 0.0771930*STATES[0]); ALGEBRAIC[30] = CONSTANTS[146]*1.44960*exp(- 0.156600+ 0.0583530*STATES[0]); RATES[35] = ( - (ALGEBRAIC[30]+ALGEBRAIC[24])*STATES[35])/ALGEBRAIC[56]+( ALGEBRAIC[20]*STATES[34])/ALGEBRAIC[56]+( ALGEBRAIC[28]*STATES[36])/ALGEBRAIC[56]; ALGEBRAIC[16] = CONSTANTS[146]*2.39100*exp(- 13.3350 - 0.252890*STATES[0]); ALGEBRAIC[35] = CONSTANTS[146]*1.53290*exp(0.00931930+ 0.0410750*STATES[0]); ALGEBRAIC[47] = CONSTANTS[146]*1.90460*exp(- 2.48400+ 0.0204060*STATES[0]); ALGEBRAIC[51] = CONSTANTS[146]*0.000216880*exp(- 0.0634380+ 0.00466830*STATES[0]); RATES[34] = ( - (ALGEBRAIC[20]+ALGEBRAIC[35]+ALGEBRAIC[51])*STATES[34])/ALGEBRAIC[56]+( ALGEBRAIC[16]*STATES[6])/ALGEBRAIC[56]+( ALGEBRAIC[30]*STATES[35])/ALGEBRAIC[56]+( ALGEBRAIC[47]*STATES[37])/ALGEBRAIC[56]; ALGEBRAIC[12] = CONSTANTS[146]*0.120520*exp(- 9.60280+ 0.0830250*STATES[0]); ALGEBRAIC[39] = CONSTANTS[146]*1.61640*exp(0.307630+ 0.00605350*STATES[0]); RATES[6] = ( - (ALGEBRAIC[16]+ALGEBRAIC[39])*STATES[6])/ALGEBRAIC[56]+( ALGEBRAIC[35]*STATES[34])/ALGEBRAIC[56]+( ALGEBRAIC[12]*STATES[37])/ALGEBRAIC[56]; ALGEBRAIC[7] = CONSTANTS[146]*0.00392390*exp(2.67930+ 0.00614680*STATES[0]); ALGEBRAIC[43] = CONSTANTS[146]*0.0277350*exp(0.0514900 - 0.0468650*STATES[0]); RATES[38] = ( - ALGEBRAIC[7]*STATES[38])/ALGEBRAIC[56]+( ALGEBRAIC[43]*STATES[37])/ALGEBRAIC[56]; RATES[37] = ( - (ALGEBRAIC[12]+ALGEBRAIC[43]+ALGEBRAIC[47])*STATES[37])/ALGEBRAIC[56]+( ALGEBRAIC[7]*STATES[38])/ALGEBRAIC[56]+( ALGEBRAIC[51]*STATES[34])/ALGEBRAIC[56]+( ALGEBRAIC[39]*STATES[6])/ALGEBRAIC[56]; ALGEBRAIC[64] = (( CONSTANTS[118]*CONSTANTS[15])/( CONSTANTS[120]*CONSTANTS[119]))*log(CONSTANTS[61]/STATES[2]); ALGEBRAIC[67] = CONSTANTS[11]*STATES[6]*(STATES[0] - ALGEBRAIC[64]); ALGEBRAIC[29] = ( CONSTANTS[75]*CONSTANTS[41]*STATES[2])/( (CONSTANTS[41]+CONSTANTS[73])*(CONSTANTS[74]+STATES[2])*(1.00000+ 0.124500*exp(( - 0.100000*STATES[0]*CONSTANTS[16])/( CONSTANTS[14]*CONSTANTS[15]))+ 0.0353000*exp(( - STATES[0]*CONSTANTS[16])/( CONSTANTS[14]*CONSTANTS[15])))); ALGEBRAIC[70] = (( CONSTANTS[123]*CONSTANTS[15])/( CONSTANTS[125]*CONSTANTS[124]))*log(CONSTANTS[61]/STATES[2]); ALGEBRAIC[73] = CONSTANTS[76]*CONSTANTS[93]*(STATES[0] - ALGEBRAIC[70]); RATES[2] = ( - (ALGEBRAIC[67]+ 3.00000*ALGEBRAIC[29]+ 3.00000*ALGEBRAIC[25]+ALGEBRAIC[73])*CONSTANTS[96])/( CONSTANTS[16]*CONSTANTS[84]); ALGEBRAIC[0] = (int)(VOI) % (int)(CONSTANTS[0]); ALGEBRAIC[8] = (ALGEBRAIC[0]<CONSTANTS[3] ? CONSTANTS[1]+( CONSTANTS[2]*ALGEBRAIC[0])/CONSTANTS[6] : CONSTANTS[1]+( CONSTANTS[2]*(1.00000+exp(- CONSTANTS[5]/( 2.00000*CONSTANTS[4]))))/(1.00000+exp(((ALGEBRAIC[0] - CONSTANTS[6]) - 0.500000*CONSTANTS[5])/CONSTANTS[4]))); ALGEBRAIC[13] = CONSTANTS[7]*(STATES[0] - ALGEBRAIC[8]); ALGEBRAIC[21] = STATES[9]*STATES[10]; ALGEBRAIC[49] = (( CONSTANTS[108]*CONSTANTS[15])/( CONSTANTS[110]*CONSTANTS[109]))*log(CONSTANTS[41]/STATES[3]); ALGEBRAIC[54] = CONSTANTS[9]*ALGEBRAIC[21]*(STATES[0] - ALGEBRAIC[49]); ALGEBRAIC[58] = (( CONSTANTS[113]*CONSTANTS[15])/( CONSTANTS[115]*CONSTANTS[114]))*log(CONSTANTS[41]/STATES[3]); ALGEBRAIC[61] = CONSTANTS[10]*STATES[5]*(STATES[0] - ALGEBRAIC[58]); ALGEBRAIC[76] = (( CONSTANTS[128]*CONSTANTS[15])/( CONSTANTS[130]*CONSTANTS[129]))*log(CONSTANTS[41]/STATES[3]); ALGEBRAIC[79] = CONSTANTS[77]*CONSTANTS[94]*(STATES[0] - ALGEBRAIC[76]); RATES[3] = ( - (((ALGEBRAIC[54]+ALGEBRAIC[61]+ALGEBRAIC[13]) - 2.00000*ALGEBRAIC[29])+ALGEBRAIC[79])*CONSTANTS[97])/( CONSTANTS[16]*CONSTANTS[84]); ALGEBRAIC[81] = STATES[25]+STATES[26]+STATES[27]+STATES[28]+STATES[29]+STATES[30]+STATES[31]+STATES[32]+STATES[33]+STATES[5]; ALGEBRAIC[6] = 1.00000*exp(( 8.47188*STATES[0])/( 1.00000*CONSTANTS[15])); ALGEBRAIC[32] = 0.0443240*ALGEBRAIC[6]; ALGEBRAIC[11] = 1.00000*exp(( - 7.77556*STATES[0])/( 1.00000*CONSTANTS[15])); ALGEBRAIC[50] = 0.000106000*ALGEBRAIC[11]; ALGEBRAIC[65] = 1.00000*CONSTANTS[56]*STATES[1]; RATES[29] = ( - (CONSTANTS[138]+ALGEBRAIC[32])*STATES[29])/ALGEBRAIC[81]+( ALGEBRAIC[65]*STATES[28])/ALGEBRAIC[81]+( ALGEBRAIC[50]*STATES[5])/ALGEBRAIC[81]; ALGEBRAIC[27] = 0.000781000*ALGEBRAIC[6]; ALGEBRAIC[46] = 0.0953120*ALGEBRAIC[11]; ALGEBRAIC[62] = 2.00000*CONSTANTS[56]*STATES[1]; RATES[28] = ( - (CONSTANTS[139]+ALGEBRAIC[27]+ALGEBRAIC[65])*STATES[28])/ALGEBRAIC[81]+( ALGEBRAIC[62]*STATES[27])/ALGEBRAIC[81]+( ALGEBRAIC[46]*STATES[33])/ALGEBRAIC[81]+( CONSTANTS[138]*STATES[29])/ALGEBRAIC[81]; ALGEBRAIC[23] = 2.81000e-05*ALGEBRAIC[6]; ALGEBRAIC[42] = 32.6594*ALGEBRAIC[11]; ALGEBRAIC[59] = 3.00000*CONSTANTS[56]*STATES[1]; RATES[27] = ( - (CONSTANTS[140]+ALGEBRAIC[23]+ALGEBRAIC[62])*STATES[27])/ALGEBRAIC[81]+( ALGEBRAIC[59]*STATES[26])/ALGEBRAIC[81]+( ALGEBRAIC[42]*STATES[32])/ALGEBRAIC[81]+( CONSTANTS[139]*STATES[28])/ALGEBRAIC[81]; ALGEBRAIC[19] = 0.000869000*ALGEBRAIC[6]; ALGEBRAIC[38] = 144.174*ALGEBRAIC[11]; ALGEBRAIC[55] = 4.00000*CONSTANTS[56]*STATES[1]; RATES[26] = ( - (CONSTANTS[141]+ALGEBRAIC[19]+ALGEBRAIC[59])*STATES[26])/ALGEBRAIC[81]+( ALGEBRAIC[55]*STATES[25])/ALGEBRAIC[81]+( ALGEBRAIC[38]*STATES[31])/ALGEBRAIC[81]+( CONSTANTS[140]*STATES[27])/ALGEBRAIC[81]; ALGEBRAIC[15] = 0.0216200*ALGEBRAIC[6]; ALGEBRAIC[34] = 318.108*ALGEBRAIC[11]; RATES[25] = ( - (ALGEBRAIC[55]+ALGEBRAIC[15])*STATES[25])/ALGEBRAIC[81]+( CONSTANTS[141]*STATES[26])/ALGEBRAIC[81]+( ALGEBRAIC[34]*STATES[30])/ALGEBRAIC[81]; ALGEBRAIC[78] = 1.00000*CONSTANTS[56]*STATES[1]; RATES[5] = ( - (CONSTANTS[142]+ALGEBRAIC[50])*STATES[5])/ALGEBRAIC[81]+( ALGEBRAIC[78]*STATES[33])/ALGEBRAIC[81]+( ALGEBRAIC[32]*STATES[29])/ALGEBRAIC[81]; ALGEBRAIC[75] = 2.00000*CONSTANTS[56]*STATES[1]; RATES[33] = ( - (CONSTANTS[143]+ALGEBRAIC[46]+ALGEBRAIC[78])*STATES[33])/ALGEBRAIC[81]+( ALGEBRAIC[75]*STATES[32])/ALGEBRAIC[81]+( ALGEBRAIC[27]*STATES[28])/ALGEBRAIC[81]+( CONSTANTS[142]*STATES[5])/ALGEBRAIC[81]; ALGEBRAIC[72] = 3.00000*CONSTANTS[56]*STATES[1]; RATES[32] = ( - (CONSTANTS[144]+ALGEBRAIC[42]+ALGEBRAIC[75])*STATES[32])/ALGEBRAIC[81]+( ALGEBRAIC[72]*STATES[31])/ALGEBRAIC[81]+( ALGEBRAIC[23]*STATES[27])/ALGEBRAIC[81]+( CONSTANTS[143]*STATES[33])/ALGEBRAIC[81]; ALGEBRAIC[69] = 4.00000*CONSTANTS[56]*STATES[1]; RATES[31] = ( - (CONSTANTS[145]+ALGEBRAIC[38]+ALGEBRAIC[72])*STATES[31])/ALGEBRAIC[81]+( ALGEBRAIC[69]*STATES[30])/ALGEBRAIC[81]+( ALGEBRAIC[19]*STATES[26])/ALGEBRAIC[81]+( CONSTANTS[144]*STATES[32])/ALGEBRAIC[81]; RATES[30] = ( - (ALGEBRAIC[69]+ALGEBRAIC[34])*STATES[30])/ALGEBRAIC[81]+( CONSTANTS[145]*STATES[31])/ALGEBRAIC[81]+( ALGEBRAIC[15]*STATES[25])/ALGEBRAIC[81]; ALGEBRAIC[82] = ALGEBRAIC[37]+ALGEBRAIC[45]+ALGEBRAIC[54]+ALGEBRAIC[61]+ALGEBRAIC[67]+ALGEBRAIC[25]+ALGEBRAIC[29]+ALGEBRAIC[73]+ALGEBRAIC[79]; RATES[0] = - (ALGEBRAIC[13]+ALGEBRAIC[82])/CONSTANTS[13]; ALGEBRAIC[83] = STATES[15]+STATES[14]+STATES[13]+STATES[12]+STATES[19]+STATES[18]+STATES[17]+STATES[16]+STATES[4]+STATES[20]+STATES[21]+STATES[22]+STATES[24]+STATES[23]; ALGEBRAIC[1] = CONSTANTS[133]*0.731000*exp(STATES[0]/30.0000); ALGEBRAIC[22] = 2.00000*ALGEBRAIC[1]; ALGEBRAIC[26] = 1.00000*ALGEBRAIC[1]; ALGEBRAIC[9] = CONSTANTS[133]*0.214900*exp(- STATES[0]/40.0000); ALGEBRAIC[40] = 3.00000*ALGEBRAIC[9]; ALGEBRAIC[44] = 4.00000*ALGEBRAIC[9]; ALGEBRAIC[80] = ( CONSTANTS[133]*4.00000)/(1.00000+1.00000/STATES[1]); ALGEBRAIC[53] = CONSTANTS[133]*0.00595600*exp(- STATES[0]/40.0000); ALGEBRAIC[48] = CONSTANTS[133]*0.474200*exp(STATES[0]/10.0000); ALGEBRAIC[66] = CONSTANTS[133]*0.00232000*exp(- STATES[0]/280.000); ALGEBRAIC[60] = CONSTANTS[133]*0.0121300*exp(STATES[0]/500.000); ALGEBRAIC[71] = ( ALGEBRAIC[44]*ALGEBRAIC[60]*ALGEBRAIC[53])/( ALGEBRAIC[26]*ALGEBRAIC[66]); ALGEBRAIC[63] = CONSTANTS[133]*0.0219700*exp(STATES[0]/500.000); ALGEBRAIC[57] = CONSTANTS[133]*0.0140700*exp(- STATES[0]/300.000); ALGEBRAIC[68] = ( ALGEBRAIC[44]*ALGEBRAIC[57]*ALGEBRAIC[48])/( ALGEBRAIC[26]*ALGEBRAIC[63]); RATES[15] = (( ALGEBRAIC[22]*STATES[14])/ALGEBRAIC[83] - ( (ALGEBRAIC[26]+ALGEBRAIC[40]+ALGEBRAIC[53]+ALGEBRAIC[48]+ALGEBRAIC[80])*STATES[15])/ALGEBRAIC[83])+( ALGEBRAIC[44]*STATES[4])/ALGEBRAIC[83]+( ALGEBRAIC[68]*STATES[22])/ALGEBRAIC[83]+( ALGEBRAIC[71]*STATES[21])/ALGEBRAIC[83]+( CONSTANTS[147]*STATES[19])/ALGEBRAIC[83]; ALGEBRAIC[18] = 3.00000*ALGEBRAIC[1]; ALGEBRAIC[36] = 2.00000*ALGEBRAIC[9]; RATES[14] = (( ALGEBRAIC[18]*STATES[13])/ALGEBRAIC[83] - ( (ALGEBRAIC[22]+ALGEBRAIC[36]+ALGEBRAIC[80])*STATES[14])/ALGEBRAIC[83])+( ALGEBRAIC[40]*STATES[15])/ALGEBRAIC[83]+( CONSTANTS[147]*STATES[18])/ALGEBRAIC[83]; ALGEBRAIC[14] = 4.00000*ALGEBRAIC[1]; ALGEBRAIC[31] = 1.00000*ALGEBRAIC[9]; RATES[13] = (( ALGEBRAIC[14]*STATES[12])/ALGEBRAIC[83] - ( (ALGEBRAIC[18]+ALGEBRAIC[31]+ALGEBRAIC[80])*STATES[13])/ALGEBRAIC[83])+( ALGEBRAIC[36]*STATES[14])/ALGEBRAIC[83]+( CONSTANTS[147]*STATES[17])/ALGEBRAIC[83]; RATES[12] = ( - (ALGEBRAIC[14]+ALGEBRAIC[80])*STATES[12])/ALGEBRAIC[83]+( ALGEBRAIC[31]*STATES[13])/ALGEBRAIC[83]+( CONSTANTS[147]*STATES[16])/ALGEBRAIC[83]; RATES[19] = ((( ALGEBRAIC[80]*STATES[15])/ALGEBRAIC[83]+( ALGEBRAIC[22]*STATES[18])/ALGEBRAIC[83]) - ( (ALGEBRAIC[26]+ALGEBRAIC[40]+ALGEBRAIC[48]+ALGEBRAIC[53]+CONSTANTS[147])*STATES[19])/ALGEBRAIC[83])+( ALGEBRAIC[44]*STATES[20])/ALGEBRAIC[83]+( ALGEBRAIC[68]*STATES[23])/ALGEBRAIC[83]+( ALGEBRAIC[71]*STATES[24])/ALGEBRAIC[83]; RATES[18] = ((( ALGEBRAIC[80]*STATES[14])/ALGEBRAIC[83]+( ALGEBRAIC[18]*STATES[17])/ALGEBRAIC[83]) - ( (ALGEBRAIC[22]+ALGEBRAIC[36]+CONSTANTS[147])*STATES[18])/ALGEBRAIC[83])+( ALGEBRAIC[40]*STATES[19])/ALGEBRAIC[83]; RATES[17] = ((( ALGEBRAIC[80]*STATES[13])/ALGEBRAIC[83]+( ALGEBRAIC[14]*STATES[16])/ALGEBRAIC[83]) - ( (ALGEBRAIC[18]+ALGEBRAIC[31]+CONSTANTS[147])*STATES[17])/ALGEBRAIC[83])+( ALGEBRAIC[36]*STATES[18])/ALGEBRAIC[83]; RATES[16] = (( ALGEBRAIC[80]*STATES[12])/ALGEBRAIC[83] - ( (ALGEBRAIC[14]+CONSTANTS[147])*STATES[16])/ALGEBRAIC[83])+( ALGEBRAIC[31]*STATES[17])/ALGEBRAIC[83]; RATES[4] = (( ALGEBRAIC[26]*STATES[15])/ALGEBRAIC[83] - ( (ALGEBRAIC[44]+ALGEBRAIC[63]+ALGEBRAIC[66]+ALGEBRAIC[80])*STATES[4])/ALGEBRAIC[83])+( ALGEBRAIC[57]*STATES[22])/ALGEBRAIC[83]+( ALGEBRAIC[60]*STATES[21])/ALGEBRAIC[83]+( CONSTANTS[147]*STATES[20])/ALGEBRAIC[83]; RATES[20] = ((( ALGEBRAIC[80]*STATES[4])/ALGEBRAIC[83]+( ALGEBRAIC[26]*STATES[19])/ALGEBRAIC[83]) - ( (ALGEBRAIC[44]+ALGEBRAIC[63]+ALGEBRAIC[66]+CONSTANTS[147])*STATES[20])/ALGEBRAIC[83])+( ALGEBRAIC[57]*STATES[23])/ALGEBRAIC[83]+( ALGEBRAIC[60]*STATES[24])/ALGEBRAIC[83]; ALGEBRAIC[77] = ALGEBRAIC[66]; ALGEBRAIC[74] = ( ALGEBRAIC[60]*ALGEBRAIC[63])/ALGEBRAIC[57]; RATES[21] = ((( ALGEBRAIC[53]*STATES[15])/ALGEBRAIC[83]+( ALGEBRAIC[66]*STATES[4])/ALGEBRAIC[83]+( ALGEBRAIC[77]*STATES[22])/ALGEBRAIC[83]) - ( (ALGEBRAIC[71]+ALGEBRAIC[60]+ALGEBRAIC[74]+ALGEBRAIC[80])*STATES[21])/ALGEBRAIC[83])+( CONSTANTS[147]*STATES[24])/ALGEBRAIC[83]; RATES[22] = ((( ALGEBRAIC[48]*STATES[15])/ALGEBRAIC[83]+( ALGEBRAIC[63]*STATES[4])/ALGEBRAIC[83]) - ( (ALGEBRAIC[68]+ALGEBRAIC[57]+ALGEBRAIC[77]+ALGEBRAIC[80])*STATES[22])/ALGEBRAIC[83])+( ALGEBRAIC[74]*STATES[21])/ALGEBRAIC[83]+( CONSTANTS[147]*STATES[23])/ALGEBRAIC[83]; RATES[24] = (( ALGEBRAIC[80]*STATES[21])/ALGEBRAIC[83]+( ALGEBRAIC[53]*STATES[19])/ALGEBRAIC[83]+( ALGEBRAIC[66]*STATES[20])/ALGEBRAIC[83]+( ALGEBRAIC[77]*STATES[23])/ALGEBRAIC[83]) - ( (ALGEBRAIC[71]+ALGEBRAIC[60]+ALGEBRAIC[74]+CONSTANTS[147])*STATES[24])/ALGEBRAIC[83]; RATES[23] = ((( ALGEBRAIC[80]*STATES[22])/ALGEBRAIC[83]+( ALGEBRAIC[48]*STATES[19])/ALGEBRAIC[83]+( ALGEBRAIC[63]*STATES[20])/ALGEBRAIC[83]) - ( (ALGEBRAIC[68]+ALGEBRAIC[57]+ALGEBRAIC[77]+CONSTANTS[147])*STATES[23])/ALGEBRAIC[83])+( ALGEBRAIC[74]*STATES[24])/ALGEBRAIC[83]; } void computeVariables(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC) { ALGEBRAIC[2] = 1.00000/(1.00000+exp(- (STATES[0]+60.5000)/5.30000)); ALGEBRAIC[4] = 1.00000/(1.00000+exp(- (STATES[0]+43.0000)/17.3600)); ALGEBRAIC[5] = 1.00000/(1.00000+exp((STATES[0] - 44.9000)/12.0096)); ALGEBRAIC[3] = 1.00000/(1.00000+exp((STATES[0]+75.5000)/4.00000)); ALGEBRAIC[10] = 0.381170*(8.60000+ 14.7000*exp(- pow(STATES[0]+50.0000, 2.00000)/( 900.000*1.00000))); ALGEBRAIC[33] = (( CONSTANTS[98]*CONSTANTS[15])/( CONSTANTS[100]*CONSTANTS[99]))*log(CONSTANTS[20]/STATES[1]); ALGEBRAIC[37] = CONSTANTS[8]*STATES[4]*(STATES[0] - ALGEBRAIC[33]); ALGEBRAIC[17] = STATES[7]*STATES[8]; ALGEBRAIC[41] = (( CONSTANTS[103]*CONSTANTS[15])/( CONSTANTS[105]*CONSTANTS[104]))*log(CONSTANTS[20]/STATES[1]); ALGEBRAIC[45] = CONSTANTS[35]*ALGEBRAIC[17]*(STATES[0] - ALGEBRAIC[41]); ALGEBRAIC[25] = ( CONSTANTS[72]*( exp(( CONSTANTS[71]*STATES[0]*CONSTANTS[16])/( CONSTANTS[14]*CONSTANTS[15]))*pow(STATES[2], 3.00000)*CONSTANTS[20] - 2.50000*exp(( (CONSTANTS[71] - 1.00000)*STATES[0]*CONSTANTS[16])/( CONSTANTS[14]*CONSTANTS[15]))*pow(CONSTANTS[61], 3.00000)*STATES[1]))/( (pow(CONSTANTS[69], 3.00000)+pow(CONSTANTS[61], 3.00000))*(CONSTANTS[68]+CONSTANTS[20])*(1.00000+ CONSTANTS[70]*exp(( (CONSTANTS[71] - 1.00000)*STATES[0]*CONSTANTS[16])/( CONSTANTS[14]*CONSTANTS[15])))); ALGEBRAIC[52] = ( - ((ALGEBRAIC[37]+ALGEBRAIC[45]) - 2.00000*ALGEBRAIC[25])*CONSTANTS[95])/( 2.00000*CONSTANTS[16]*CONSTANTS[84]); ALGEBRAIC[56] = STATES[6]+STATES[34]+STATES[35]+STATES[36]+STATES[37]+STATES[38]; ALGEBRAIC[24] = CONSTANTS[146]*0.554320*exp(- 0.0990740+ 0.0364410*STATES[0]); ALGEBRAIC[28] = CONSTANTS[146]*0.000525480*exp(- 0.0691020+ 0.00319450*STATES[0]); ALGEBRAIC[20] = CONSTANTS[146]*3.15660*exp(0.363520+ 0.0771930*STATES[0]); ALGEBRAIC[30] = CONSTANTS[146]*1.44960*exp(- 0.156600+ 0.0583530*STATES[0]); ALGEBRAIC[16] = CONSTANTS[146]*2.39100*exp(- 13.3350 - 0.252890*STATES[0]); ALGEBRAIC[35] = CONSTANTS[146]*1.53290*exp(0.00931930+ 0.0410750*STATES[0]); ALGEBRAIC[47] = CONSTANTS[146]*1.90460*exp(- 2.48400+ 0.0204060*STATES[0]); ALGEBRAIC[51] = CONSTANTS[146]*0.000216880*exp(- 0.0634380+ 0.00466830*STATES[0]); ALGEBRAIC[12] = CONSTANTS[146]*0.120520*exp(- 9.60280+ 0.0830250*STATES[0]); ALGEBRAIC[39] = CONSTANTS[146]*1.61640*exp(0.307630+ 0.00605350*STATES[0]); ALGEBRAIC[7] = CONSTANTS[146]*0.00392390*exp(2.67930+ 0.00614680*STATES[0]); ALGEBRAIC[43] = CONSTANTS[146]*0.0277350*exp(0.0514900 - 0.0468650*STATES[0]); ALGEBRAIC[64] = (( CONSTANTS[118]*CONSTANTS[15])/( CONSTANTS[120]*CONSTANTS[119]))*log(CONSTANTS[61]/STATES[2]); ALGEBRAIC[67] = CONSTANTS[11]*STATES[6]*(STATES[0] - ALGEBRAIC[64]); ALGEBRAIC[29] = ( CONSTANTS[75]*CONSTANTS[41]*STATES[2])/( (CONSTANTS[41]+CONSTANTS[73])*(CONSTANTS[74]+STATES[2])*(1.00000+ 0.124500*exp(( - 0.100000*STATES[0]*CONSTANTS[16])/( CONSTANTS[14]*CONSTANTS[15]))+ 0.0353000*exp(( - STATES[0]*CONSTANTS[16])/( CONSTANTS[14]*CONSTANTS[15])))); ALGEBRAIC[70] = (( CONSTANTS[123]*CONSTANTS[15])/( CONSTANTS[125]*CONSTANTS[124]))*log(CONSTANTS[61]/STATES[2]); ALGEBRAIC[73] = CONSTANTS[76]*CONSTANTS[93]*(STATES[0] - ALGEBRAIC[70]); ALGEBRAIC[0] = (int)(VOI) % (int)(CONSTANTS[0]); ALGEBRAIC[8] = (ALGEBRAIC[0]<CONSTANTS[3] ? CONSTANTS[1]+( CONSTANTS[2]*ALGEBRAIC[0])/CONSTANTS[6] : CONSTANTS[1]+( CONSTANTS[2]*(1.00000+exp(- CONSTANTS[5]/( 2.00000*CONSTANTS[4]))))/(1.00000+exp(((ALGEBRAIC[0] - CONSTANTS[6]) - 0.500000*CONSTANTS[5])/CONSTANTS[4]))); ALGEBRAIC[13] = CONSTANTS[7]*(STATES[0] - ALGEBRAIC[8]); ALGEBRAIC[21] = STATES[9]*STATES[10]; ALGEBRAIC[49] = (( CONSTANTS[108]*CONSTANTS[15])/( CONSTANTS[110]*CONSTANTS[109]))*log(CONSTANTS[41]/STATES[3]); ALGEBRAIC[54] = CONSTANTS[9]*ALGEBRAIC[21]*(STATES[0] - ALGEBRAIC[49]); ALGEBRAIC[58] = (( CONSTANTS[113]*CONSTANTS[15])/( CONSTANTS[115]*CONSTANTS[114]))*log(CONSTANTS[41]/STATES[3]); ALGEBRAIC[61] = CONSTANTS[10]*STATES[5]*(STATES[0] - ALGEBRAIC[58]); ALGEBRAIC[76] = (( CONSTANTS[128]*CONSTANTS[15])/( CONSTANTS[130]*CONSTANTS[129]))*log(CONSTANTS[41]/STATES[3]); ALGEBRAIC[79] = CONSTANTS[77]*CONSTANTS[94]*(STATES[0] - ALGEBRAIC[76]); ALGEBRAIC[81] = STATES[25]+STATES[26]+STATES[27]+STATES[28]+STATES[29]+STATES[30]+STATES[31]+STATES[32]+STATES[33]+STATES[5]; ALGEBRAIC[6] = 1.00000*exp(( 8.47188*STATES[0])/( 1.00000*CONSTANTS[15])); ALGEBRAIC[32] = 0.0443240*ALGEBRAIC[6]; ALGEBRAIC[11] = 1.00000*exp(( - 7.77556*STATES[0])/( 1.00000*CONSTANTS[15])); ALGEBRAIC[50] = 0.000106000*ALGEBRAIC[11]; ALGEBRAIC[65] = 1.00000*CONSTANTS[56]*STATES[1]; ALGEBRAIC[27] = 0.000781000*ALGEBRAIC[6]; ALGEBRAIC[46] = 0.0953120*ALGEBRAIC[11]; ALGEBRAIC[62] = 2.00000*CONSTANTS[56]*STATES[1]; ALGEBRAIC[23] = 2.81000e-05*ALGEBRAIC[6]; ALGEBRAIC[42] = 32.6594*ALGEBRAIC[11]; ALGEBRAIC[59] = 3.00000*CONSTANTS[56]*STATES[1]; ALGEBRAIC[19] = 0.000869000*ALGEBRAIC[6]; ALGEBRAIC[38] = 144.174*ALGEBRAIC[11]; ALGEBRAIC[55] = 4.00000*CONSTANTS[56]*STATES[1]; ALGEBRAIC[15] = 0.0216200*ALGEBRAIC[6]; ALGEBRAIC[34] = 318.108*ALGEBRAIC[11]; ALGEBRAIC[78] = 1.00000*CONSTANTS[56]*STATES[1]; ALGEBRAIC[75] = 2.00000*CONSTANTS[56]*STATES[1]; ALGEBRAIC[72] = 3.00000*CONSTANTS[56]*STATES[1]; ALGEBRAIC[69] = 4.00000*CONSTANTS[56]*STATES[1]; ALGEBRAIC[82] = ALGEBRAIC[37]+ALGEBRAIC[45]+ALGEBRAIC[54]+ALGEBRAIC[61]+ALGEBRAIC[67]+ALGEBRAIC[25]+ALGEBRAIC[29]+ALGEBRAIC[73]+ALGEBRAIC[79]; ALGEBRAIC[83] = STATES[15]+STATES[14]+STATES[13]+STATES[12]+STATES[19]+STATES[18]+STATES[17]+STATES[16]+STATES[4]+STATES[20]+STATES[21]+STATES[22]+STATES[24]+STATES[23]; ALGEBRAIC[1] = CONSTANTS[133]*0.731000*exp(STATES[0]/30.0000); ALGEBRAIC[22] = 2.00000*ALGEBRAIC[1]; ALGEBRAIC[26] = 1.00000*ALGEBRAIC[1]; ALGEBRAIC[9] = CONSTANTS[133]*0.214900*exp(- STATES[0]/40.0000); ALGEBRAIC[40] = 3.00000*ALGEBRAIC[9]; ALGEBRAIC[44] = 4.00000*ALGEBRAIC[9]; ALGEBRAIC[80] = ( CONSTANTS[133]*4.00000)/(1.00000+1.00000/STATES[1]); ALGEBRAIC[53] = CONSTANTS[133]*0.00595600*exp(- STATES[0]/40.0000); ALGEBRAIC[48] = CONSTANTS[133]*0.474200*exp(STATES[0]/10.0000); ALGEBRAIC[66] = CONSTANTS[133]*0.00232000*exp(- STATES[0]/280.000); ALGEBRAIC[60] = CONSTANTS[133]*0.0121300*exp(STATES[0]/500.000); ALGEBRAIC[71] = ( ALGEBRAIC[44]*ALGEBRAIC[60]*ALGEBRAIC[53])/( ALGEBRAIC[26]*ALGEBRAIC[66]); ALGEBRAIC[63] = CONSTANTS[133]*0.0219700*exp(STATES[0]/500.000); ALGEBRAIC[57] = CONSTANTS[133]*0.0140700*exp(- STATES[0]/300.000); ALGEBRAIC[68] = ( ALGEBRAIC[44]*ALGEBRAIC[57]*ALGEBRAIC[48])/( ALGEBRAIC[26]*ALGEBRAIC[63]); ALGEBRAIC[18] = 3.00000*ALGEBRAIC[1]; ALGEBRAIC[36] = 2.00000*ALGEBRAIC[9]; ALGEBRAIC[14] = 4.00000*ALGEBRAIC[1]; ALGEBRAIC[31] = 1.00000*ALGEBRAIC[9]; ALGEBRAIC[77] = ALGEBRAIC[66]; ALGEBRAIC[74] = ( ALGEBRAIC[60]*ALGEBRAIC[63])/ALGEBRAIC[57]; }