Views
A Computer Model for the Action Potential of Mouse Ventricular Myocytes
Generated code
Download this code
- The required array sizes are:
- VARIABLES[113]
- CONSTANTS[71]
- BOUND[1]
- RATES[41]
- The following variables are defined:
- Variable P_O1(RATES[0] and VARIABLES[0])
- Variable P_O2(RATES[1] and VARIABLES[1])
- Variable P_C1(VARIABLES[41]; recomputed after rate changes)
- Variable P_C2(RATES[2] and VARIABLES[2])
- Variable k_plus_a(CONSTANTS[0])
- Variable k_minus_a(CONSTANTS[1])
- Variable k_plus_b(CONSTANTS[2])
- Variable k_minus_b(CONSTANTS[3])
- Variable k_plus_c(CONSTANTS[4])
- Variable k_minus_c(CONSTANTS[5])
- Variable m(CONSTANTS[6])
- Variable n(CONSTANTS[7])
- Variable i_CaL(VARIABLES[42]; recomputed after rate changes)
- Variable i_CaL_max(CONSTANTS[8])
- Variable E_CaL(CONSTANTS[9])
- Variable g_CaL(CONSTANTS[10])
- Variable O(RATES[3] and VARIABLES[3])
- Variable C1(VARIABLES[43]; recomputed after rate changes)
- Variable C2(RATES[4] and VARIABLES[4])
- Variable C3(RATES[5] and VARIABLES[5])
- Variable C4(RATES[6] and VARIABLES[6])
- Variable I1(RATES[7] and VARIABLES[7])
- Variable I2(RATES[8] and VARIABLES[8])
- Variable I3(RATES[9] and VARIABLES[9])
- Variable alpha(VARIABLES[44]; recomputed after rate changes)
- Variable beta(VARIABLES[45]; recomputed after rate changes)
- Variable gamma(VARIABLES[46]; recomputed after rate changes)
- Variable Kpcf(VARIABLES[47]; recomputed after rate changes)
- Variable Kpcb(CONSTANTS[11])
- Variable Kpc_max(CONSTANTS[12])
- Variable Kpc_half(CONSTANTS[13])
- Variable i_pCa(VARIABLES[48]; recomputed after rate changes)
- Variable i_pCa_max(CONSTANTS[14])
- Variable Km_pCa(CONSTANTS[15])
- Variable i_NaCa(VARIABLES[49]; recomputed after rate changes)
- Variable k_NaCa(CONSTANTS[16])
- Variable K_mNa(CONSTANTS[17])
- Variable K_mCa(CONSTANTS[18])
- Variable k_sat(CONSTANTS[19])
- Variable eta(CONSTANTS[20])
- Variable i_Cab(VARIABLES[50]; recomputed after rate changes)
- Variable g_Cab(CONSTANTS[21])
- Variable E_CaN(VARIABLES[51]; recomputed after rate changes)
- Variable Nai(RATES[10] and VARIABLES[10])
- Variable i_Na(VARIABLES[52]; recomputed after rate changes)
- Variable E_Na(VARIABLES[53]; recomputed after rate changes)
- Variable g_Na(CONSTANTS[22])
- Variable O_Na(RATES[11] and VARIABLES[11])
- Variable C_Na1(RATES[12] and VARIABLES[12])
- Variable C_Na2(RATES[13] and VARIABLES[13])
- Variable C_Na3(VARIABLES[54]; recomputed after rate changes)
- Variable I1_Na(RATES[14] and VARIABLES[14])
- Variable I2_Na(RATES[15] and VARIABLES[15])
- Variable IF_Na(RATES[16] and VARIABLES[16])
- Variable IC_Na2(RATES[17] and VARIABLES[17])
- Variable IC_Na3(RATES[18] and VARIABLES[18])
- Variable alpha_Na11(VARIABLES[55]; recomputed after rate changes)
- Variable beta_Na11(VARIABLES[56]; recomputed after rate changes)
- Variable alpha_Na12(VARIABLES[57]; recomputed after rate changes)
- Variable beta_Na12(VARIABLES[58]; recomputed after rate changes)
- Variable alpha_Na13(VARIABLES[59]; recomputed after rate changes)
- Variable beta_Na13(VARIABLES[60]; recomputed after rate changes)
- Variable alpha_Na3(VARIABLES[61]; recomputed after rate changes)
- Variable beta_Na3(VARIABLES[62]; recomputed after rate changes)
- Variable alpha_Na2(VARIABLES[63]; recomputed after rate changes)
- Variable beta_Na2(VARIABLES[64]; recomputed after rate changes)
- Variable alpha_Na4(VARIABLES[65]; recomputed after rate changes)
- Variable beta_Na4(VARIABLES[66]; recomputed after rate changes)
- Variable alpha_Na5(VARIABLES[67]; recomputed after rate changes)
- Variable beta_Na5(VARIABLES[68]; recomputed after rate changes)
- Variable i_Nab(VARIABLES[69]; recomputed after rate changes)
- Variable g_Nab(CONSTANTS[23])
- Variable Ki(RATES[19] and VARIABLES[19])
- Variable i_Kto_f(VARIABLES[70]; recomputed after rate changes)
- Variable E_K(VARIABLES[71]; recomputed after rate changes)
- Variable g_Kto_f(CONSTANTS[24])
- Variable ato_f(RATES[20] and VARIABLES[20])
- Variable ito_f(RATES[21] and VARIABLES[21])
- Variable alpha_a(VARIABLES[72]; recomputed after rate changes)
- Variable beta_a(VARIABLES[73]; recomputed after rate changes)
- Variable alpha_i(VARIABLES[74]; recomputed after rate changes)
- Variable beta_i(VARIABLES[75]; recomputed after rate changes)
- Variable i_Kto_s(VARIABLES[76]; recomputed after rate changes)
- Variable ass(VARIABLES[77]; recomputed after rate changes)
- Variable iss(VARIABLES[78]; recomputed after rate changes)
- Variable g_Kto_s(CONSTANTS[25])
- Variable ato_s(RATES[22] and VARIABLES[22])
- Variable ito_s(RATES[23] and VARIABLES[23])
- Variable tau_ta_s(VARIABLES[79]; recomputed after rate changes)
- Variable tau_ti_s(VARIABLES[80]; recomputed after rate changes)
- Variable i_K1(VARIABLES[81]; recomputed after rate changes)
- Variable i_Ks(VARIABLES[82]; recomputed after rate changes)
- Variable g_Ks(CONSTANTS[26])
- Variable nKs(RATES[24] and VARIABLES[24])
- Variable alpha_n(VARIABLES[83]; recomputed after rate changes)
- Variable beta_n(VARIABLES[84]; recomputed after rate changes)
- Variable i_Kur(VARIABLES[85]; recomputed after rate changes)
- Variable g_Kur(CONSTANTS[27])
- Variable aur(RATES[25] and VARIABLES[25])
- Variable iur(RATES[26] and VARIABLES[26])
- Variable tau_aur(VARIABLES[86]; recomputed after rate changes)
- Variable tau_iur(VARIABLES[87]; recomputed after rate changes)
- Variable i_Kss(VARIABLES[88]; recomputed after rate changes)
- Variable g_Kss(CONSTANTS[28])
- Variable aKss(RATES[27] and VARIABLES[27])
- Variable iKss(RATES[28] and VARIABLES[28])
- Variable tau_Kss(VARIABLES[89]; recomputed after rate changes)
- Variable i_Kr(VARIABLES[90]; recomputed after rate changes)
- Variable g_Kr(CONSTANTS[29])
- Variable O_K(RATES[29] and VARIABLES[29])
- Variable C_K1(RATES[30] and VARIABLES[30])
- Variable C_K2(RATES[31] and VARIABLES[31])
- Variable C_K0(VARIABLES[91]; recomputed after rate changes)
- Variable I_K(RATES[32] and VARIABLES[32])
- Variable alpha_a0(VARIABLES[92]; recomputed after rate changes)
- Variable beta_a0(VARIABLES[93]; recomputed after rate changes)
- Variable kb(CONSTANTS[30])
- Variable kf(CONSTANTS[31])
- Variable alpha_a1(VARIABLES[94]; recomputed after rate changes)
- Variable beta_a1(VARIABLES[95]; recomputed after rate changes)
- Variable alpha_i(VARIABLES[96]; recomputed after rate changes)
- Variable beta_i(VARIABLES[97]; recomputed after rate changes)
- Variable i_NaK(VARIABLES[98]; recomputed after rate changes)
- Variable i_NaK_max(CONSTANTS[32])
- Variable Km_Nai(CONSTANTS[33])
- Variable Km_Ko(CONSTANTS[34])
- Variable f_NaK(VARIABLES[99]; recomputed after rate changes)
- Variable sigma(VARIABLES[100]; computed once)
- Variable i_ClCa(VARIABLES[101]; recomputed after rate changes)
- Variable g_ClCa(CONSTANTS[35])
- Variable O_ClCa(VARIABLES[102]; recomputed after rate changes)
- Variable E_Cl(CONSTANTS[36])
- Variable Km_Cl(CONSTANTS[37])
- Variable time(BOUND[0])
- Variable V(RATES[33] and VARIABLES[33])
- Variable Cm(CONSTANTS[38])
- Variable Vmyo(CONSTANTS[39])
- Variable VJSR(CONSTANTS[40])
- Variable VNSR(CONSTANTS[41])
- Variable Vss(CONSTANTS[42])
- Variable Acap(CONSTANTS[43])
- Variable Ko(CONSTANTS[44])
- Variable Nao(CONSTANTS[45])
- Variable Cao(CONSTANTS[46])
- Variable R(CONSTANTS[47])
- Variable T(CONSTANTS[48])
- Variable F(CONSTANTS[49])
- Variable i_stim(VARIABLES[103]; recomputed after rate changes)
- Variable stim_start(CONSTANTS[50])
- Variable stim_end(CONSTANTS[51])
- Variable stim_period(CONSTANTS[52])
- Variable stim_duration(CONSTANTS[53])
- Variable stim_amplitude(CONSTANTS[54])
- Variable Cai(RATES[34] and VARIABLES[34])
- Variable Cass(RATES[35] and VARIABLES[35])
- Variable CaJSR(RATES[36] and VARIABLES[36])
- Variable CaNSR(RATES[37] and VARIABLES[37])
- Variable Bi(VARIABLES[104]; recomputed after rate changes)
- Variable Bss(VARIABLES[105]; recomputed after rate changes)
- Variable BJSR(VARIABLES[106]; recomputed after rate changes)
- Variable CMDN_tot(CONSTANTS[55])
- Variable CSQN_tot(CONSTANTS[56])
- Variable Km_CMDN(CONSTANTS[57])
- Variable Km_CSQN(CONSTANTS[58])
- Variable J_leak(VARIABLES[107]; recomputed after rate changes)
- Variable J_rel(VARIABLES[108]; recomputed after rate changes)
- Variable J_up(VARIABLES[109]; recomputed after rate changes)
- Variable J_tr(VARIABLES[110]; recomputed after rate changes)
- Variable J_trpn(VARIABLES[111]; recomputed after rate changes)
- Variable J_xfer(VARIABLES[112]; recomputed after rate changes)
- Variable k_plus_htrpn(CONSTANTS[59])
- Variable k_minus_htrpn(CONSTANTS[60])
- Variable k_plus_ltrpn(CONSTANTS[61])
- Variable k_minus_ltrpn(CONSTANTS[62])
- Variable P_RyR(RATES[38] and VARIABLES[38])
- Variable v1(CONSTANTS[63])
- Variable tau_tr(CONSTANTS[64])
- Variable v2(CONSTANTS[65])
- Variable tau_xfer(CONSTANTS[66])
- Variable v3(CONSTANTS[67])
- Variable Km_up(CONSTANTS[68])
- Variable LTRPN_tot(CONSTANTS[69])
- Variable HTRPN_tot(CONSTANTS[70])
- Variable LTRPN_Ca(RATES[39] and VARIABLES[39])
- Variable HTRPN_Ca(RATES[40] and VARIABLES[40])
- No equation needed for Newton-Raphson evaluation.
void SetupFixedConstants(double* CONSTANTS)
{
CONSTANTS[0] = 0.006075;
CONSTANTS[1] = 0.07125;
CONSTANTS[2] = 0.00405;
CONSTANTS[3] = 0.965;
CONSTANTS[4] = 0.009;
CONSTANTS[5] = 0.0008;
CONSTANTS[6] = 3;
CONSTANTS[7] = 4;
CONSTANTS[8] = 7;
CONSTANTS[9] = 63;
CONSTANTS[10] = 0.1729;
CONSTANTS[11] = 0.0005;
CONSTANTS[12] = 0.23324;
CONSTANTS[13] = 20;
CONSTANTS[14] = 1;
CONSTANTS[15] = 0.5;
CONSTANTS[16] = 292.8;
CONSTANTS[17] = 87500;
CONSTANTS[18] = 1380;
CONSTANTS[19] = 0.1;
CONSTANTS[20] = 0.35;
CONSTANTS[21] = 0.000367;
CONSTANTS[22] = 13;
CONSTANTS[23] = 0.0026;
CONSTANTS[24] = 0.4067;
CONSTANTS[25] = 0;
CONSTANTS[26] = 0.00575;
CONSTANTS[27] = 0.16;
CONSTANTS[28] = 0.05;
CONSTANTS[29] = 0.078;
CONSTANTS[30] = 0.036778;
CONSTANTS[31] = 0.023761;
CONSTANTS[32] = 0.88;
CONSTANTS[33] = 21000;
CONSTANTS[34] = 1500;
CONSTANTS[35] = 10;
CONSTANTS[36] = -40;
CONSTANTS[37] = 10;
CONSTANTS[38] = 1;
CONSTANTS[39] = 2.584e-05;
CONSTANTS[40] = 1.2e-07;
CONSTANTS[41] = 2.098e-06;
CONSTANTS[42] = 1.485e-09;
CONSTANTS[43] = 0.0001534;
CONSTANTS[44] = 5400;
CONSTANTS[45] = 140000;
CONSTANTS[46] = 1800;
CONSTANTS[47] = 8.314;
CONSTANTS[48] = 298;
CONSTANTS[49] = 96.5;
CONSTANTS[50] = 20;
CONSTANTS[51] = 100000;
CONSTANTS[52] = 71.43;
CONSTANTS[53] = 0.5;
CONSTANTS[54] = -80;
CONSTANTS[55] = 50;
CONSTANTS[56] = 15000;
CONSTANTS[57] = 0.238;
CONSTANTS[58] = 800;
CONSTANTS[59] = 0.00237;
CONSTANTS[60] = 3.2e-05;
CONSTANTS[61] = 0.0327;
CONSTANTS[62] = 0.0196;
CONSTANTS[63] = 4.5;
CONSTANTS[64] = 20;
CONSTANTS[65] = 1.74e-05;
CONSTANTS[66] = 8;
CONSTANTS[67] = 0.45;
CONSTANTS[68] = 0.5;
CONSTANTS[69] = 70;
CONSTANTS[70] = 140;
}
void SetupComputedConstants(double* CONSTANTS, double* VARIABLES)
{
VARIABLES[100] = ((1.00000/7.00000)*(exp((CONSTANTS[45]/67300.0))-1.00000));
VARIABLES[0] = 1.49102e-05;
VARIABLES[1] = 9.51726e-11;
VARIABLES[2] = 0.000167740;
VARIABLES[3] = 9.30308e-19;
VARIABLES[4] = 0.000124216;
VARIABLES[5] = 5.78679e-09;
VARIABLES[6] = 1.19816e-13;
VARIABLES[7] = 4.97923e-19;
VARIABLES[8] = 3.45847e-14;
VARIABLES[9] = 1.85106e-14;
VARIABLES[10] = 14237.1;
VARIABLES[11] = 7.13483e-07;
VARIABLES[12] = 0.000279132;
VARIABLES[13] = 0.0207520;
VARIABLES[14] = 6.73345e-07;
VARIABLES[15] = 1.55787e-09;
VARIABLES[16] = 0.000153176;
VARIABLES[17] = 0.0113879;
VARIABLES[18] = 0.342780;
VARIABLES[19] = 143720.;
VARIABLES[20] = 0.00265563;
VARIABLES[21] = 0.999977;
VARIABLES[22] = 0.000417069;
VARIABLES[23] = 0.998543;
VARIABLES[24] = 0.000262753;
VARIABLES[25] = 0.000417069;
VARIABLES[26] = 0.998543;
VARIABLES[27] = 0.000417069;
VARIABLES[28] = 1.00000;
VARIABLES[29] = 0.000175298;
VARIABLES[30] = 0.000992513;
VARIABLES[31] = 0.000641229;
VARIABLES[32] = 3.19129e-05;
VARIABLES[33] = -82.4202;
VARIABLES[34] = 0.115001;
VARIABLES[35] = 0.115001;
VARIABLES[36] = 1299.50;
VARIABLES[37] = 1299.50;
VARIABLES[38] = 0.00000;
VARIABLES[39] = 11.2684;
VARIABLES[40] = 125.290;
}
void ComputeRates(double* BOUND, double* RATES, double* CONSTANTS, double* VARIABLES)
{
RATES[33] = (-(VARIABLES[42]+VARIABLES[48]+VARIABLES[49]+VARIABLES[50]+VARIABLES[52]+VARIABLES[69]+VARIABLES[98]+VARIABLES[70]+VARIABLES[76]+VARIABLES[81]+VARIABLES[82]+VARIABLES[85]+VARIABLES[88]+VARIABLES[90]+VARIABLES[101]+VARIABLES[103]));
RATES[34] = (VARIABLES[104]*((VARIABLES[107]+VARIABLES[112])-(VARIABLES[109]+VARIABLES[111]+((((VARIABLES[50]+VARIABLES[48])-(2.00000*VARIABLES[49]))*CONSTANTS[43]*CONSTANTS[38])/(2.00000*CONSTANTS[39]*CONSTANTS[49])))));
RATES[35] = (VARIABLES[105]*(((VARIABLES[108]*CONSTANTS[40])/CONSTANTS[42])-(((VARIABLES[112]*CONSTANTS[39])/CONSTANTS[42])+((VARIABLES[42]*CONSTANTS[43]*CONSTANTS[38])/(2.00000*CONSTANTS[42]*CONSTANTS[49])))));
RATES[36] = (VARIABLES[106]*(VARIABLES[110]-VARIABLES[108]));
RATES[37] = ((((VARIABLES[109]-VARIABLES[107])*CONSTANTS[39])/CONSTANTS[41])-((VARIABLES[110]*CONSTANTS[40])/CONSTANTS[41]));
RATES[38] = (((-0.0400000)*VARIABLES[38])-(((0.100000*VARIABLES[42])/CONSTANTS[8])*exp(((-pow((VARIABLES[33]-5.00000),2.00000))/648.000))));
RATES[39] = ((CONSTANTS[61]*VARIABLES[34]*(CONSTANTS[69]-VARIABLES[39]))-(CONSTANTS[62]*VARIABLES[39]));
RATES[40] = ((CONSTANTS[59]*VARIABLES[34]*(CONSTANTS[70]-VARIABLES[40]))-(CONSTANTS[60]*VARIABLES[40]));
RATES[0] = (((CONSTANTS[0]*pow(VARIABLES[35],CONSTANTS[7])*VARIABLES[41])+(CONSTANTS[3]*VARIABLES[1])+(CONSTANTS[5]*VARIABLES[2]))-((CONSTANTS[1]*VARIABLES[0])+(CONSTANTS[2]*pow(VARIABLES[35],CONSTANTS[6])*VARIABLES[0])+(CONSTANTS[4]*VARIABLES[0])));
RATES[1] = ((CONSTANTS[2]*pow(VARIABLES[35],CONSTANTS[6])*VARIABLES[0])-(CONSTANTS[3]*VARIABLES[1]));
RATES[2] = ((CONSTANTS[4]*VARIABLES[0])-(CONSTANTS[5]*VARIABLES[2]));
RATES[3] = (((VARIABLES[44]*VARIABLES[6])+(CONSTANTS[11]*VARIABLES[7])+(0.00100000*((VARIABLES[44]*VARIABLES[8])-(VARIABLES[47]*VARIABLES[3]))))-((4.00000*VARIABLES[45]*VARIABLES[3])+(VARIABLES[46]*VARIABLES[3])));
RATES[4] = (((4.00000*VARIABLES[44]*VARIABLES[43])+(2.00000*VARIABLES[45]*VARIABLES[5]))-((VARIABLES[45]*VARIABLES[4])+(3.00000*VARIABLES[44]*VARIABLES[4])));
RATES[5] = (((3.00000*VARIABLES[44]*VARIABLES[4])+(3.00000*VARIABLES[45]*VARIABLES[6]))-((2.00000*VARIABLES[45]*VARIABLES[5])+(2.00000*VARIABLES[44]*VARIABLES[5])));
RATES[6] = (((2.00000*VARIABLES[44]*VARIABLES[5])+(4.00000*VARIABLES[45]*VARIABLES[3])+(0.0100000*((4.00000*CONSTANTS[11]*VARIABLES[45]*VARIABLES[7])-(VARIABLES[44]*VARIABLES[46]*VARIABLES[6])))+(0.00200000*((4.00000*VARIABLES[45]*VARIABLES[8])-(VARIABLES[47]*VARIABLES[6])))+(4.00000*VARIABLES[45]*CONSTANTS[11]*VARIABLES[9]))-((3.00000*VARIABLES[45]*VARIABLES[6])+(VARIABLES[44]*VARIABLES[6])+(1.00000*VARIABLES[46]*VARIABLES[47]*VARIABLES[6])));
RATES[7] = (((VARIABLES[46]*VARIABLES[3])+(0.00100000*((VARIABLES[44]*VARIABLES[9])-(VARIABLES[47]*VARIABLES[7])))+(0.0100000*((VARIABLES[44]*VARIABLES[46]*VARIABLES[6])-(4.00000*VARIABLES[45]*VARIABLES[47]*VARIABLES[7]))))-(CONSTANTS[11]*VARIABLES[7]));
RATES[8] = (((0.00100000*((VARIABLES[47]*VARIABLES[3])-(VARIABLES[44]*VARIABLES[8])))+(CONSTANTS[11]*VARIABLES[9])+(0.00200000*((VARIABLES[47]*VARIABLES[6])-(4.00000*VARIABLES[45]*VARIABLES[8]))))-(VARIABLES[46]*VARIABLES[8]));
RATES[9] = (((0.00100000*((VARIABLES[47]*VARIABLES[7])-(VARIABLES[44]*VARIABLES[9])))+(VARIABLES[46]*VARIABLES[8])+(1.00000*VARIABLES[46]*VARIABLES[47]*VARIABLES[6]))-((4.00000*VARIABLES[45]*CONSTANTS[11]*VARIABLES[9])+(CONSTANTS[11]*VARIABLES[9])));
RATES[10] = (((-(VARIABLES[52]+VARIABLES[69]+(3.00000*VARIABLES[98])+(3.00000*VARIABLES[49])))*CONSTANTS[43]*CONSTANTS[38])/(CONSTANTS[39]*CONSTANTS[49]));
RATES[13] = (((VARIABLES[55]*VARIABLES[54])+(VARIABLES[58]*VARIABLES[12])+(VARIABLES[61]*VARIABLES[17]))-((VARIABLES[56]*VARIABLES[13])+(VARIABLES[57]*VARIABLES[13])+(VARIABLES[62]*VARIABLES[13])));
RATES[12] = (((VARIABLES[57]*VARIABLES[13])+(VARIABLES[60]*VARIABLES[11])+(VARIABLES[61]*VARIABLES[16]))-((VARIABLES[58]*VARIABLES[12])+(VARIABLES[59]*VARIABLES[12])+(VARIABLES[62]*VARIABLES[12])));
RATES[11] = (((VARIABLES[59]*VARIABLES[12])+(VARIABLES[64]*VARIABLES[16]))-((VARIABLES[60]*VARIABLES[11])+(VARIABLES[63]*VARIABLES[11])));
RATES[16] = (((VARIABLES[63]*VARIABLES[11])+(VARIABLES[62]*VARIABLES[12])+(VARIABLES[66]*VARIABLES[14])+(VARIABLES[57]*VARIABLES[17]))-((VARIABLES[64]*VARIABLES[16])+(VARIABLES[61]*VARIABLES[16])+(VARIABLES[65]*VARIABLES[16])+(VARIABLES[58]*VARIABLES[16])));
RATES[14] = (((VARIABLES[65]*VARIABLES[16])+(VARIABLES[68]*VARIABLES[15]))-((VARIABLES[66]*VARIABLES[14])+(VARIABLES[67]*VARIABLES[14])));
RATES[15] = ((VARIABLES[67]*VARIABLES[14])-(VARIABLES[68]*VARIABLES[15]));
RATES[17] = (((VARIABLES[55]*VARIABLES[18])+(VARIABLES[58]*VARIABLES[16])+(VARIABLES[62]*VARIABLES[17]))-((VARIABLES[56]*VARIABLES[17])+(VARIABLES[57]*VARIABLES[17])+(VARIABLES[61]*VARIABLES[17])));
RATES[18] = (((VARIABLES[56]*VARIABLES[17])+(VARIABLES[62]*VARIABLES[54]))-((VARIABLES[55]*VARIABLES[18])+(VARIABLES[61]*VARIABLES[18])));
RATES[19] = (((-((VARIABLES[70]+VARIABLES[76]+VARIABLES[81]+VARIABLES[82]+VARIABLES[88]+VARIABLES[85]+VARIABLES[90])-(2.00000*VARIABLES[98])))*CONSTANTS[43]*CONSTANTS[38])/(CONSTANTS[39]*CONSTANTS[49]));
RATES[20] = ((VARIABLES[72]*(1.00000-VARIABLES[20]))-(VARIABLES[73]*VARIABLES[20]));
RATES[21] = ((VARIABLES[74]*(1.00000-VARIABLES[21]))-(VARIABLES[75]*VARIABLES[21]));
RATES[22] = ((VARIABLES[77]-VARIABLES[22])/VARIABLES[79]);
RATES[23] = ((VARIABLES[78]-VARIABLES[23])/VARIABLES[80]);
RATES[24] = ((VARIABLES[83]*(1.00000-VARIABLES[24]))-(VARIABLES[84]*VARIABLES[24]));
RATES[25] = ((VARIABLES[77]-VARIABLES[25])/VARIABLES[86]);
RATES[26] = ((VARIABLES[78]-VARIABLES[26])/VARIABLES[87]);
RATES[27] = ((VARIABLES[77]-VARIABLES[27])/VARIABLES[89]);
RATES[28] = 0.00000;
RATES[31] = (((CONSTANTS[31]*VARIABLES[30])+(VARIABLES[95]*VARIABLES[29]))-((CONSTANTS[30]*VARIABLES[31])+(VARIABLES[94]*VARIABLES[31])));
RATES[30] = (((VARIABLES[92]*VARIABLES[91])+(CONSTANTS[30]*VARIABLES[31]))-((VARIABLES[93]*VARIABLES[30])+(CONSTANTS[31]*VARIABLES[30])));
RATES[29] = (((VARIABLES[94]*VARIABLES[31])+(VARIABLES[97]*VARIABLES[32]))-((VARIABLES[95]*VARIABLES[29])+(VARIABLES[96]*VARIABLES[29])));
RATES[32] = ((VARIABLES[96]*VARIABLES[29])-(VARIABLES[97]*VARIABLES[32]));
}
void ComputeVariables(double* BOUND, double* RATES, double* CONSTANTS, double* VARIABLES)
{
VARIABLES[41] = (1.00000-(VARIABLES[2]+VARIABLES[0]+VARIABLES[1]));
VARIABLES[42] = (CONSTANTS[10]*VARIABLES[3]*(VARIABLES[33]-CONSTANTS[9]));
VARIABLES[43] = (1.00000-(VARIABLES[3]+VARIABLES[4]+VARIABLES[4]+VARIABLES[5]+VARIABLES[6]+VARIABLES[7]+VARIABLES[8]+VARIABLES[9]));
VARIABLES[44] = ((0.400000*exp(((VARIABLES[33]+12.0000)/10.0000))*((1.00000+(0.700000*exp(((-pow((VARIABLES[33]+40.0000),2.00000))/10.0000))))-(0.750000*exp(((-pow((VARIABLES[33]+20.0000),2.00000))/400.000)))))/(1.00000+(0.120000*exp(((VARIABLES[33]+12.0000)/10.0000)))));
VARIABLES[45] = (0.0500000*exp(((-(VARIABLES[33]+12.0000))/13.0000)));
VARIABLES[46] = ((CONSTANTS[12]*VARIABLES[35])/(CONSTANTS[13]+VARIABLES[35]));
VARIABLES[47] = (13.0000*(1.00000-exp(((-pow((VARIABLES[33]+14.5000),2.00000))/100.000))));
VARIABLES[48] = ((CONSTANTS[14]*pow(VARIABLES[34],2.00000))/(pow(CONSTANTS[15],2.00000)+pow(VARIABLES[34],2.00000)));
VARIABLES[49] = (((((((CONSTANTS[16]*1.00000)/(pow(CONSTANTS[17],3.00000)+pow(CONSTANTS[45],3.00000)))*1.00000)/(CONSTANTS[18]+CONSTANTS[46]))*1.00000)/(1.00000+(CONSTANTS[19]*exp((((CONSTANTS[20]-1.00000)*VARIABLES[33]*CONSTANTS[49])/(CONSTANTS[47]*CONSTANTS[48]))))))*((exp(((CONSTANTS[20]*VARIABLES[33]*CONSTANTS[49])/(CONSTANTS[47]*CONSTANTS[48])))*pow(VARIABLES[10],3.00000)*CONSTANTS[46])-(exp((((CONSTANTS[20]-1.00000)*VARIABLES[33]*CONSTANTS[49])/(CONSTANTS[47]*CONSTANTS[48])))*pow(CONSTANTS[45],3.00000)*VARIABLES[34])));
VARIABLES[51] = (((CONSTANTS[47]*CONSTANTS[48])/(2.00000*CONSTANTS[49]))*log((CONSTANTS[46]/VARIABLES[34])));
VARIABLES[50] = (CONSTANTS[21]*(VARIABLES[33]-VARIABLES[51]));
VARIABLES[53] = (((CONSTANTS[47]*CONSTANTS[48])/CONSTANTS[49])*log((((0.900000*CONSTANTS[45])+(0.100000*CONSTANTS[44]))/((0.900000*VARIABLES[10])+(0.100000*VARIABLES[19])))));
VARIABLES[52] = (CONSTANTS[22]*VARIABLES[11]*(VARIABLES[33]-VARIABLES[53]));
VARIABLES[54] = (1.00000-(VARIABLES[11]+VARIABLES[12]+VARIABLES[13]+VARIABLES[16]+VARIABLES[14]+VARIABLES[15]+VARIABLES[17]+VARIABLES[18]));
VARIABLES[55] = (3.80200/((0.102700*exp(((-(VARIABLES[33]+2.50000))/17.0000)))+(0.200000*exp(((-(VARIABLES[33]+2.50000))/150.000)))));
VARIABLES[56] = (0.191700*exp(((-(VARIABLES[33]+2.50000))/20.3000)));
VARIABLES[57] = (3.80200/((0.102700*exp(((-(VARIABLES[33]+2.50000))/15.0000)))+(0.230000*exp(((-(VARIABLES[33]+2.50000))/150.000)))));
VARIABLES[58] = (0.200000*exp(((-(VARIABLES[33]-2.50000))/20.3000)));
VARIABLES[59] = (3.80200/((0.102700*exp(((-(VARIABLES[33]+2.50000))/12.0000)))+(0.250000*exp(((-(VARIABLES[33]+2.50000))/150.000)))));
VARIABLES[60] = (0.220000*exp(((-(VARIABLES[33]-7.50000))/20.3000)));
VARIABLES[61] = (7.00000e-07*exp(((-(VARIABLES[33]+7.00000))/7.70000)));
VARIABLES[62] = (0.00840000+(2.00000e-05*(VARIABLES[33]+7.00000)));
VARIABLES[63] = (1.00000/((0.188495*exp(((-(VARIABLES[33]+7.00000))/16.6000)))+0.393956));
VARIABLES[64] = ((VARIABLES[59]*VARIABLES[63]*VARIABLES[61])/(VARIABLES[60]*VARIABLES[62]));
VARIABLES[65] = (VARIABLES[63]/1000.00);
VARIABLES[66] = VARIABLES[61];
VARIABLES[67] = (VARIABLES[63]/95000.0);
VARIABLES[68] = (VARIABLES[61]/50.0000);
VARIABLES[69] = (CONSTANTS[23]*(VARIABLES[33]-VARIABLES[53]));
VARIABLES[71] = (((CONSTANTS[47]*CONSTANTS[48])/CONSTANTS[49])*log((CONSTANTS[44]/VARIABLES[19])));
VARIABLES[70] = (CONSTANTS[24]*pow(VARIABLES[20],3.00000)*VARIABLES[21]*(VARIABLES[33]-VARIABLES[71]));
VARIABLES[72] = (0.180640*exp((0.0357700*(VARIABLES[33]+30.0000))));
VARIABLES[73] = (0.395600*exp(((-0.0623700)*(VARIABLES[33]+30.0000))));
VARIABLES[74] = ((0.000152000*exp(((-(VARIABLES[33]+13.5000))/7.00000)))/((0.00670830*exp(((-(VARIABLES[33]+33.5000))/7.00000)))+1.00000));
VARIABLES[75] = ((0.000950000*exp(((VARIABLES[33]+33.5000)/7.00000)))/((0.0513350*exp(((VARIABLES[33]+33.5000)/7.00000)))+1.00000));
VARIABLES[76] = (CONSTANTS[25]*VARIABLES[22]*VARIABLES[23]*(VARIABLES[33]-VARIABLES[71]));
VARIABLES[77] = (1.00000/(1.00000+exp(((-(VARIABLES[33]+22.5000))/7.70000))));
VARIABLES[78] = (1.00000/(1.00000+exp(((VARIABLES[33]+45.2000)/5.70000))));
VARIABLES[79] = ((0.493000*exp(((-0.0629000)*VARIABLES[33])))+2.05800);
VARIABLES[80] = (270.000+(1050.00/(1.00000+exp(((VARIABLES[33]+45.2000)/5.70000)))));
VARIABLES[81] = ((((0.293800*CONSTANTS[44])/(CONSTANTS[44]+210.000))*(VARIABLES[33]-VARIABLES[71]))/(1.00000+exp((0.0896000*(VARIABLES[33]-VARIABLES[71])))));
VARIABLES[82] = (CONSTANTS[26]*pow(VARIABLES[24],2.00000)*(VARIABLES[33]-VARIABLES[71]));
VARIABLES[83] = (4.81333e-06*(VARIABLES[33]+26.5000)*(1.00000-exp(((-0.128000)*(VARIABLES[33]+26.5000)))));
VARIABLES[84] = (9.53333e-05*exp(((-0.0380000)*(VARIABLES[33]+26.5000))));
VARIABLES[85] = (CONSTANTS[27]*VARIABLES[25]*VARIABLES[26]*(VARIABLES[33]-VARIABLES[71]));
VARIABLES[86] = ((0.493000*exp(((-0.0629000)*VARIABLES[33])))+2.05800);
VARIABLES[87] = (1200.00-(170.000/(1.00000+exp(((VARIABLES[33]+45.2000)/5.70000)))));
VARIABLES[88] = (CONSTANTS[28]*VARIABLES[27]*VARIABLES[28]*(VARIABLES[33]-VARIABLES[71]));
VARIABLES[89] = ((39.3000*exp(((-0.0862000)*VARIABLES[33])))+13.1700);
VARIABLES[90] = (CONSTANTS[29]*VARIABLES[29]*(VARIABLES[33]-(((CONSTANTS[47]*CONSTANTS[48])/CONSTANTS[49])*log((((0.980000*CONSTANTS[44])+(0.0200000*CONSTANTS[45]))/((0.980000*VARIABLES[19])+(0.0200000*VARIABLES[10])))))));
VARIABLES[91] = (1.00000-(VARIABLES[30]+VARIABLES[31]+VARIABLES[29]+VARIABLES[32]));
VARIABLES[92] = (0.0223480*exp((0.0117600*VARIABLES[33])));
VARIABLES[93] = (0.0470020*exp(((-0.0631000)*VARIABLES[33])));
VARIABLES[94] = (0.0137330*exp((0.0381980*VARIABLES[33])));
VARIABLES[95] = (6.89000e-05*exp(((-0.0417800)*VARIABLES[33])));
VARIABLES[96] = (0.0908210*exp((0.0233910*(VARIABLES[33]+5.00000))));
VARIABLES[97] = (0.00649700*exp(((-0.0326800)*(VARIABLES[33]+5.00000))));
VARIABLES[99] = (1.00000/(1.00000+(0.124500*exp((((-0.100000)*VARIABLES[33]*CONSTANTS[49])/(CONSTANTS[47]*CONSTANTS[48]))))+(0.0365000*VARIABLES[100]*exp((((-VARIABLES[33])*CONSTANTS[49])/(CONSTANTS[47]*CONSTANTS[48]))))));
VARIABLES[98] = ((((CONSTANTS[32]*VARIABLES[99]*1.00000)/(1.00000+pow((CONSTANTS[33]/VARIABLES[10]),1.50000)))*CONSTANTS[44])/(CONSTANTS[44]+CONSTANTS[34]));
VARIABLES[102] = (0.200000/(1.00000+exp(((-(VARIABLES[33]-46.7000))/7.80000))));
VARIABLES[101] = (((CONSTANTS[35]*VARIABLES[102]*VARIABLES[34])/(VARIABLES[34]+CONSTANTS[37]))*(VARIABLES[33]-CONSTANTS[36]));
VARIABLES[103] = ((((BOUND[0]>=CONSTANTS[50]))&&((BOUND[0]<=CONSTANTS[51]))&&((((BOUND[0]-CONSTANTS[50])-(floor(((BOUND[0]-CONSTANTS[50])/CONSTANTS[52]))*CONSTANTS[52]))<=CONSTANTS[53])))) ? (CONSTANTS[54]) : (0.00000);
VARIABLES[104] = pow((1.00000+((CONSTANTS[55]*CONSTANTS[57])/pow((CONSTANTS[57]+VARIABLES[34]),2.00000))),(-1.00000));
VARIABLES[105] = pow((1.00000+((CONSTANTS[55]*CONSTANTS[57])/pow((CONSTANTS[57]+VARIABLES[35]),2.00000))),(-1.00000));
VARIABLES[106] = pow((1.00000+((CONSTANTS[56]*CONSTANTS[58])/pow((CONSTANTS[58]+VARIABLES[36]),2.00000))),(-1.00000));
VARIABLES[107] = (CONSTANTS[65]*(VARIABLES[37]-VARIABLES[34]));
VARIABLES[108] = (CONSTANTS[63]*(VARIABLES[0]+VARIABLES[1])*(VARIABLES[36]-VARIABLES[35])*VARIABLES[38]);
VARIABLES[109] = ((CONSTANTS[67]*pow(VARIABLES[34],2.00000))/(pow(CONSTANTS[68],2.00000)+pow(VARIABLES[34],2.00000)));
VARIABLES[110] = ((VARIABLES[37]-VARIABLES[36])/CONSTANTS[64]);
VARIABLES[111] = (((CONSTANTS[59]*VARIABLES[34]*(CONSTANTS[70]-VARIABLES[40]))+(CONSTANTS[61]*VARIABLES[34]*(CONSTANTS[69]-VARIABLES[39])))-((CONSTANTS[60]*VARIABLES[40])+(CONSTANTS[62]*VARIABLES[39])));
VARIABLES[112] = ((VARIABLES[35]-VARIABLES[34])/CONSTANTS[66]);
#ifndef VARIABLES_FOR_RATES_ONLY
#endif
}
