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