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 89 entries in the algebraic variable array.
   There are a total of 22 entries in each of the rate and state variable arrays.
   There are a total of 151 entries in the constant variable array.
 */
/*
 * CONSTANTS[0] is Buf_C in component cai (mM).
 * STATES[0] is Cai in component cai (mM).
 * ALGEBRAIC[0] is Cai_bufc in component cai (dimensionless).
 * CONSTANTS[1] is Cm in component geom (pF).
 * CONSTANTS[2] is F in component phys (C_per_mmol).
 * CONSTANTS[3] is Kbuf_C in component cai (mM).
 * CONSTANTS[144] is Vc in component geom (um3).
 * ALGEBRAIC[65] is i_CaL_Ca in component ical (A_per_F).
 * ALGEBRAIC[71] is i_CaT in component icat (A_per_F).
 * ALGEBRAIC[83] is i_NaCa in component inaca (A_per_F).
 * ALGEBRAIC[85] is i_PCa in component ipca (A_per_F).
 * ALGEBRAIC[62] is i_b_Ca in component ibca (A_per_F).
 * ALGEBRAIC[81] is i_leak in component ileak (mM_per_ms).
 * ALGEBRAIC[86] is i_rel in component irel (mM_per_ms).
 * ALGEBRAIC[88] is i_up in component iup (mM_per_ms).
 * VOI is time in component engine (ms).
 * CONSTANTS[86] is Buf_SR in component casr (mM).
 * STATES[1] is Ca_SR in component casr (mM).
 * ALGEBRAIC[16] is Ca_SR_bufSR in component casr (dimensionless).
 * CONSTANTS[4] is Kbuf_SR in component casr (mM).
 * CONSTANTS[126] is V_SR in component geom (um3).
 * CONSTANTS[5] is pace in component engine (dimensionless).
 * CONSTANTS[6] is Cao in component extra (mM).
 * ALGEBRAIC[32] is E_Ca in component erev (mV).
 * ALGEBRAIC[46] is E_K in component erev (mV).
 * ALGEBRAIC[60] is E_Na in component erev (mV).
 * STATES[2] is Ki in component ki (mM).
 * CONSTANTS[7] is Ko in component extra (mM).
 * STATES[3] is Nai in component nai (mM).
 * CONSTANTS[8] is Nao in component extra (mM).
 * CONSTANTS[87] is RTF in component phys (mV).
 * CONSTANTS[9] is VSR_tenT in component geom (um3).
 * CONSTANTS[10] is V_tot in component geom (um3).
 * CONSTANTS[85] is V_tot_tenT in component geom (um3).
 * CONSTANTS[11] is Vc_tenT in component geom (um3).
 * STATES[4] is V in component membrane (mV).
 * CONSTANTS[88] is g_b_Ca in component ibca (mS_per_uF).
 * CONSTANTS[89] is g_b_Na in component ibna (mS_per_uF).
 * ALGEBRAIC[63] is i_b_Na in component ibna (A_per_F).
 * CONSTANTS[127] is FFRT in component phys (s4_A2_per_g_per_m2_per_mol_times_1e3).
 * CONSTANTS[90] is FRT in component phys (per_mV).
 * ALGEBRAIC[3] is alpha_fCa in component ical (dimensionless).
 * ALGEBRAIC[19] is beta_fCa in component ical (dimensionless).
 * STATES[5] is d in component ical (dimensionless).
 * CONSTANTS[12] is d1 in component ical (mS_per_uF).
 * CONSTANTS[13] is d2 in component ical (mV).
 * CONSTANTS[91] is d3 in component ical (mS_per_uF).
 * CONSTANTS[128] is d4 in component ical (mV).
 * CONSTANTS[14] is d5 in component ical (dimensionless).
 * CONSTANTS[92] is d6 in component ical (mV).
 * STATES[6] is f in component ical (dimensionless).
 * CONSTANTS[15] is f1 in component ical (mS_per_uF).
 * CONSTANTS[93] is f2 in component ical (mV).
 * CONSTANTS[94] is f3 in component ical (mS_per_uF).
 * CONSTANTS[129] is f4 in component ical (mV).
 * CONSTANTS[16] is f5 in component ical (dimensionless).
 * CONSTANTS[17] is f6 in component ical (mV).
 * STATES[7] is fCa in component ical (dimensionless).
 * ALGEBRAIC[49] is fCa_inf in component ical (dimensionless).
 * ALGEBRAIC[35] is gamma_fCa in component ical (dimensionless).
 * ALGEBRAIC[70] is i_CaL in component ical (A_per_F).
 * ALGEBRAIC[67] is i_CaL_K in component ical (A_per_F).
 * ALGEBRAIC[69] is i_CaL_Na in component ical (A_per_F).
 * ALGEBRAIC[64] is ibarca in component ical (A_per_F).
 * ALGEBRAIC[66] is ibark in component ical (A_per_F).
 * ALGEBRAIC[68] is ibarna in component ical (A_per_F).
 * ALGEBRAIC[1] is ical_d_a in component ical (mS_per_uF).
 * ALGEBRAIC[17] is ical_d_b in component ical (mS_per_uF).
 * ALGEBRAIC[33] is ical_d_inf in component ical (dimensionless).
 * ALGEBRAIC[47] is ical_d_tau in component ical (ms).
 * ALGEBRAIC[2] is ical_f_a in component ical (mS_per_uF).
 * ALGEBRAIC[18] is ical_f_b in component ical (mS_per_uF).
 * ALGEBRAIC[34] is ical_f_inf in component ical (dimensionless).
 * ALGEBRAIC[48] is ical_f_tau in component ical (ms).
 * ALGEBRAIC[61] is k_fca in component ical (dimensionless).
 * CONSTANTS[18] is p_CaL in component ical (L_per_F_per_ms_times_1e0).
 * CONSTANTS[145] is p_CaL_Ca in component ical (L_per_F_per_ms_times_1e0).
 * CONSTANTS[146] is p_CaL_K in component ical (L_per_F_per_ms_times_1e0).
 * CONSTANTS[147] is p_CaL_Na in component ical (L_per_F_per_ms_times_1e0).
 * CONSTANTS[19] is p_CaL_shannonCa in component ical (dimensionless).
 * CONSTANTS[130] is p_CaL_shannonCap in component ical (dimensionless).
 * CONSTANTS[20] is p_CaL_shannonK in component ical (dimensionless).
 * CONSTANTS[131] is p_CaL_shannonKp in component ical (dimensionless).
 * CONSTANTS[21] is p_CaL_shannonNa in component ical (dimensionless).
 * CONSTANTS[132] is p_CaL_shannonNap in component ical (dimensionless).
 * CONSTANTS[95] is p_CaL_shannonTot in component ical (dimensionless).
 * CONSTANTS[22] is scale in component ical (dimensionless).
 * CONSTANTS[23] is tau_fCa in component ical (ms).
 * CONSTANTS[24] is taud_const in component ical (ms).
 * CONSTANTS[25] is tauf_const in component ical (ms).
 * STATES[8] is d in component icat (dimensionless).
 * STATES[9] is f in component icat (dimensionless).
 * CONSTANTS[26] is g_CaT in component icat (mS_per_uF).
 * ALGEBRAIC[4] is icat_d_inf in component icat (dimensionless).
 * ALGEBRAIC[20] is icat_d_tau in component icat (ms).
 * ALGEBRAIC[5] is icat_f_inf in component icat (dimensionless).
 * ALGEBRAIC[21] is icat_f_tau in component icat (ms).
 * CONSTANTS[96] is Na_frac in component ifunny (dimensionless).
 * CONSTANTS[27] is NatoK_ratio in component ifunny (dimensionless).
 * STATES[10] is Xf in component ifunny (dimensionless).
 * CONSTANTS[28] is g_f in component ifunny (mS_per_uF).
 * ALGEBRAIC[74] is i_f in component ifunny (A_per_F).
 * ALGEBRAIC[72] is i_fK in component ifunny (A_per_F).
 * ALGEBRAIC[73] is i_fNa in component ifunny (A_per_F).
 * ALGEBRAIC[6] is ifunny_Xf_a in component ifunny (mS_per_uF).
 * ALGEBRAIC[22] is ifunny_Xf_b in component ifunny (mS_per_uF).
 * ALGEBRAIC[36] is ifunny_Xf_inf in component ifunny (dimensionless).
 * ALGEBRAIC[50] is ifunny_Xf_tau in component ifunny (ms).
 * CONSTANTS[29] is xF1 in component ifunny (mS_per_uF).
 * CONSTANTS[97] is xF2 in component ifunny (mV).
 * CONSTANTS[98] is xF3 in component ifunny (mS_per_uF).
 * CONSTANTS[133] is xF4 in component ifunny (mV).
 * CONSTANTS[30] is xF5 in component ifunny (dimensionless).
 * CONSTANTS[31] is xF6 in component ifunny (mV).
 * CONSTANTS[32] is xF_const in component ifunny (ms).
 * CONSTANTS[33] is g_K1 in component ik1 (mS_per_uF).
 * ALGEBRAIC[78] is i_K1 in component ik1 (A_per_F).
 * ALGEBRAIC[75] is ik1_inf_a in component ik1 (mS_per_uF).
 * ALGEBRAIC[76] is ik1_inf_b in component ik1 (mS_per_uF).
 * ALGEBRAIC[77] is inf in component ik1 (dimensionless).
 * CONSTANTS[34] is xK11 in component ik1 (mS_per_uF).
 * CONSTANTS[35] is xK12 in component ik1 (mV).
 * CONSTANTS[36] is xK13 in component ik1 (mV).
 * CONSTANTS[37] is xK14 in component ik1 (mV).
 * CONSTANTS[38] is xK15 in component ik1 (mV).
 * STATES[11] is Xr1 in component ikr (dimensionless).
 * CONSTANTS[39] is Xr1_1 in component ikr (mS_per_uF).
 * CONSTANTS[40] is Xr1_2 in component ikr (mV).
 * CONSTANTS[99] is Xr1_3 in component ikr (mS_per_uF).
 * CONSTANTS[134] is Xr1_4 in component ikr (mV).
 * CONSTANTS[41] is Xr1_5 in component ikr (dimensionless).
 * CONSTANTS[100] is Xr1_6 in component ikr (mV).
 * STATES[12] is Xr2 in component ikr (dimensionless).
 * CONSTANTS[42] is Xr2_1 in component ikr (mS_per_uF).
 * CONSTANTS[101] is Xr2_2 in component ikr (mV).
 * CONSTANTS[102] is Xr2_3 in component ikr (mS_per_uF).
 * CONSTANTS[135] is Xr2_4 in component ikr (mV).
 * CONSTANTS[43] is Xr2_5 in component ikr (dimensionless).
 * CONSTANTS[44] is Xr2_6 in component ikr (mV).
 * CONSTANTS[45] is g_Kr in component ikr (mS_per_uF).
 * ALGEBRAIC[79] is i_Kr in component ikr (A_per_F).
 * ALGEBRAIC[7] is ikr_Xr1_a in component ikr (mS_per_uF).
 * ALGEBRAIC[23] is ikr_Xr1_b in component ikr (mS_per_uF).
 * ALGEBRAIC[37] is ikr_Xr1_inf in component ikr (dimensionless).
 * ALGEBRAIC[51] is ikr_Xr1_tau in component ikr (ms).
 * ALGEBRAIC[8] is ikr_Xr2_a in component ikr (mS_per_uF).
 * ALGEBRAIC[24] is ikr_Xr2_b in component ikr (mS_per_uF).
 * ALGEBRAIC[38] is ikr_Xr2_inf in component ikr (dimensionless).
 * ALGEBRAIC[52] is ikr_Xr2_tau in component ikr (ms).
 * CONSTANTS[46] is tau_1_offset in component ikr (ms).
 * CONSTANTS[47] is tau_2_offset in component ikr (ms).
 * STATES[13] is Xs in component iks (dimensionless).
 * CONSTANTS[48] is g_Ks in component iks (mS_per_uF).
 * ALGEBRAIC[80] is i_Ks in component iks (A_per_F).
 * ALGEBRAIC[9] is iks_Xs_a in component iks (mS_per_uF).
 * ALGEBRAIC[25] is iks_Xs_b in component iks (mS_per_uF).
 * ALGEBRAIC[39] is iks_Xs_inf in component iks (dimensionless).
 * ALGEBRAIC[53] is iks_Xs_tau in component iks (ms).
 * CONSTANTS[49] is ks1 in component iks (mS_per_uF).
 * CONSTANTS[50] is ks2 in component iks (mV).
 * CONSTANTS[103] is ks3 in component iks (mS_per_uF).
 * CONSTANTS[136] is ks4 in component iks (mV).
 * CONSTANTS[51] is ks5 in component iks (dimensionless).
 * CONSTANTS[104] is ks6 in component iks (mV).
 * CONSTANTS[52] is tauks_const in component iks (ms).
 * CONSTANTS[105] is V_leak in component ileak (mS_per_uF).
 * CONSTANTS[53] is g_Na in component ina (mS_per_uF).
 * STATES[14] is h in component ina (dimensionless).
 * CONSTANTS[54] is h1 in component ina (mS_per_uF).
 * CONSTANTS[106] is h2 in component ina (mV).
 * CONSTANTS[107] is h3 in component ina (mS_per_uF).
 * CONSTANTS[137] is h4 in component ina (mV).
 * CONSTANTS[55] is h5 in component ina (dimensionless).
 * CONSTANTS[56] is h6 in component ina (mV).
 * ALGEBRAIC[82] is i_Na in component ina (A_per_F).
 * ALGEBRAIC[10] is ina_h_a in component ina (mS_per_uF).
 * ALGEBRAIC[26] is ina_h_b in component ina (mS_per_uF).
 * ALGEBRAIC[40] is ina_h_inf in component ina (dimensionless).
 * ALGEBRAIC[54] is ina_h_tau in component ina (ms).
 * ALGEBRAIC[11] is ina_j_a in component ina (mS_per_uF).
 * ALGEBRAIC[27] is ina_j_b in component ina (mS_per_uF).
 * ALGEBRAIC[41] is ina_j_inf in component ina (dimensionless).
 * ALGEBRAIC[55] is ina_j_tau in component ina (ms).
 * ALGEBRAIC[12] is ina_m_a in component ina (mS_per_uF).
 * ALGEBRAIC[28] is ina_m_b in component ina (mS_per_uF).
 * ALGEBRAIC[42] is ina_m_inf in component ina (dimensionless).
 * ALGEBRAIC[56] is ina_m_tau in component ina (ms).
 * STATES[15] is j in component ina (dimensionless).
 * CONSTANTS[57] is j1 in component ina (mS_per_uF).
 * CONSTANTS[108] is j2 in component ina (mV).
 * CONSTANTS[138] is j3 in component ina (mS_per_uF).
 * CONSTANTS[148] is j4 in component ina (mV).
 * CONSTANTS[109] is j5 in component ina (dimensionless).
 * CONSTANTS[139] is j6 in component ina (mV).
 * STATES[16] is m in component ina (dimensionless).
 * CONSTANTS[58] is m1 in component ina (mS_per_uF).
 * CONSTANTS[59] is m2 in component ina (mV).
 * CONSTANTS[110] is m3 in component ina (mS_per_uF).
 * CONSTANTS[140] is m4 in component ina (mV).
 * CONSTANTS[60] is m5 in component ina (dimensionless).
 * CONSTANTS[111] is m6 in component ina (mV).
 * CONSTANTS[61] is tau_h_const in component ina (ms).
 * CONSTANTS[62] is tau_j_const in component ina (ms).
 * CONSTANTS[63] is tau_m_const in component ina (ms).
 * CONSTANTS[64] is KmCa in component inaca (mM).
 * CONSTANTS[65] is KmNai in component inaca (mM).
 * CONSTANTS[66] is Ksat in component inaca (dimensionless).
 * CONSTANTS[112] is alpha in component inaca (dimensionless).
 * CONSTANTS[113] is gamma in component inaca (dimensionless).
 * CONSTANTS[114] is kNaCa in component inaca (A_per_F).
 * CONSTANTS[67] is Km_K in component inak (mM).
 * CONSTANTS[68] is Km_Na in component inak (mM).
 * CONSTANTS[115] is PNaK in component inak (A_per_F).
 * ALGEBRAIC[84] is i_NaK in component inak (A_per_F).
 * CONSTANTS[69] is KPCa in component ipca (mM).
 * CONSTANTS[116] is g_PCa in component ipca (A_per_F).
 * STATES[17] is I in component irel (dimensionless).
 * CONSTANTS[70] is MaxSR in component irel (dimensionless).
 * CONSTANTS[71] is MinSR in component irel (dimensionless).
 * STATES[18] is O in component irel (dimensionless).
 * STATES[19] is R in component irel (dimensionless).
 * ALGEBRAIC[13] is RI in component irel (dimensionless).
 * CONSTANTS[72] is ec50SR in component irel (mM).
 * ALGEBRAIC[29] is kCaSR in component irel (dimensionless).
 * CONSTANTS[117] is kiCa in component irel (per_mM_per_ms).
 * ALGEBRAIC[43] is kiSRCa in component irel (per_mM_per_ms).
 * CONSTANTS[118] is kim in component irel (mS_per_uF).
 * CONSTANTS[141] is koCa in component irel (per_mM2_per_ms).
 * ALGEBRAIC[57] is koSRCa in component irel (per_mM2_per_ms).
 * CONSTANTS[119] is kom in component irel (mS_per_uF).
 * CONSTANTS[73] is ks in component irel (mS_per_uF).
 * CONSTANTS[74] is g_to in component ito (mS_per_uF).
 * ALGEBRAIC[87] is i_to in component ito (A_per_F).
 * ALGEBRAIC[14] is ito_r_a in component ito (mS_per_uF).
 * ALGEBRAIC[30] is ito_r_b in component ito (mS_per_uF).
 * ALGEBRAIC[44] is ito_r_inf in component ito (dimensionless).
 * ALGEBRAIC[58] is ito_r_tau in component ito (ms).
 * ALGEBRAIC[15] is ito_s_a in component ito (mS_per_uF).
 * ALGEBRAIC[31] is ito_s_b in component ito (mS_per_uF).
 * ALGEBRAIC[45] is ito_s_inf in component ito (dimensionless).
 * ALGEBRAIC[59] is ito_s_tau in component ito (ms).
 * STATES[20] is r in component ito (dimensionless).
 * CONSTANTS[75] is r1 in component ito (mS_per_uF).
 * CONSTANTS[76] is r2 in component ito (mV).
 * CONSTANTS[120] is r3 in component ito (mS_per_uF).
 * CONSTANTS[142] is r4 in component ito (mV).
 * CONSTANTS[77] is r5 in component ito (dimensionless).
 * CONSTANTS[121] is r6 in component ito (mV).
 * STATES[21] is s in component ito (dimensionless).
 * CONSTANTS[78] is s1 in component ito (mS_per_uF).
 * CONSTANTS[122] is s2 in component ito (mV).
 * CONSTANTS[123] is s3 in component ito (mS_per_uF).
 * CONSTANTS[143] is s4 in component ito (mV).
 * CONSTANTS[79] is s5 in component ito (dimensionless).
 * CONSTANTS[80] is s6 in component ito (mV).
 * CONSTANTS[81] is tau_r_const in component ito (ms).
 * CONSTANTS[82] is tau_s_const in component ito (ms).
 * CONSTANTS[124] is Kup in component iup (mM).
 * CONSTANTS[125] is VmaxUp in component iup (mM_per_ms).
 * CONSTANTS[150] is i_stim in component stimulus (A_per_F).
 * CONSTANTS[83] is R in component phys (J_per_mol_per_K).
 * CONSTANTS[84] is T in component phys (kelvin).
 * CONSTANTS[149] is amplitude in component stimulus (A_per_F).
 * RATES[0] is d/dt Cai in component cai (mM).
 * RATES[1] is d/dt Ca_SR in component casr (mM).
 * RATES[5] is d/dt d in component ical (dimensionless).
 * RATES[6] is d/dt f in component ical (dimensionless).
 * RATES[7] is d/dt fCa in component ical (dimensionless).
 * RATES[8] is d/dt d in component icat (dimensionless).
 * RATES[9] is d/dt f in component icat (dimensionless).
 * RATES[10] is d/dt Xf in component ifunny (dimensionless).
 * RATES[11] is d/dt Xr1 in component ikr (dimensionless).
 * RATES[12] is d/dt Xr2 in component ikr (dimensionless).
 * RATES[13] is d/dt Xs in component iks (dimensionless).
 * RATES[14] is d/dt h in component ina (dimensionless).
 * RATES[15] is d/dt j in component ina (dimensionless).
 * RATES[16] is d/dt m in component ina (dimensionless).
 * RATES[17] is d/dt I in component irel (dimensionless).
 * RATES[18] is d/dt O in component irel (dimensionless).
 * RATES[19] is d/dt R in component irel (dimensionless).
 * RATES[20] is d/dt r in component ito (dimensionless).
 * RATES[21] is d/dt s in component ito (dimensionless).
 * RATES[2] is d/dt Ki in component ki (mM).
 * RATES[4] is d/dt V in component membrane (mV).
 * RATES[3] is d/dt Nai in component nai (mM).
 */
void
initConsts(double* CONSTANTS, double* RATES, double *STATES)
{
CONSTANTS[0] = 0.06;
STATES[0] = 2.19191642424964390e-04;
CONSTANTS[1] = 60.0;
CONSTANTS[2] = 9.64853415000000041e+01;
CONSTANTS[3] = 0.0006;
STATES[1] = 3.35086796732326109e-01;
CONSTANTS[4] = 0.3;
CONSTANTS[5] = 0.0;
CONSTANTS[6] = 1.8;
STATES[2] = 1.04748824394112106e+02;
CONSTANTS[7] = 5.4;
STATES[3] = 7.16928091250999167;
CONSTANTS[8] = 140.0;
CONSTANTS[9] = 1094.0;
CONSTANTS[10] = 3960.0;
CONSTANTS[11] = 16404.0;
STATES[4] = -7.55966016388546791e+01;
STATES[5] = 3.94925342652924281e-04;
CONSTANTS[12] = 1.29662941897219994e+01;
CONSTANTS[13] = 7.07914596471100044;
CONSTANTS[14] = 4.49094155069999987e-02;
STATES[6] = 1.70990105585540286e-01;
CONSTANTS[15] = 5.12589825999999987e-04;
CONSTANTS[16] = 1.93121122351431995e+03;
CONSTANTS[17] = 5.73002749969900016;
STATES[7] = 8.77798946134088598e-01;
CONSTANTS[18] = 3.08027691378999990e-01;
CONSTANTS[19] = 0.00054;
CONSTANTS[20] = 2.7e-07;
CONSTANTS[21] = 1.5e-08;
CONSTANTS[22] = 1.2;
CONSTANTS[23] = 2.0;
CONSTANTS[24] = 1.65824694683000007;
CONSTANTS[25] = 1.00462559171102995e+02;
STATES[8] = 2.70195573471577175e-04;
STATES[9] = 7.56032904368393432e-01;
CONSTANTS[26] = 0.185;
CONSTANTS[27] = 0.491;
STATES[10] = 6.40338504912615469e-03;
CONSTANTS[28] = 0.0435;
CONSTANTS[29] = 5.78970000000000002e-07;
CONSTANTS[30] = 2.00866502378844016e+04;
CONSTANTS[31] = 1.02023528452800001e+01;
CONSTANTS[32] = 2.39452913465299986e+01;
CONSTANTS[33] = 1.33785777797606004e-01;
CONSTANTS[34] = 4.77994972217041014e-01;
CONSTANTS[35] = 2.72427558793486995e+01;
CONSTANTS[36] = 4.92502331781412028;
CONSTANTS[37] = 8.72223760006881932;
CONSTANTS[38] = 5.66361974998243980e+01;
STATES[11] = 3.09767485715433222e-01;
CONSTANTS[39] = 5.74885237435000026e-03;
CONSTANTS[40] = 1.36234926362576001e+01;
CONSTANTS[41] = 4.76305711818360011e-02;
STATES[12] = 4.50577185148518577e-01;
CONSTANTS[42] = 1.24566405268270002e-02;
CONSTANTS[43] = 3.73426331501040991e+01;
CONSTANTS[44] = 2.20919642353902006e+01;
CONSTANTS[45] = 0.218025;
CONSTANTS[46] = 50.0;
CONSTANTS[47] = 0.0;
STATES[13] = 1.53788281650948710e-01;
CONSTANTS[48] = 0.0077;
CONSTANTS[49] = 1.16558447999999992e-03;
CONSTANTS[50] = 6.67268386758935958e+04;
CONSTANTS[51] = 2.80458908250000027e-01;
CONSTANTS[52] = 4.74115000000000034e-06;
CONSTANTS[53] = 9.72061340924100037;
STATES[14] = 7.39543607812429227e-01;
CONSTANTS[54] = 3.62659886399999999e-03;
CONSTANTS[55] = 9.66329497711473959e+03;
CONSTANTS[56] = 7.39550356461299963;
STATES[15] = 1.24515982574504899e-01;
CONSTANTS[57] = 5.12257182000000044e-04;
STATES[16] = 2.97549962926413614e-02;
CONSTANTS[58] = 1.08045846384818006e+02;
CONSTANTS[59] = 1.31070157339409992e+01;
CONSTANTS[60] = 2.32691436700000007e-03;
CONSTANTS[61] = 1.67331502516000014e-01;
CONSTANTS[62] = 9.51088724962000032e-01;
CONSTANTS[63] = 3.19775803839999970e-02;
CONSTANTS[64] = 1.38;
CONSTANTS[65] = 87.5;
CONSTANTS[66] = 0.1;
CONSTANTS[67] = 1.0;
CONSTANTS[68] = 40.0;
CONSTANTS[69] = 0.0005;
STATES[17] = 1.42153622323011597e-02;
CONSTANTS[70] = 15.0;
CONSTANTS[71] = 1.0;
STATES[18] = 1.65045105312396393e-04;
STATES[19] = 1.13120363433751106e-02;
CONSTANTS[72] = 0.45;
CONSTANTS[73] = 12.5;
CONSTANTS[74] = 1.17833333333299997e-01;
STATES[20] = 2.67597833344160611e-04;
CONSTANTS[75] = 5.53614181712999975e-02;
CONSTANTS[76] = 1.16842023429669002e+01;
CONSTANTS[77] = 3.98918108037750008;
STATES[21] = 7.46802810614006107e-01;
CONSTANTS[78] = 3.44230944300000013e-04;
CONSTANTS[79] = 1.86760536909694991e+02;
CONSTANTS[80] = 8.18093387332270083;
CONSTANTS[81] = 6.96758421171499998e-01;
CONSTANTS[82] = 1.12244577239468999e+01;
CONSTANTS[83] = 8.314472;
CONSTANTS[84] = 310.0;
CONSTANTS[85] = CONSTANTS[11]+CONSTANTS[9];
CONSTANTS[86] =  10.0000*1.20000;
CONSTANTS[87] = ( CONSTANTS[83]*CONSTANTS[84])/CONSTANTS[2];
CONSTANTS[88] =  0.000592000*0.620000;
CONSTANTS[89] =  0.000290000*1.50000;
CONSTANTS[90] = CONSTANTS[2]/( CONSTANTS[83]*CONSTANTS[84]);
CONSTANTS[91] =  CONSTANTS[14]*CONSTANTS[12];
CONSTANTS[92] = - 6.90988;
CONSTANTS[93] = - 49.5057;
CONSTANTS[94] =  CONSTANTS[16]*CONSTANTS[15];
CONSTANTS[95] = (CONSTANTS[19]+CONSTANTS[21])+CONSTANTS[20];
CONSTANTS[96] = CONSTANTS[27]/(CONSTANTS[27]+1.00000);
CONSTANTS[97] = - 14.5897;
CONSTANTS[98] =  CONSTANTS[30]*CONSTANTS[29];
CONSTANTS[99] =  CONSTANTS[41]*CONSTANTS[39];
CONSTANTS[100] = - 7.06809;
CONSTANTS[101] = - 25.9945;
CONSTANTS[102] =  CONSTANTS[43]*CONSTANTS[42];
CONSTANTS[103] =  CONSTANTS[51]*CONSTANTS[49];
CONSTANTS[104] = - 18.8670;
CONSTANTS[105] =  8.00000e-05*0.0200000;
CONSTANTS[106] = - 19.8394;
CONSTANTS[107] =  CONSTANTS[55]*CONSTANTS[54];
CONSTANTS[108] = - 66.5838;
CONSTANTS[109] = CONSTANTS[55];
CONSTANTS[110] =  CONSTANTS[60]*CONSTANTS[58];
CONSTANTS[111] = - 7.91773;
CONSTANTS[112] =  2.50000*1.10000;
CONSTANTS[113] =  0.350000*2.00000;
CONSTANTS[114] =  1000.00*1.10000;
CONSTANTS[115] =  1.36200*1.81800;
CONSTANTS[116] =  0.0250000*10.5000;
CONSTANTS[117] =  54.0000*0.342500;
CONSTANTS[118] =  0.00100000*0.557100;
CONSTANTS[119] =  1.50000*0.142900;
CONSTANTS[120] =  CONSTANTS[77]*CONSTANTS[75];
CONSTANTS[121] = - 11.0471;
CONSTANTS[122] = - 17.6345;
CONSTANTS[123] =  CONSTANTS[79]*CONSTANTS[78];
CONSTANTS[124] =  0.000250000*0.702000;
CONSTANTS[125] =  0.000425000*0.260000;
CONSTANTS[126] =  CONSTANTS[10]*(CONSTANTS[9]/CONSTANTS[85]);
CONSTANTS[127] =  CONSTANTS[2]*CONSTANTS[90];
CONSTANTS[128] = 1.00000/(1.00000/CONSTANTS[13]+1.00000/CONSTANTS[92]);
CONSTANTS[129] = 1.00000/(1.00000/CONSTANTS[93]+1.00000/CONSTANTS[17]);
CONSTANTS[130] = CONSTANTS[19]/CONSTANTS[95];
CONSTANTS[131] = CONSTANTS[20]/CONSTANTS[95];
CONSTANTS[132] = CONSTANTS[21]/CONSTANTS[95];
CONSTANTS[133] = 1.00000/(1.00000/CONSTANTS[97]+1.00000/CONSTANTS[31]);
CONSTANTS[134] = 1.00000/(1.00000/CONSTANTS[40]+1.00000/CONSTANTS[100]);
CONSTANTS[135] = 1.00000/(1.00000/CONSTANTS[101]+1.00000/CONSTANTS[44]);
CONSTANTS[136] = 1.00000/(1.00000/CONSTANTS[50]+1.00000/CONSTANTS[104]);
CONSTANTS[137] = 1.00000/(1.00000/CONSTANTS[106]+1.00000/CONSTANTS[56]);
CONSTANTS[138] =  CONSTANTS[109]*CONSTANTS[57];
CONSTANTS[139] = CONSTANTS[56];
CONSTANTS[140] = 1.00000/(1.00000/CONSTANTS[59]+1.00000/CONSTANTS[111]);
CONSTANTS[141] =  56320.0*11.4302;
CONSTANTS[142] = 1.00000/(1.00000/CONSTANTS[76]+1.00000/CONSTANTS[121]);
CONSTANTS[143] = 1.00000/(1.00000/CONSTANTS[122]+1.00000/CONSTANTS[80]);
CONSTANTS[144] =  CONSTANTS[10]*(CONSTANTS[11]/CONSTANTS[85]);
CONSTANTS[145] =  CONSTANTS[130]*CONSTANTS[18];
CONSTANTS[146] =  CONSTANTS[131]*CONSTANTS[18];
CONSTANTS[147] =  CONSTANTS[132]*CONSTANTS[18];
CONSTANTS[148] = 1.00000/(1.00000/CONSTANTS[108]+1.00000/CONSTANTS[139]);
CONSTANTS[149] = - 3.00000;
CONSTANTS[150] =  CONSTANTS[5]*CONSTANTS[149];
}
void
computeRates(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC)
{
ALGEBRAIC[4] = 1.00000/(1.00000+exp((STATES[4]+26.3000)/- 6.00000));
ALGEBRAIC[20] = 1.00000/( 1.06800*exp((STATES[4]+26.3000)/30.0000)+ 1.06800*exp((STATES[4]+26.3000)/- 30.0000));
RATES[8] = (ALGEBRAIC[4] - STATES[8])/ALGEBRAIC[20];
ALGEBRAIC[5] = 1.00000/(1.00000+exp((STATES[4]+61.7000)/5.60000));
ALGEBRAIC[21] = 1.00000/( 0.0153000*exp(- (STATES[4]+61.7000)/83.3000)+ 0.0150000*exp((STATES[4]+61.7000)/15.3800));
RATES[9] = (ALGEBRAIC[5] - STATES[9])/ALGEBRAIC[21];
ALGEBRAIC[1] =  CONSTANTS[12]*exp(STATES[4]/CONSTANTS[13]);
ALGEBRAIC[17] =  CONSTANTS[91]*exp(STATES[4]/CONSTANTS[128]);
ALGEBRAIC[33] = ALGEBRAIC[1]/(ALGEBRAIC[1]+ALGEBRAIC[17]);
ALGEBRAIC[47] = 1.00000/(ALGEBRAIC[1]+ALGEBRAIC[17])+CONSTANTS[24];
RATES[5] = (ALGEBRAIC[33] - STATES[5])/ALGEBRAIC[47];
ALGEBRAIC[2] =  CONSTANTS[15]*exp(STATES[4]/CONSTANTS[93]);
ALGEBRAIC[18] =  CONSTANTS[94]*exp(STATES[4]/CONSTANTS[129]);
ALGEBRAIC[34] = ALGEBRAIC[2]/(ALGEBRAIC[2]+ALGEBRAIC[18]);
ALGEBRAIC[48] = 1.00000/(ALGEBRAIC[2]+ALGEBRAIC[18])+CONSTANTS[25];
RATES[6] = (ALGEBRAIC[34] - STATES[6])/ALGEBRAIC[48];
ALGEBRAIC[6] =  CONSTANTS[29]*exp(STATES[4]/CONSTANTS[97]);
ALGEBRAIC[22] =  CONSTANTS[98]*exp(STATES[4]/CONSTANTS[133]);
ALGEBRAIC[36] = ALGEBRAIC[6]/(ALGEBRAIC[6]+ALGEBRAIC[22]);
ALGEBRAIC[50] = 1.00000/(ALGEBRAIC[6]+ALGEBRAIC[22])+CONSTANTS[32];
RATES[10] = (ALGEBRAIC[36] - STATES[10])/ALGEBRAIC[50];
ALGEBRAIC[7] =  CONSTANTS[39]*exp(STATES[4]/CONSTANTS[40]);
ALGEBRAIC[23] =  CONSTANTS[99]*exp(STATES[4]/CONSTANTS[134]);
ALGEBRAIC[37] = ALGEBRAIC[7]/(ALGEBRAIC[7]+ALGEBRAIC[23]);
ALGEBRAIC[51] = 1.00000/(ALGEBRAIC[7]+ALGEBRAIC[23])+CONSTANTS[46];
RATES[11] = (ALGEBRAIC[37] - STATES[11])/ALGEBRAIC[51];
ALGEBRAIC[8] =  CONSTANTS[42]*exp(STATES[4]/CONSTANTS[101]);
ALGEBRAIC[24] =  CONSTANTS[102]*exp(STATES[4]/CONSTANTS[135]);
ALGEBRAIC[38] = ALGEBRAIC[8]/(ALGEBRAIC[8]+ALGEBRAIC[24]);
ALGEBRAIC[52] = 1.00000/(ALGEBRAIC[8]+ALGEBRAIC[24])+CONSTANTS[47];
RATES[12] = (ALGEBRAIC[38] - STATES[12])/ALGEBRAIC[52];
ALGEBRAIC[9] =  CONSTANTS[49]*exp(STATES[4]/CONSTANTS[50]);
ALGEBRAIC[25] =  CONSTANTS[103]*exp(STATES[4]/CONSTANTS[136]);
ALGEBRAIC[39] = ALGEBRAIC[9]/(ALGEBRAIC[9]+ALGEBRAIC[25]);
ALGEBRAIC[53] = 1.00000/(ALGEBRAIC[9]+ALGEBRAIC[25])+CONSTANTS[52];
RATES[13] = (ALGEBRAIC[39] - STATES[13])/ALGEBRAIC[53];
ALGEBRAIC[10] =  CONSTANTS[54]*exp(STATES[4]/CONSTANTS[106]);
ALGEBRAIC[26] =  CONSTANTS[107]*exp(STATES[4]/CONSTANTS[137]);
ALGEBRAIC[40] = ALGEBRAIC[10]/(ALGEBRAIC[10]+ALGEBRAIC[26]);
ALGEBRAIC[54] = 1.00000/(ALGEBRAIC[10]+ALGEBRAIC[26])+CONSTANTS[61];
RATES[14] = (ALGEBRAIC[40] - STATES[14])/ALGEBRAIC[54];
ALGEBRAIC[11] =  CONSTANTS[57]*exp(STATES[4]/CONSTANTS[108]);
ALGEBRAIC[27] =  CONSTANTS[138]*exp(STATES[4]/CONSTANTS[148]);
ALGEBRAIC[41] = ALGEBRAIC[11]/(ALGEBRAIC[11]+ALGEBRAIC[27]);
ALGEBRAIC[55] = 1.00000/(ALGEBRAIC[11]+ALGEBRAIC[27])+CONSTANTS[62];
RATES[15] = (ALGEBRAIC[41] - STATES[15])/ALGEBRAIC[55];
ALGEBRAIC[12] =  CONSTANTS[58]*exp(STATES[4]/CONSTANTS[59]);
ALGEBRAIC[28] =  CONSTANTS[110]*exp(STATES[4]/CONSTANTS[140]);
ALGEBRAIC[42] = ALGEBRAIC[12]/(ALGEBRAIC[12]+ALGEBRAIC[28]);
ALGEBRAIC[56] = 1.00000/(ALGEBRAIC[12]+ALGEBRAIC[28])+CONSTANTS[63];
RATES[16] = (ALGEBRAIC[42] - STATES[16])/ALGEBRAIC[56];
ALGEBRAIC[13] = ((1.00000 - STATES[19]) - STATES[18]) - STATES[17];
ALGEBRAIC[29] = CONSTANTS[70] - (CONSTANTS[70] - CONSTANTS[71])/(1.00000+pow(CONSTANTS[72]/STATES[1], 2.50000));
ALGEBRAIC[43] =  CONSTANTS[117]*ALGEBRAIC[29];
ALGEBRAIC[57] = CONSTANTS[141]/ALGEBRAIC[29];
RATES[17] = (( ( ALGEBRAIC[43]*STATES[0])*STATES[18] -  CONSTANTS[118]*STATES[17]) -  CONSTANTS[119]*STATES[17])+ ( ALGEBRAIC[57]*pow(STATES[0], 2.00000))*ALGEBRAIC[13];
RATES[18] = (( ( ALGEBRAIC[57]*pow(STATES[0], 2.00000))*STATES[19] -  CONSTANTS[119]*STATES[18]) -  ( ALGEBRAIC[43]*STATES[0])*STATES[18])+ CONSTANTS[118]*STATES[17];
RATES[19] = (( CONSTANTS[118]*ALGEBRAIC[13] -  ( ALGEBRAIC[43]*STATES[0])*STATES[19]) -  ( ALGEBRAIC[57]*pow(STATES[0], 2.00000))*STATES[19])+ CONSTANTS[119]*STATES[18];
ALGEBRAIC[14] =  CONSTANTS[75]*exp(STATES[4]/CONSTANTS[76]);
ALGEBRAIC[30] =  CONSTANTS[120]*exp(STATES[4]/CONSTANTS[142]);
ALGEBRAIC[44] = ALGEBRAIC[14]/(ALGEBRAIC[14]+ALGEBRAIC[30]);
ALGEBRAIC[58] = 1.00000/(ALGEBRAIC[14]+ALGEBRAIC[30])+CONSTANTS[81];
RATES[20] = (ALGEBRAIC[44] - STATES[20])/ALGEBRAIC[58];
ALGEBRAIC[15] =  CONSTANTS[78]*exp(STATES[4]/CONSTANTS[122]);
ALGEBRAIC[31] =  CONSTANTS[123]*exp(STATES[4]/CONSTANTS[143]);
ALGEBRAIC[45] = ALGEBRAIC[15]/(ALGEBRAIC[15]+ALGEBRAIC[31]);
ALGEBRAIC[59] = 1.00000/(ALGEBRAIC[15]+ALGEBRAIC[31])+CONSTANTS[82];
RATES[21] = (ALGEBRAIC[45] - STATES[21])/ALGEBRAIC[59];
ALGEBRAIC[3] = 1.00000/(1.00000+pow(( CONSTANTS[22]*STATES[0])/0.000325000, 8.00000));
ALGEBRAIC[19] = 0.100000/(1.00000+exp(( CONSTANTS[22]*STATES[0] - 0.000500000)/0.000100000));
ALGEBRAIC[35] = 0.200000/(1.00000+exp(( CONSTANTS[22]*STATES[0] - 0.000750000)/0.000800000));
ALGEBRAIC[49] = (((ALGEBRAIC[3]+ALGEBRAIC[19])+ALGEBRAIC[35])+0.230000)/1.46000;
ALGEBRAIC[61] = (ALGEBRAIC[49]>STATES[7]&&STATES[4]>- 60.0000 ? 0.00000 : 1.00000);
RATES[7] = ( ALGEBRAIC[61]*(ALGEBRAIC[49] - STATES[7]))/CONSTANTS[23];
ALGEBRAIC[83] = ( CONSTANTS[114]*( ( exp( ( CONSTANTS[113]*STATES[4])*CONSTANTS[90])*pow(STATES[3], 3.00000))*CONSTANTS[6] -  ( ( exp( ( (CONSTANTS[113] - 1.00000)*STATES[4])*CONSTANTS[90])*pow(CONSTANTS[8], 3.00000))*STATES[0])*CONSTANTS[112]))/( ( (pow(CONSTANTS[65], 3.00000)+pow(CONSTANTS[8], 3.00000))*(CONSTANTS[64]+CONSTANTS[6]))*(1.00000+ CONSTANTS[66]*exp( ( (CONSTANTS[113] - 1.00000)*STATES[4])*CONSTANTS[90])));
ALGEBRAIC[60] =  CONSTANTS[87]*log(CONSTANTS[8]/STATES[3]);
ALGEBRAIC[63] =  CONSTANTS[89]*(STATES[4] - ALGEBRAIC[60]);
ALGEBRAIC[68] = ( ( ( CONSTANTS[147]*STATES[4])*CONSTANTS[127])*( ( 0.750000*STATES[3])*exp( STATES[4]*CONSTANTS[90]) -  0.750000*CONSTANTS[8]))/(exp( STATES[4]*CONSTANTS[90]) - 1.00000);
ALGEBRAIC[69] =  ( ( ALGEBRAIC[68]*STATES[5])*STATES[6])*STATES[7];
ALGEBRAIC[73] =  ( ( CONSTANTS[96]*CONSTANTS[28])*STATES[10])*(STATES[4] - ALGEBRAIC[60]);
ALGEBRAIC[82] =  ( ( ( CONSTANTS[53]*pow(STATES[16], 3.00000))*STATES[14])*STATES[15])*(STATES[4] - ALGEBRAIC[60]);
ALGEBRAIC[84] = ( ( CONSTANTS[115]*CONSTANTS[7])*STATES[3])/( ( (CONSTANTS[7]+CONSTANTS[67])*(STATES[3]+CONSTANTS[68]))*((1.00000+ 0.124500*exp( ( - 0.100000*STATES[4])*CONSTANTS[90]))+ 0.0353000*exp( - STATES[4]*CONSTANTS[90])));
RATES[3] =  (- CONSTANTS[1]/( CONSTANTS[2]*CONSTANTS[144]))*((((((ALGEBRAIC[82])+ALGEBRAIC[63])+ALGEBRAIC[73])+ 3.00000*ALGEBRAIC[84])+ 3.00000*ALGEBRAIC[83])+ALGEBRAIC[69]);
ALGEBRAIC[66] = ( ( ( CONSTANTS[146]*STATES[4])*CONSTANTS[127])*( ( 0.750000*STATES[2])*exp( STATES[4]*CONSTANTS[90]) -  0.750000*CONSTANTS[7]))/(exp( STATES[4]*CONSTANTS[90]) - 1.00000);
ALGEBRAIC[67] =  ( ( ALGEBRAIC[66]*STATES[5])*STATES[6])*STATES[7];
ALGEBRAIC[46] =  CONSTANTS[87]*log(CONSTANTS[7]/STATES[2]);
ALGEBRAIC[72] =  ( ( (1.00000 - CONSTANTS[96])*CONSTANTS[28])*STATES[10])*(STATES[4] - ALGEBRAIC[46]);
ALGEBRAIC[75] =  CONSTANTS[34]*exp((STATES[4]+CONSTANTS[36])/CONSTANTS[35]);
ALGEBRAIC[76] =  1.00000*exp((STATES[4]+CONSTANTS[38])/CONSTANTS[37]);
ALGEBRAIC[77] = ALGEBRAIC[75]/(ALGEBRAIC[75]+ALGEBRAIC[76]);
ALGEBRAIC[78] =  ( ( CONSTANTS[33]* pow((CONSTANTS[7]/5.40000), 1.0 / 2))*ALGEBRAIC[77])*(STATES[4] - ALGEBRAIC[46]);
ALGEBRAIC[79] =  ( ( ( CONSTANTS[45]* pow((CONSTANTS[7]/5.40000), 1.0 / 2))*STATES[11])*STATES[12])*(STATES[4] - ALGEBRAIC[46]);
ALGEBRAIC[80] =  ( CONSTANTS[48]*pow(STATES[13], 2.00000))*(STATES[4] - ALGEBRAIC[46]);
ALGEBRAIC[87] =  ( ( CONSTANTS[74]*STATES[20])*STATES[21])*(STATES[4] - ALGEBRAIC[46]);
RATES[2] =  (- CONSTANTS[1]/( CONSTANTS[2]*CONSTANTS[144]))*(((((((ALGEBRAIC[78])+ALGEBRAIC[87])+ALGEBRAIC[79])+ALGEBRAIC[80])+ALGEBRAIC[72]) -  2.00000*ALGEBRAIC[84])+ALGEBRAIC[67]);
ALGEBRAIC[32] =  ( 0.500000*CONSTANTS[87])*log(CONSTANTS[6]/STATES[0]);
ALGEBRAIC[71] =  ( ( CONSTANTS[26]*STATES[8])*STATES[9])*(STATES[4] - ALGEBRAIC[32]);
ALGEBRAIC[85] = ( CONSTANTS[116]*STATES[0])/(STATES[0]+CONSTANTS[69]);
ALGEBRAIC[62] =  CONSTANTS[88]*(STATES[4] - ALGEBRAIC[32]);
ALGEBRAIC[64] = ( ( ( ( CONSTANTS[145]*4.00000)*STATES[4])*CONSTANTS[127])*( ( 0.341000*STATES[0])*exp( ( 2.00000*STATES[4])*CONSTANTS[90]) -  0.341000*CONSTANTS[6]))/(exp( ( 2.00000*STATES[4])*CONSTANTS[90]) - 1.00000);
ALGEBRAIC[65] =  ( ( ALGEBRAIC[64]*STATES[5])*STATES[6])*STATES[7];
ALGEBRAIC[70] = (ALGEBRAIC[65]+ALGEBRAIC[69])+ALGEBRAIC[67];
ALGEBRAIC[74] = ALGEBRAIC[73]+ALGEBRAIC[72];
RATES[4] = - ((((((((((((((ALGEBRAIC[78])+ALGEBRAIC[87])+ALGEBRAIC[79])+ALGEBRAIC[80])+ALGEBRAIC[70])+ALGEBRAIC[71])+ALGEBRAIC[84])+ALGEBRAIC[82])+ALGEBRAIC[83])+ALGEBRAIC[85])+ALGEBRAIC[74])+ALGEBRAIC[63])+ALGEBRAIC[62])+CONSTANTS[150]);
ALGEBRAIC[0] = 1.00000/(1.00000+( CONSTANTS[0]*CONSTANTS[3])/pow(STATES[0]+CONSTANTS[3], 2.00000));
ALGEBRAIC[81] =  (STATES[1] - STATES[0])*CONSTANTS[105];
ALGEBRAIC[86] =  ( ( CONSTANTS[73]*STATES[18])*(STATES[1] - STATES[0]))*(CONSTANTS[126]/CONSTANTS[144]);
ALGEBRAIC[88] = CONSTANTS[125]/(1.00000+pow(CONSTANTS[124], 2.00000)/pow(STATES[0], 2.00000));
RATES[0] =  ALGEBRAIC[0]*(((- ALGEBRAIC[88]+ALGEBRAIC[81])+ALGEBRAIC[86]) -  (CONSTANTS[1]/( ( 2.00000*CONSTANTS[144])*CONSTANTS[2]))*(((((ALGEBRAIC[65])+ALGEBRAIC[71])+ALGEBRAIC[62])+ALGEBRAIC[85]) -  2.00000*ALGEBRAIC[83]));
ALGEBRAIC[16] = 1.00000/(1.00000+( CONSTANTS[86]*CONSTANTS[4])/pow(STATES[1]+CONSTANTS[4], 2.00000));
RATES[1] =  (( ALGEBRAIC[16]*CONSTANTS[144])/CONSTANTS[126])*((ALGEBRAIC[88] - ALGEBRAIC[86]) - ALGEBRAIC[81]);
}
void
computeVariables(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC)
{
ALGEBRAIC[4] = 1.00000/(1.00000+exp((STATES[4]+26.3000)/- 6.00000));
ALGEBRAIC[20] = 1.00000/( 1.06800*exp((STATES[4]+26.3000)/30.0000)+ 1.06800*exp((STATES[4]+26.3000)/- 30.0000));
ALGEBRAIC[5] = 1.00000/(1.00000+exp((STATES[4]+61.7000)/5.60000));
ALGEBRAIC[21] = 1.00000/( 0.0153000*exp(- (STATES[4]+61.7000)/83.3000)+ 0.0150000*exp((STATES[4]+61.7000)/15.3800));
ALGEBRAIC[1] =  CONSTANTS[12]*exp(STATES[4]/CONSTANTS[13]);
ALGEBRAIC[17] =  CONSTANTS[91]*exp(STATES[4]/CONSTANTS[128]);
ALGEBRAIC[33] = ALGEBRAIC[1]/(ALGEBRAIC[1]+ALGEBRAIC[17]);
ALGEBRAIC[47] = 1.00000/(ALGEBRAIC[1]+ALGEBRAIC[17])+CONSTANTS[24];
ALGEBRAIC[2] =  CONSTANTS[15]*exp(STATES[4]/CONSTANTS[93]);
ALGEBRAIC[18] =  CONSTANTS[94]*exp(STATES[4]/CONSTANTS[129]);
ALGEBRAIC[34] = ALGEBRAIC[2]/(ALGEBRAIC[2]+ALGEBRAIC[18]);
ALGEBRAIC[48] = 1.00000/(ALGEBRAIC[2]+ALGEBRAIC[18])+CONSTANTS[25];
ALGEBRAIC[6] =  CONSTANTS[29]*exp(STATES[4]/CONSTANTS[97]);
ALGEBRAIC[22] =  CONSTANTS[98]*exp(STATES[4]/CONSTANTS[133]);
ALGEBRAIC[36] = ALGEBRAIC[6]/(ALGEBRAIC[6]+ALGEBRAIC[22]);
ALGEBRAIC[50] = 1.00000/(ALGEBRAIC[6]+ALGEBRAIC[22])+CONSTANTS[32];
ALGEBRAIC[7] =  CONSTANTS[39]*exp(STATES[4]/CONSTANTS[40]);
ALGEBRAIC[23] =  CONSTANTS[99]*exp(STATES[4]/CONSTANTS[134]);
ALGEBRAIC[37] = ALGEBRAIC[7]/(ALGEBRAIC[7]+ALGEBRAIC[23]);
ALGEBRAIC[51] = 1.00000/(ALGEBRAIC[7]+ALGEBRAIC[23])+CONSTANTS[46];
ALGEBRAIC[8] =  CONSTANTS[42]*exp(STATES[4]/CONSTANTS[101]);
ALGEBRAIC[24] =  CONSTANTS[102]*exp(STATES[4]/CONSTANTS[135]);
ALGEBRAIC[38] = ALGEBRAIC[8]/(ALGEBRAIC[8]+ALGEBRAIC[24]);
ALGEBRAIC[52] = 1.00000/(ALGEBRAIC[8]+ALGEBRAIC[24])+CONSTANTS[47];
ALGEBRAIC[9] =  CONSTANTS[49]*exp(STATES[4]/CONSTANTS[50]);
ALGEBRAIC[25] =  CONSTANTS[103]*exp(STATES[4]/CONSTANTS[136]);
ALGEBRAIC[39] = ALGEBRAIC[9]/(ALGEBRAIC[9]+ALGEBRAIC[25]);
ALGEBRAIC[53] = 1.00000/(ALGEBRAIC[9]+ALGEBRAIC[25])+CONSTANTS[52];
ALGEBRAIC[10] =  CONSTANTS[54]*exp(STATES[4]/CONSTANTS[106]);
ALGEBRAIC[26] =  CONSTANTS[107]*exp(STATES[4]/CONSTANTS[137]);
ALGEBRAIC[40] = ALGEBRAIC[10]/(ALGEBRAIC[10]+ALGEBRAIC[26]);
ALGEBRAIC[54] = 1.00000/(ALGEBRAIC[10]+ALGEBRAIC[26])+CONSTANTS[61];
ALGEBRAIC[11] =  CONSTANTS[57]*exp(STATES[4]/CONSTANTS[108]);
ALGEBRAIC[27] =  CONSTANTS[138]*exp(STATES[4]/CONSTANTS[148]);
ALGEBRAIC[41] = ALGEBRAIC[11]/(ALGEBRAIC[11]+ALGEBRAIC[27]);
ALGEBRAIC[55] = 1.00000/(ALGEBRAIC[11]+ALGEBRAIC[27])+CONSTANTS[62];
ALGEBRAIC[12] =  CONSTANTS[58]*exp(STATES[4]/CONSTANTS[59]);
ALGEBRAIC[28] =  CONSTANTS[110]*exp(STATES[4]/CONSTANTS[140]);
ALGEBRAIC[42] = ALGEBRAIC[12]/(ALGEBRAIC[12]+ALGEBRAIC[28]);
ALGEBRAIC[56] = 1.00000/(ALGEBRAIC[12]+ALGEBRAIC[28])+CONSTANTS[63];
ALGEBRAIC[13] = ((1.00000 - STATES[19]) - STATES[18]) - STATES[17];
ALGEBRAIC[29] = CONSTANTS[70] - (CONSTANTS[70] - CONSTANTS[71])/(1.00000+pow(CONSTANTS[72]/STATES[1], 2.50000));
ALGEBRAIC[43] =  CONSTANTS[117]*ALGEBRAIC[29];
ALGEBRAIC[57] = CONSTANTS[141]/ALGEBRAIC[29];
ALGEBRAIC[14] =  CONSTANTS[75]*exp(STATES[4]/CONSTANTS[76]);
ALGEBRAIC[30] =  CONSTANTS[120]*exp(STATES[4]/CONSTANTS[142]);
ALGEBRAIC[44] = ALGEBRAIC[14]/(ALGEBRAIC[14]+ALGEBRAIC[30]);
ALGEBRAIC[58] = 1.00000/(ALGEBRAIC[14]+ALGEBRAIC[30])+CONSTANTS[81];
ALGEBRAIC[15] =  CONSTANTS[78]*exp(STATES[4]/CONSTANTS[122]);
ALGEBRAIC[31] =  CONSTANTS[123]*exp(STATES[4]/CONSTANTS[143]);
ALGEBRAIC[45] = ALGEBRAIC[15]/(ALGEBRAIC[15]+ALGEBRAIC[31]);
ALGEBRAIC[59] = 1.00000/(ALGEBRAIC[15]+ALGEBRAIC[31])+CONSTANTS[82];
ALGEBRAIC[3] = 1.00000/(1.00000+pow(( CONSTANTS[22]*STATES[0])/0.000325000, 8.00000));
ALGEBRAIC[19] = 0.100000/(1.00000+exp(( CONSTANTS[22]*STATES[0] - 0.000500000)/0.000100000));
ALGEBRAIC[35] = 0.200000/(1.00000+exp(( CONSTANTS[22]*STATES[0] - 0.000750000)/0.000800000));
ALGEBRAIC[49] = (((ALGEBRAIC[3]+ALGEBRAIC[19])+ALGEBRAIC[35])+0.230000)/1.46000;
ALGEBRAIC[61] = (ALGEBRAIC[49]>STATES[7]&&STATES[4]>- 60.0000 ? 0.00000 : 1.00000);
ALGEBRAIC[83] = ( CONSTANTS[114]*( ( exp( ( CONSTANTS[113]*STATES[4])*CONSTANTS[90])*pow(STATES[3], 3.00000))*CONSTANTS[6] -  ( ( exp( ( (CONSTANTS[113] - 1.00000)*STATES[4])*CONSTANTS[90])*pow(CONSTANTS[8], 3.00000))*STATES[0])*CONSTANTS[112]))/( ( (pow(CONSTANTS[65], 3.00000)+pow(CONSTANTS[8], 3.00000))*(CONSTANTS[64]+CONSTANTS[6]))*(1.00000+ CONSTANTS[66]*exp( ( (CONSTANTS[113] - 1.00000)*STATES[4])*CONSTANTS[90])));
ALGEBRAIC[60] =  CONSTANTS[87]*log(CONSTANTS[8]/STATES[3]);
ALGEBRAIC[63] =  CONSTANTS[89]*(STATES[4] - ALGEBRAIC[60]);
ALGEBRAIC[68] = ( ( ( CONSTANTS[147]*STATES[4])*CONSTANTS[127])*( ( 0.750000*STATES[3])*exp( STATES[4]*CONSTANTS[90]) -  0.750000*CONSTANTS[8]))/(exp( STATES[4]*CONSTANTS[90]) - 1.00000);
ALGEBRAIC[69] =  ( ( ALGEBRAIC[68]*STATES[5])*STATES[6])*STATES[7];
ALGEBRAIC[73] =  ( ( CONSTANTS[96]*CONSTANTS[28])*STATES[10])*(STATES[4] - ALGEBRAIC[60]);
ALGEBRAIC[82] =  ( ( ( CONSTANTS[53]*pow(STATES[16], 3.00000))*STATES[14])*STATES[15])*(STATES[4] - ALGEBRAIC[60]);
ALGEBRAIC[84] = ( ( CONSTANTS[115]*CONSTANTS[7])*STATES[3])/( ( (CONSTANTS[7]+CONSTANTS[67])*(STATES[3]+CONSTANTS[68]))*((1.00000+ 0.124500*exp( ( - 0.100000*STATES[4])*CONSTANTS[90]))+ 0.0353000*exp( - STATES[4]*CONSTANTS[90])));
ALGEBRAIC[66] = ( ( ( CONSTANTS[146]*STATES[4])*CONSTANTS[127])*( ( 0.750000*STATES[2])*exp( STATES[4]*CONSTANTS[90]) -  0.750000*CONSTANTS[7]))/(exp( STATES[4]*CONSTANTS[90]) - 1.00000);
ALGEBRAIC[67] =  ( ( ALGEBRAIC[66]*STATES[5])*STATES[6])*STATES[7];
ALGEBRAIC[46] =  CONSTANTS[87]*log(CONSTANTS[7]/STATES[2]);
ALGEBRAIC[72] =  ( ( (1.00000 - CONSTANTS[96])*CONSTANTS[28])*STATES[10])*(STATES[4] - ALGEBRAIC[46]);
ALGEBRAIC[75] =  CONSTANTS[34]*exp((STATES[4]+CONSTANTS[36])/CONSTANTS[35]);
ALGEBRAIC[76] =  1.00000*exp((STATES[4]+CONSTANTS[38])/CONSTANTS[37]);
ALGEBRAIC[77] = ALGEBRAIC[75]/(ALGEBRAIC[75]+ALGEBRAIC[76]);
ALGEBRAIC[78] =  ( ( CONSTANTS[33]* pow((CONSTANTS[7]/5.40000), 1.0 / 2))*ALGEBRAIC[77])*(STATES[4] - ALGEBRAIC[46]);
ALGEBRAIC[79] =  ( ( ( CONSTANTS[45]* pow((CONSTANTS[7]/5.40000), 1.0 / 2))*STATES[11])*STATES[12])*(STATES[4] - ALGEBRAIC[46]);
ALGEBRAIC[80] =  ( CONSTANTS[48]*pow(STATES[13], 2.00000))*(STATES[4] - ALGEBRAIC[46]);
ALGEBRAIC[87] =  ( ( CONSTANTS[74]*STATES[20])*STATES[21])*(STATES[4] - ALGEBRAIC[46]);
ALGEBRAIC[32] =  ( 0.500000*CONSTANTS[87])*log(CONSTANTS[6]/STATES[0]);
ALGEBRAIC[71] =  ( ( CONSTANTS[26]*STATES[8])*STATES[9])*(STATES[4] - ALGEBRAIC[32]);
ALGEBRAIC[85] = ( CONSTANTS[116]*STATES[0])/(STATES[0]+CONSTANTS[69]);
ALGEBRAIC[62] =  CONSTANTS[88]*(STATES[4] - ALGEBRAIC[32]);
ALGEBRAIC[64] = ( ( ( ( CONSTANTS[145]*4.00000)*STATES[4])*CONSTANTS[127])*( ( 0.341000*STATES[0])*exp( ( 2.00000*STATES[4])*CONSTANTS[90]) -  0.341000*CONSTANTS[6]))/(exp( ( 2.00000*STATES[4])*CONSTANTS[90]) - 1.00000);
ALGEBRAIC[65] =  ( ( ALGEBRAIC[64]*STATES[5])*STATES[6])*STATES[7];
ALGEBRAIC[70] = (ALGEBRAIC[65]+ALGEBRAIC[69])+ALGEBRAIC[67];
ALGEBRAIC[74] = ALGEBRAIC[73]+ALGEBRAIC[72];
ALGEBRAIC[0] = 1.00000/(1.00000+( CONSTANTS[0]*CONSTANTS[3])/pow(STATES[0]+CONSTANTS[3], 2.00000));
ALGEBRAIC[81] =  (STATES[1] - STATES[0])*CONSTANTS[105];
ALGEBRAIC[86] =  ( ( CONSTANTS[73]*STATES[18])*(STATES[1] - STATES[0]))*(CONSTANTS[126]/CONSTANTS[144]);
ALGEBRAIC[88] = CONSTANTS[125]/(1.00000+pow(CONSTANTS[124], 2.00000)/pow(STATES[0], 2.00000));
ALGEBRAIC[16] = 1.00000/(1.00000+( CONSTANTS[86]*CONSTANTS[4])/pow(STATES[1]+CONSTANTS[4], 2.00000));
}
Source
Derived from workspace Kernik et al. 2019 at changeset 2c123f3eba5b.
Collaboration
To begin collaborating on this work, please use your git client and issue this command:
License
The terms of use/license for this work is unspecified.