/* There are a total of 64 entries in the algebraic variable array. There are a total of 36 entries in each of the rate and state variable arrays. There are a total of 125 entries in the constant variable array. */ /* * VOI is time in component environment (s). * STATES[0] is NAn in component NAn (mM). * ALGEBRAIC[0] is Vn_leak_Na in component Vn_leak_Na (mM_per_s). * ALGEBRAIC[1] is Vn_pump in component Vn_pump (mM_per_s). * ALGEBRAIC[61] is Vn_stim in component Vn_stim (mM_per_s). * STATES[1] is GLCn in component GLCn (mM). * ALGEBRAIC[2] is V_en_GLC in component V_en_GLC (mM_per_s). * ALGEBRAIC[3] is Vn_hk in component Vn_hk (mM_per_s). * STATES[2] is G6Pn in component G6Pn (mM). * ALGEBRAIC[4] is Vn_pgi in component Vn_pgi (mM_per_s). * STATES[3] is F6Pn in component F6Pn (mM). * ALGEBRAIC[5] is Vn_pfk in component Vn_pfk (mM_per_s). * STATES[4] is GAPn in component GAPn (mM). * ALGEBRAIC[43] is Vn_pgk in component Vn_pgk (mM_per_s). * STATES[5] is PEPn in component PEPn (mM). * ALGEBRAIC[44] is Vn_pk in component Vn_pk (mM_per_s). * STATES[6] is PYRn in component PYRn (mM). * ALGEBRAIC[45] is Vn_ldh in component Vn_ldh (mM_per_s). * ALGEBRAIC[46] is Vn_mito in component Vn_mito (mM_per_s). * STATES[7] is LACn in component LACn (mM). * ALGEBRAIC[6] is Vne_LAC in component Vne_LAC (mM_per_s). * STATES[8] is NADHn in component NADHn (mM). * STATES[9] is ATPn in component ATPn (mM). * CONSTANTS[0] is nOP in component model_parameters (dimensionless). * ALGEBRAIC[7] is Vn_ATPase in component Vn_ATPase (mM_per_s). * ALGEBRAIC[47] is Vn_ck in component Vn_ck (mM_per_s). * ALGEBRAIC[35] is dAMP_dATPn in component dAMP_dATPn (dimensionless). * STATES[10] is PCrn in component PCrn (mM). * STATES[11] is O2n in component O2n (mM). * CONSTANTS[1] is NAero in component model_parameters (dimensionless). * ALGEBRAIC[8] is Vcn_O2 in component Vcn_O2 (mM_per_s). * STATES[12] is GLUn in component GLUn (mM). * CONSTANTS[2] is Rng in component model_parameters (dimensionless). * ALGEBRAIC[22] is Vg_gs in component Vg_gs (mM_per_s). * ALGEBRAIC[62] is Vn_stim_GLU in component Vn_stim_GLU (mM_per_s). * STATES[13] is NAg in component NAg (mM). * ALGEBRAIC[9] is Vg_leak_Na in component Vg_leak_Na (mM_per_s). * ALGEBRAIC[10] is Vg_pump in component Vg_pump (mM_per_s). * ALGEBRAIC[23] is Veg_GLU in component Veg_GLU (mM_per_s). * STATES[14] is GLCg in component GLCg (mM). * ALGEBRAIC[12] is Vcg_GLC in component Vcg_GLC (mM_per_s). * ALGEBRAIC[11] is Veg_GLC in component Veg_GLC (mM_per_s). * ALGEBRAIC[13] is Vg_hk in component Vg_hk (mM_per_s). * STATES[15] is G6Pg in component G6Pg (mM). * ALGEBRAIC[14] is Vg_pgi in component Vg_pgi (mM_per_s). * ALGEBRAIC[24] is Vg_glys in component Vg_glys (mM_per_s). * ALGEBRAIC[63] is Vg_glyp in component Vg_glyp (mM_per_s). * STATES[16] is F6Pg in component F6Pg (mM). * ALGEBRAIC[15] is Vg_pfk in component Vg_pfk (mM_per_s). * STATES[17] is GAPg in component GAPg (mM). * ALGEBRAIC[48] is Vg_pgk in component Vg_pgk (mM_per_s). * STATES[18] is PEPg in component PEPg (mM). * ALGEBRAIC[49] is Vg_pk in component Vg_pk (mM_per_s). * STATES[19] is PYRg in component PYRg (mM). * ALGEBRAIC[50] is Vg_ldh in component Vg_ldh (mM_per_s). * ALGEBRAIC[51] is Vg_mito in component Vg_mito (mM_per_s). * STATES[20] is LACg in component LACg (mM). * ALGEBRAIC[16] is Vge_LAC in component Vge_LAC (mM_per_s). * ALGEBRAIC[17] is Vgc_LAC in component Vgc_LAC (mM_per_s). * STATES[21] is NADHg in component NADHg (mM). * STATES[22] is ATPg in component ATPg (mM). * ALGEBRAIC[18] is Vg_ATPase in component Vg_ATPase (mM_per_s). * ALGEBRAIC[52] is Vg_ck in component Vg_ck (mM_per_s). * ALGEBRAIC[36] is dAMP_dATPg in component dAMP_dATPg (dimensionless). * STATES[23] is PCrg in component PCrg (mM). * STATES[24] is O2g in component O2g (mM). * ALGEBRAIC[19] is Vcg_O2 in component Vcg_O2 (mM_per_s). * STATES[25] is GLYg in component GLYg (mM). * STATES[26] is GLUg in component GLUg (mM). * STATES[27] is GLCe in component GLCe (mM). * CONSTANTS[3] is Reg in component model_parameters (dimensionless). * CONSTANTS[4] is Ren in component model_parameters (dimensionless). * ALGEBRAIC[20] is Vce_GLC in component Vce_GLC (mM_per_s). * STATES[28] is LACe in component LACe (mM). * ALGEBRAIC[21] is Vec_LAC in component Vec_LAC (mM_per_s). * STATES[29] is GLUe in component GLUe (mM). * STATES[30] is O2c in component O2c (mM). * CONSTANTS[5] is Rcn in component model_parameters (dimensionless). * CONSTANTS[6] is Rcg in component model_parameters (dimensionless). * ALGEBRAIC[53] is Vc_O2 in component Vc_O2 (mM_per_s). * STATES[31] is GLCc in component GLCc (mM). * CONSTANTS[7] is Rce in component model_parameters (dimensionless). * ALGEBRAIC[54] is Vc_GLC in component Vc_GLC (mM_per_s). * STATES[32] is LACc in component LACc (mM). * ALGEBRAIC[55] is Vc_LAC in component Vc_LAC (mM_per_s). * STATES[33] is CO2c in component CO2c (mM). * ALGEBRAIC[56] is Vnc_CO2 in component Vnc_CO2 (mM_per_s). * ALGEBRAIC[58] is Vc_CO2 in component Vc_CO2 (mM_per_s). * ALGEBRAIC[57] is Vgc_CO2 in component Vgc_CO2 (mM_per_s). * STATES[34] is Vv in component Vv (dimensionless). * ALGEBRAIC[25] is Fin_t in component Fin_t (per_s). * ALGEBRAIC[26] is Fout_t in component Fout_t (per_s). * STATES[35] is dHb in component dHb (mM). * CONSTANTS[8] is O2a in component model_parameters (mM). * CONSTANTS[9] is gn_NA in component Vn_leak_Na (mS_per_cm2). * CONSTANTS[10] is Sm_n in component model_parameters (per_cm). * CONSTANTS[11] is Vm in component model_parameters (mV). * CONSTANTS[12] is Vn in component model_parameters (dimensionless). * CONSTANTS[13] is RT in component model_parameters (mV_C_per_mol). * CONSTANTS[14] is F in component model_parameters (C_per_mole). * CONSTANTS[15] is NAe in component model_parameters (mM). * CONSTANTS[16] is kpump in component model_parameters (cm_per_mM_per_s). * CONSTANTS[17] is Km_pump in component model_parameters (mM). * ALGEBRAIC[60] is v_stim in component v_stim (mM_per_s). * CONSTANTS[18] is Km_en_GLC in component V_en_GLC (mM). * CONSTANTS[19] is Vm_en_GLC in component V_en_GLC (mM_per_s). * CONSTANTS[20] is Vmax_n_hk in component Vn_hk (mM_per_s). * CONSTANTS[21] is Km_GLC in component model_parameters (mM). * CONSTANTS[22] is G6P_inh_hk in component model_parameters (mM). * CONSTANTS[23] is aG6P_inh_hk in component model_parameters (dimensionless). * CONSTANTS[24] is Vmaxf_n_pgi in component Vn_pgi (mM_per_s). * CONSTANTS[25] is Vmaxr_n_pgi in component Vn_pgi (mM_per_s). * CONSTANTS[26] is Km_G6P in component model_parameters (mM). * CONSTANTS[27] is Km_F6P_pgi in component model_parameters (mM). * CONSTANTS[28] is kn_pfk in component Vn_pfk (per_s). * CONSTANTS[29] is Km_F6P_pfk in component model_parameters (mM). * CONSTANTS[30] is Ki_ATP in component model_parameters (mM). * CONSTANTS[31] is nH in component model_parameters (dimensionless). * CONSTANTS[32] is kn_pgk in component Vn_pgk (per_mM_per_s). * ALGEBRAIC[31] is ADPn in component ADPn (mM). * ALGEBRAIC[27] is NADn in component NADn (mM). * CONSTANTS[33] is kn_pk in component Vn_pk (per_mM_per_s). * CONSTANTS[34] is kfn_ldh in component Vn_ldh (per_mM_per_s). * CONSTANTS[35] is krn_ldh in component Vn_ldh (per_mM_per_s). * CONSTANTS[36] is Vmax_n_mito in component Vn_mito (mM_per_s). * CONSTANTS[37] is Km_O2 in component model_parameters (mM). * CONSTANTS[38] is Km_ADP in component model_parameters (mM). * CONSTANTS[39] is Km_PYR in component model_parameters (mM). * CONSTANTS[40] is rATP_mito in component model_parameters (dimensionless). * CONSTANTS[41] is aATP_mito in component model_parameters (dimensionless). * CONSTANTS[42] is Vmax_ne_LAC in component Vne_LAC (mM_per_s). * CONSTANTS[43] is Km_ne_LAC in component Vne_LAC (mM). * CONSTANTS[44] is Vmax_n_ATPase in component Vn_ATPase (mM_per_s). * CONSTANTS[45] is krn_ck in component Vn_ck (per_mM_per_s). * CONSTANTS[46] is kfn_ck in component Vn_ck (per_mM_per_s). * ALGEBRAIC[29] is CRn in component CRn (mM). * CONSTANTS[47] is nh_O2 in component Vcn_O2 (dimensionless). * CONSTANTS[48] is PScapn in component Vcn_O2 (per_s). * CONSTANTS[49] is Ko2 in component model_parameters (mM). * CONSTANTS[50] is HbOP in component model_parameters (mM). * CONSTANTS[51] is gg_NA in component Vg_leak_Na (mS_per_cm2). * CONSTANTS[52] is Sm_g in component model_parameters (per_cm). * CONSTANTS[53] is Vg in component model_parameters (dimensionless). * CONSTANTS[54] is Km_eg_GLC in component Veg_GLC (mM). * CONSTANTS[55] is Vm_eg_GLC in component Veg_GLC (mM_per_s). * CONSTANTS[56] is KO1 in component model_parameters (dimensionless). * CONSTANTS[57] is Km_cg_GLC in component Vcg_GLC (mM). * CONSTANTS[58] is Vm_cg_GLC in component Vcg_GLC (mM_per_s). * CONSTANTS[59] is Vmax_g_hk in component Vg_hk (mM_per_s). * CONSTANTS[60] is Vmaxf_g_pgi in component Vg_pgi (mM_per_s). * CONSTANTS[61] is Vmaxr_g_pgi in component Vg_pgi (mM_per_s). * CONSTANTS[62] is kg_pfk in component Vg_pfk (per_s). * CONSTANTS[63] is kg_pgk in component Vg_pgk (per_mM_per_s). * ALGEBRAIC[32] is ADPg in component ADPg (mM). * ALGEBRAIC[28] is NADg in component NADg (mM). * CONSTANTS[64] is kg_pk in component Vg_pk (per_mM_per_s). * CONSTANTS[65] is kfg_ldh in component Vg_ldh (per_mM_per_s). * CONSTANTS[66] is krg_ldh in component Vg_ldh (per_mM_per_s). * CONSTANTS[67] is Vmax_g_mito in component Vg_mito (mM_per_s). * CONSTANTS[68] is Vmax_ge_LAC in component Vge_LAC (mM_per_s). * CONSTANTS[69] is Km_ge_LAC in component Vge_LAC (mM). * CONSTANTS[70] is Vmax_gc_LAC in component Vgc_LAC (mM_per_s). * CONSTANTS[71] is Km_gc_LAC in component Vgc_LAC (mM). * CONSTANTS[72] is Vmax_g_ATPase in component Vg_ATPase (mM_per_s). * CONSTANTS[73] is krg_ck in component Vg_ck (per_mM_per_s). * CONSTANTS[74] is kfg_ck in component Vg_ck (per_mM_per_s). * ALGEBRAIC[30] is CRg in component CRg (mM). * CONSTANTS[75] is PScapg in component Vcg_O2 (per_s). * CONSTANTS[76] is nh_O2 in component model_parameters (dimensionless). * CONSTANTS[77] is Vc in component model_parameters (dimensionless). * CONSTANTS[78] is GLCa in component model_parameters (mM). * CONSTANTS[79] is Km_ce_GLC in component Vce_GLC (mM). * CONSTANTS[80] is Vm_ce_GLC in component Vce_GLC (mM_per_s). * CONSTANTS[81] is LACa in component model_parameters (mM). * CONSTANTS[82] is Km_ec_LAC in component Vec_LAC (mM). * CONSTANTS[83] is Vm_ec_LAC in component Vec_LAC (mM_per_s). * CONSTANTS[84] is R_GLU_NA in component model_parameters (dimensionless). * CONSTANTS[85] is Km_GLU in component model_parameters (mM). * CONSTANTS[86] is KO2 in component model_parameters (dimensionless). * CONSTANTS[87] is Vmax_g_gs in component Vg_gs (mM_per_s). * CONSTANTS[88] is Km_ATP in component model_parameters (mM). * CONSTANTS[89] is Vmax_eg_GLU in component Veg_GLU (mM_per_s). * CONSTANTS[90] is CO2a in component model_parameters (mM). * CONSTANTS[91] is Vmax_glys in component Vg_glys (mM_per_s). * CONSTANTS[92] is Km_G6P_glys in component Vg_glys (mM). * CONSTANTS[93] is GLY_inh in component model_parameters (mM). * CONSTANTS[94] is aGLY_inh in component model_parameters (dimensionless). * CONSTANTS[95] is Vmax_glyp in component Vg_glyp (mM_per_s). * CONSTANTS[96] is Km_GLY in component Vg_glyp (mM). * ALGEBRAIC[59] is deltaVt_GLY in component Vg_glyp (dimensionless). * ALGEBRAIC[42] is unitstepSB2 in component unitstepSB2 (dimensionless). * CONSTANTS[97] is stim in component model_parameters (dimensionless). * CONSTANTS[98] is to in component model_parameters (s). * CONSTANTS[99] is to_GLY in component model_parameters (s). * CONSTANTS[100] is tend_GLY in component model_parameters (s). * CONSTANTS[101] is sr_GLY in component model_parameters (dimensionless). * CONSTANTS[102] is t1 in component model_parameters (s). * CONSTANTS[103] is delta_GLY in component model_parameters (dimensionless). * CONSTANTS[104] is KO3 in component model_parameters (dimensionless). * CONSTANTS[105] is CBF0 in component Fin_t (per_s). * CONSTANTS[106] is tend in component model_parameters (s). * CONSTANTS[107] is sr in component model_parameters (dimensionless). * CONSTANTS[108] is deltaf in component model_parameters (dimensionless). * CONSTANTS[109] is CBF0 in component model_parameters (per_s). * CONSTANTS[110] is Vv0 in component model_parameters (dimensionless). * CONSTANTS[111] is tv in component model_parameters (s). * CONSTANTS[112] is NADH_n_tot in component NADn (mM). * CONSTANTS[113] is NADH_g_tot in component NADg (mM). * CONSTANTS[114] is PCrn_tot in component CRn (mM). * CONSTANTS[115] is PCrg_tot in component CRg (mM). * CONSTANTS[116] is ATPtot in component model_parameters (mM). * CONSTANTS[117] is qak in component model_parameters (dimensionless). * ALGEBRAIC[33] is u_n in component u_n (dimensionless). * ALGEBRAIC[34] is u_g in component u_g (dimensionless). * ALGEBRAIC[37] is AMPn in component AMPn (mM). * ALGEBRAIC[38] is AMPg in component AMPg (mM). * ALGEBRAIC[39] is BOLD in component BOLD (dimensionless). * CONSTANTS[118] is k1 in component model_parameters (dimensionless). * CONSTANTS[119] is k2 in component model_parameters (dimensionless). * CONSTANTS[120] is k3 in component model_parameters (dimensionless). * CONSTANTS[121] is dHb0 in component model_parameters (mM). * ALGEBRAIC[40] is unitpulseSB in component v_stim (dimensionless). * CONSTANTS[122] is t_n_stim in component model_parameters (s). * CONSTANTS[123] is v1_n in component model_parameters (mM_per_s). * CONSTANTS[124] is v2_n in component model_parameters (mM_per_s). * ALGEBRAIC[41] is unitstepSB in component unitstepSB (dimensionless). * RATES[0] is d/dt NAn in component NAn (mM). * RATES[1] is d/dt GLCn in component GLCn (mM). * RATES[2] is d/dt G6Pn in component G6Pn (mM). * RATES[3] is d/dt F6Pn in component F6Pn (mM). * RATES[4] is d/dt GAPn in component GAPn (mM). * RATES[5] is d/dt PEPn in component PEPn (mM). * RATES[6] is d/dt PYRn in component PYRn (mM). * RATES[7] is d/dt LACn in component LACn (mM). * RATES[8] is d/dt NADHn in component NADHn (mM). * RATES[9] is d/dt ATPn in component ATPn (mM). * RATES[10] is d/dt PCrn in component PCrn (mM). * RATES[11] is d/dt O2n in component O2n (mM). * RATES[12] is d/dt GLUn in component GLUn (mM). * RATES[13] is d/dt NAg in component NAg (mM). * RATES[14] is d/dt GLCg in component GLCg (mM). * RATES[15] is d/dt G6Pg in component G6Pg (mM). * RATES[16] is d/dt F6Pg in component F6Pg (mM). * RATES[17] is d/dt GAPg in component GAPg (mM). * RATES[18] is d/dt PEPg in component PEPg (mM). * RATES[19] is d/dt PYRg in component PYRg (mM). * RATES[20] is d/dt LACg in component LACg (mM). * RATES[21] is d/dt NADHg in component NADHg (mM). * RATES[22] is d/dt ATPg in component ATPg (mM). * RATES[23] is d/dt PCrg in component PCrg (mM). * RATES[24] is d/dt O2g in component O2g (mM). * RATES[25] is d/dt GLYg in component GLYg (mM). * RATES[26] is d/dt GLUg in component GLUg (mM). * RATES[27] is d/dt GLCe in component GLCe (mM). * RATES[28] is d/dt LACe in component LACe (mM). * RATES[29] is d/dt GLUe in component GLUe (mM). * RATES[30] is d/dt O2c in component O2c (mM). * RATES[31] is d/dt GLCc in component GLCc (mM). * RATES[32] is d/dt LACc in component LACc (mM). * RATES[33] is d/dt CO2c in component CO2c (mM). * RATES[34] is d/dt Vv in component Vv (dimensionless). * RATES[35] is d/dt dHb in component dHb (mM). * There are a total of 4 condition variables. */ void initConsts(double* CONSTANTS, double* RATES, double *STATES) { STATES[0] = 15.533; STATES[1] = 0.2633; STATES[2] = 0.7275; STATES[3] = 0.1091; STATES[4] = 0.0418; STATES[5] = 0.0037; STATES[6] = 0.0388; STATES[7] = 0.3856; STATES[8] = 0.0319; STATES[9] = 2.2592; CONSTANTS[0] = 15.0; STATES[10] = 4.2529; STATES[11] = 0.0975; CONSTANTS[1] = 3.0; STATES[12] = 3.0; CONSTANTS[2] = 1.8; STATES[13] = 13.36; STATES[14] = 0.1656; STATES[15] = 0.7326; STATES[16] = 0.1116; STATES[17] = 0.0698; STATES[18] = 0.0254; STATES[19] = 0.1711; STATES[20] = 0.4651; STATES[21] = 0.0445; STATES[22] = 2.24; STATES[23] = 4.6817; STATES[24] = 0.1589; STATES[25] = 2.5; STATES[26] = 0.0; STATES[27] = 0.3339; CONSTANTS[3] = 0.8; CONSTANTS[4] = 0.4444444444444444; STATES[28] = 0.3986; STATES[29] = 0.0; STATES[30] = 7.4201; CONSTANTS[5] = 0.01222; CONSTANTS[6] = 0.022; STATES[31] = 4.6401; CONSTANTS[7] = 0.0275; STATES[32] = 0.3251; STATES[33] = 2.12; STATES[34] = 0.0237; STATES[35] = 0.0218; CONSTANTS[8] = 8.34; CONSTANTS[9] = 0.0039; CONSTANTS[10] = 40500; CONSTANTS[11] = -70; CONSTANTS[12] = 0.45; CONSTANTS[13] = 2577340; CONSTANTS[14] = 96500; CONSTANTS[15] = 150.0; CONSTANTS[16] = 3.17e-7; CONSTANTS[17] = 0.4243; CONSTANTS[18] = 5.32; CONSTANTS[19] = 0.50417; CONSTANTS[20] = 0.0513; CONSTANTS[21] = 0.105; CONSTANTS[22] = 0.6; CONSTANTS[23] = 20.0; CONSTANTS[24] = 0.5; CONSTANTS[25] = 0.45; CONSTANTS[26] = 0.5; CONSTANTS[27] = 0.06; CONSTANTS[28] = 0.55783; CONSTANTS[29] = 0.18; CONSTANTS[30] = 0.7595; CONSTANTS[31] = 4.0; CONSTANTS[32] = 0.4287; CONSTANTS[33] = 28.6; CONSTANTS[34] = 5.30; CONSTANTS[35] = 0.1046; CONSTANTS[36] = 0.05557; CONSTANTS[37] = 0.0029658; CONSTANTS[38] = 0.00107; CONSTANTS[39] = 0.0632; CONSTANTS[40] = 20.0; CONSTANTS[41] = 5.0; CONSTANTS[42] = 0.1978; CONSTANTS[43] = 0.09314; CONSTANTS[44] = 0.04889; CONSTANTS[45] = 0.015; CONSTANTS[46] = 0.0524681; CONSTANTS[47] = 2.7; CONSTANTS[48] = 0.2202; CONSTANTS[49] = 0.089733; CONSTANTS[50] = 8.6; CONSTANTS[51] = 0.00325; CONSTANTS[52] = 10500; CONSTANTS[53] = 0.25; CONSTANTS[54] = 3.53; CONSTANTS[55] = 0.038089; CONSTANTS[56] = 1.0; CONSTANTS[57] = 9.92; CONSTANTS[58] = 0.0098394; CONSTANTS[59] = 0.050461; CONSTANTS[60] = 0.5; CONSTANTS[61] = 0.45; CONSTANTS[62] = 0.403; CONSTANTS[63] = 0.2514; CONSTANTS[64] = 2.73; CONSTANTS[65] = 6.2613; CONSTANTS[66] = 0.54682; CONSTANTS[67] = 0.008454; CONSTANTS[68] = 0.086124; CONSTANTS[69] = 0.22163; CONSTANTS[70] = 0.00021856; CONSTANTS[71] = 0.12862; CONSTANTS[72] = 0.035657; CONSTANTS[73] = 0.02073; CONSTANTS[74] = 0.0243; CONSTANTS[75] = 0.2457; CONSTANTS[76] = 2.7; CONSTANTS[77] = 0.0055; CONSTANTS[78] = 4.8; CONSTANTS[79] = 8.4568; CONSTANTS[80] = 0.0489; CONSTANTS[81] = 0.313; CONSTANTS[82] = 0.764818; CONSTANTS[83] = 0.0325; CONSTANTS[84] = 0.075; CONSTANTS[85] = 0.05; CONSTANTS[86] = 1; CONSTANTS[87] = 0.3; CONSTANTS[88] = 0.01532; CONSTANTS[89] = 0.0208; CONSTANTS[90] = 1.2; CONSTANTS[91] = 0.0001528; CONSTANTS[92] = 0.5; CONSTANTS[93] = 4.2; CONSTANTS[94] = 20.0; CONSTANTS[95] = 4.922e-5; CONSTANTS[96] = 1.0; CONSTANTS[97] = 1; CONSTANTS[98] = 200; CONSTANTS[99] = 83; CONSTANTS[100] = 440; CONSTANTS[101] = 4; CONSTANTS[102] = 2; CONSTANTS[103] = 62; CONSTANTS[104] = 1; CONSTANTS[105] = 0.012; CONSTANTS[106] = 300; CONSTANTS[107] = 4.59186; CONSTANTS[108] = 0.42; CONSTANTS[109] = 0.012; CONSTANTS[110] = 0.0236; CONSTANTS[111] = 35.0; CONSTANTS[112] = 0.22; CONSTANTS[113] = 0.22; CONSTANTS[114] = 5.0; CONSTANTS[115] = 5.0; CONSTANTS[116] = 2.379; CONSTANTS[117] = 0.92; CONSTANTS[118] = 2.22; CONSTANTS[119] = 0.46; CONSTANTS[120] = 0.43; CONSTANTS[121] = 0.064; CONSTANTS[122] = 2; CONSTANTS[123] = 0.041; CONSTANTS[124] = 2.55; RATES[0] = 0.1001; RATES[1] = 0.1001; RATES[2] = 0.1001; RATES[3] = 0.1001; RATES[4] = 0.1001; RATES[5] = 0.1001; RATES[6] = 0.1001; RATES[7] = 0.1001; RATES[8] = 0.1001; RATES[9] = 0.1001; RATES[10] = 0.1001; RATES[11] = 0.1001; RATES[12] = 0.1001; RATES[13] = 0.1001; RATES[14] = 0.1001; RATES[15] = 0.1001; RATES[16] = 0.1001; RATES[17] = 0.1001; RATES[18] = 0.1001; RATES[19] = 0.1001; RATES[20] = 0.1001; RATES[21] = 0.1001; RATES[22] = 0.1001; RATES[23] = 0.1001; RATES[24] = 0.1001; RATES[25] = 0.1001; RATES[26] = 0.1001; RATES[27] = 0.1001; RATES[28] = 0.1001; RATES[29] = 0.1001; RATES[30] = 0.1001; RATES[31] = 0.1001; RATES[32] = 0.1001; RATES[33] = 0.1001; RATES[34] = 0.1001; RATES[35] = 0.1001; } void computeResiduals(double VOI, double* CONSTANTS, double* RATES, double* OLDRATES, double* STATES, double* OLDSTATES, double* ALGEBRAIC, double* CONDVARS) { resid[0] = RATES[0] - (ALGEBRAIC[0]+ALGEBRAIC[61]) - 3.00000*ALGEBRAIC[1]; resid[1] = RATES[1] - ALGEBRAIC[2] - ALGEBRAIC[3]; resid[2] = RATES[2] - ALGEBRAIC[3] - ALGEBRAIC[4]; resid[3] = RATES[3] - ALGEBRAIC[4] - ALGEBRAIC[5]; resid[4] = RATES[4] - 2.00000*ALGEBRAIC[5] - ALGEBRAIC[43]; resid[5] = RATES[5] - ALGEBRAIC[43] - ALGEBRAIC[44]; resid[6] = RATES[6] - ALGEBRAIC[44] - (ALGEBRAIC[45]+ALGEBRAIC[46]); resid[7] = RATES[7] - ALGEBRAIC[45] - ALGEBRAIC[6]; resid[8] = RATES[8] - ALGEBRAIC[43] - (ALGEBRAIC[45]+ALGEBRAIC[46]); resid[9] = RATES[9] - ((ALGEBRAIC[43]+ALGEBRAIC[44]+ CONSTANTS[0]*ALGEBRAIC[46]+ALGEBRAIC[47]) - (ALGEBRAIC[3]+ALGEBRAIC[5]+ALGEBRAIC[7]+ALGEBRAIC[1]))*pow(1.00000 - ALGEBRAIC[35], -1.00000); resid[10] = RATES[10] - - ALGEBRAIC[47]; resid[11] = RATES[11] - ALGEBRAIC[8] - CONSTANTS[1]*ALGEBRAIC[46]; resid[12] = RATES[12] - ALGEBRAIC[22]*(1.00000/CONSTANTS[2]) - ALGEBRAIC[62]; resid[13] = RATES[13] - (ALGEBRAIC[9]+ 3.00000*ALGEBRAIC[23]) - 3.00000*ALGEBRAIC[10]; resid[14] = RATES[14] - (ALGEBRAIC[12]+ALGEBRAIC[11]) - ALGEBRAIC[13]; resid[15] = RATES[15] - (ALGEBRAIC[13]+ALGEBRAIC[63]) - (ALGEBRAIC[14]+ALGEBRAIC[24]); resid[16] = RATES[16] - ALGEBRAIC[14] - ALGEBRAIC[15]; resid[17] = RATES[17] - 2.00000*ALGEBRAIC[15] - ALGEBRAIC[48]; resid[18] = RATES[18] - ALGEBRAIC[48] - ALGEBRAIC[49]; resid[19] = RATES[19] - ALGEBRAIC[49] - (ALGEBRAIC[50]+ALGEBRAIC[51]); resid[20] = RATES[20] - ALGEBRAIC[50] - (ALGEBRAIC[16]+ALGEBRAIC[17]); resid[21] = RATES[21] - ALGEBRAIC[48] - (ALGEBRAIC[50]+ALGEBRAIC[51]); resid[22] = RATES[22] - ((ALGEBRAIC[48]+ALGEBRAIC[49]+ CONSTANTS[0]*ALGEBRAIC[51]+ALGEBRAIC[52]) - (ALGEBRAIC[13]+ALGEBRAIC[15]+ALGEBRAIC[18]+ALGEBRAIC[10]+ALGEBRAIC[22]))*pow(1.00000 - ALGEBRAIC[36], -1.00000); resid[23] = RATES[23] - - ALGEBRAIC[52]; resid[24] = RATES[24] - ALGEBRAIC[19] - CONSTANTS[1]*ALGEBRAIC[51]; resid[25] = RATES[25] - ALGEBRAIC[24] - ALGEBRAIC[63]; resid[26] = RATES[26] - ALGEBRAIC[23] - ALGEBRAIC[22]; resid[27] = RATES[27] - ALGEBRAIC[20] - ( ALGEBRAIC[11]*(1.00000/CONSTANTS[3])+ ALGEBRAIC[2]*(1.00000/CONSTANTS[4])); resid[28] = RATES[28] - ( ALGEBRAIC[6]*(1.00000/CONSTANTS[4])+ ALGEBRAIC[16]*(1.00000/CONSTANTS[3])) - ALGEBRAIC[21]; resid[29] = RATES[29] - ALGEBRAIC[62]*(1.00000/CONSTANTS[4]) - ALGEBRAIC[23]*(1.00000/CONSTANTS[3]); resid[30] = RATES[30] - ALGEBRAIC[53] - ( ALGEBRAIC[8]*(1.00000/CONSTANTS[5])+ ALGEBRAIC[19]*(1.00000/CONSTANTS[6])); resid[31] = RATES[31] - ALGEBRAIC[54] - ( ALGEBRAIC[20]*(1.00000/CONSTANTS[7])+ ALGEBRAIC[12]*(1.00000/CONSTANTS[6])); resid[32] = RATES[32] - ALGEBRAIC[55]+( ALGEBRAIC[21]*(1.00000/CONSTANTS[7])+ ALGEBRAIC[17]*(1.00000/CONSTANTS[6])); resid[33] = RATES[33] - ( ALGEBRAIC[56]*(1.00000/CONSTANTS[5])+ ALGEBRAIC[57]*(1.00000/CONSTANTS[6])) - ALGEBRAIC[58]; resid[34] = RATES[34] - ALGEBRAIC[25] - ALGEBRAIC[26]; resid[35] = RATES[35] - ALGEBRAIC[25]*(CONSTANTS[8] - STATES[30]) - ALGEBRAIC[26]*(STATES[35]/STATES[34]); } void computeVariables(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC) { ALGEBRAIC[37] = CONSTANTS[116] - (STATES[9]+ALGEBRAIC[31]); ALGEBRAIC[38] = CONSTANTS[116] - (STATES[22]+ALGEBRAIC[32]); ALGEBRAIC[39] = CONSTANTS[110]*( (CONSTANTS[118]+CONSTANTS[119])*(1.00000 - STATES[35]/CONSTANTS[121]) - (CONSTANTS[119]+CONSTANTS[120])*(1.00000 - STATES[34]/CONSTANTS[110])); ALGEBRAIC[41] = (CONDVAR[2]>=0.00000 ? 1.00000 : 0.00000); } void computeEssentialVariables(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC) { ALGEBRAIC[0] = (CONSTANTS[10]/CONSTANTS[12])*(CONSTANTS[9]/CONSTANTS[14])*( (CONSTANTS[13]/CONSTANTS[14])*log(CONSTANTS[15]/STATES[0]) - CONSTANTS[11]); ALGEBRAIC[1] = (CONSTANTS[10]/CONSTANTS[12])*CONSTANTS[16]*STATES[9]*STATES[0]*pow(1.00000+STATES[9]/CONSTANTS[17], -1.00000); ALGEBRAIC[2] = CONSTANTS[19]*(STATES[27]/(STATES[27]+CONSTANTS[18]) - STATES[1]/(STATES[1]+CONSTANTS[18])); ALGEBRAIC[3] = CONSTANTS[20]*STATES[9]*(STATES[1]/(STATES[1]+CONSTANTS[21]))*(1.00000 - 1.00000/(1.00000+exp( - CONSTANTS[23]*( 1.00000*(STATES[2] - CONSTANTS[22]))))); ALGEBRAIC[4] = CONSTANTS[24]*(STATES[2]/(STATES[2]+CONSTANTS[26])) - CONSTANTS[25]*(STATES[3]/(STATES[3]+CONSTANTS[27])); ALGEBRAIC[5] = CONSTANTS[28]*STATES[9]*(STATES[3]/(STATES[3]+CONSTANTS[29]))*pow(1.00000+pow(STATES[9]/CONSTANTS[30], CONSTANTS[31]), -1.00000); ALGEBRAIC[6] = CONSTANTS[42]*(STATES[7]/(STATES[7]+CONSTANTS[43]) - STATES[28]/(STATES[28]+CONSTANTS[43])); ALGEBRAIC[7] = CONSTANTS[44]*(STATES[9]/(STATES[9]+0.00100000)); ALGEBRAIC[8] = (CONSTANTS[48]/CONSTANTS[12])*( CONSTANTS[49]*pow(CONSTANTS[50]/STATES[30] - 1.00000, -1.00000/CONSTANTS[47]) - STATES[11]); ALGEBRAIC[9] = (CONSTANTS[52]/CONSTANTS[53])*(CONSTANTS[51]/CONSTANTS[14])*( (CONSTANTS[13]/CONSTANTS[14])*log(CONSTANTS[15]/STATES[13]) - CONSTANTS[11]); ALGEBRAIC[10] = (CONSTANTS[52]/CONSTANTS[53])*CONSTANTS[16]*STATES[22]*STATES[13]*pow(1.00000+STATES[22]/CONSTANTS[17], -1.00000); ALGEBRAIC[11] = CONSTANTS[56]*CONSTANTS[55]*(STATES[27]/(STATES[27]+CONSTANTS[54]) - STATES[14]/(STATES[14]+CONSTANTS[54])); ALGEBRAIC[12] = CONSTANTS[58]*(STATES[31]/(STATES[31]+CONSTANTS[57]) - STATES[14]/(STATES[14]+CONSTANTS[57])); ALGEBRAIC[13] = CONSTANTS[59]*STATES[22]*(STATES[14]/(STATES[14]+CONSTANTS[21]))*(1.00000 - 1.00000/(1.00000+exp( - CONSTANTS[23]*( 1.00000*(STATES[15] - CONSTANTS[22]))))); ALGEBRAIC[14] = CONSTANTS[60]*(STATES[15]/(STATES[15]+CONSTANTS[26])) - CONSTANTS[61]*(STATES[16]/(STATES[16]+CONSTANTS[27])); ALGEBRAIC[15] = CONSTANTS[62]*STATES[22]*(STATES[16]/(STATES[16]+CONSTANTS[29]))*pow(1.00000+pow(STATES[22]/CONSTANTS[30], CONSTANTS[31]), -1.00000); ALGEBRAIC[16] = CONSTANTS[68]*(STATES[20]/(STATES[20]+CONSTANTS[69]) - STATES[28]/(STATES[28]+CONSTANTS[69])); ALGEBRAIC[17] = CONSTANTS[70]*(STATES[20]/(STATES[20]+CONSTANTS[71]) - STATES[32]/(STATES[32]+CONSTANTS[71])); ALGEBRAIC[18] = CONSTANTS[72]*(STATES[22]/(STATES[22]+0.00100000)); ALGEBRAIC[19] = (CONSTANTS[75]/CONSTANTS[53])*( CONSTANTS[49]*pow(CONSTANTS[50]/STATES[30] - 1.00000, -1.00000/CONSTANTS[76]) - STATES[24]); ALGEBRAIC[20] = CONSTANTS[80]*(STATES[31]/(STATES[31]+CONSTANTS[79]) - STATES[27]/(STATES[27]+CONSTANTS[79])); ALGEBRAIC[21] = CONSTANTS[83]*(STATES[28]/(STATES[28]+CONSTANTS[82]) - STATES[32]/(STATES[32]+CONSTANTS[82])); ALGEBRAIC[22] = CONSTANTS[87]*( (STATES[26]/(STATES[26]+CONSTANTS[85]))*(STATES[22]/(STATES[22]+CONSTANTS[88]))); ALGEBRAIC[23] = CONSTANTS[89]*(STATES[29]/(STATES[29]+CONSTANTS[85])); ALGEBRAIC[24] = CONSTANTS[91]*(STATES[15]/(STATES[15]+CONSTANTS[92]))*(1.00000 - 1.00000/(1.00000+exp( - CONSTANTS[94]*( 1.00000*(STATES[25] - CONSTANTS[93]))))); ALGEBRAIC[25] = CONSTANTS[105]+( CONSTANTS[97]*CONSTANTS[105]*CONSTANTS[108]*(1.00000/(1.00000+exp( ( 1.00000*- CONSTANTS[107])*(VOI - ((CONSTANTS[98]+CONSTANTS[102]) - 3.00000))))) - CONSTANTS[97]*CONSTANTS[105]*CONSTANTS[108]*(1.00000/(1.00000+exp( ( 1.00000*- CONSTANTS[107])*(VOI - (CONSTANTS[98]+CONSTANTS[106]+CONSTANTS[102]+3.00000)))))); ALGEBRAIC[26] = CONSTANTS[109]*((pow(STATES[34]/CONSTANTS[110], 2.00000)+ CONSTANTS[111]*pow(STATES[34]/CONSTANTS[110], -0.500000)*(ALGEBRAIC[25]/CONSTANTS[110]))/(1.00000+ CONSTANTS[109]*CONSTANTS[111]*pow(STATES[34]/CONSTANTS[110], -0.500000)*(1.00000/CONSTANTS[110]))); ALGEBRAIC[33] = pow(CONSTANTS[117], 2.00000)+ 4.00000*CONSTANTS[117]*(CONSTANTS[116]/STATES[9] - 1.00000); ALGEBRAIC[35] = (CONSTANTS[117]/2.00000+ CONSTANTS[117]*(CONSTANTS[116]/( STATES[9]* pow(ALGEBRAIC[33], 1.0 / 2)))) - (1.00000+ 0.500000* pow(ALGEBRAIC[33], 1.0 / 2)); ALGEBRAIC[34] = pow(CONSTANTS[117], 2.00000)+ 4.00000*CONSTANTS[117]*(CONSTANTS[116]/STATES[22] - 1.00000); ALGEBRAIC[36] = (CONSTANTS[117]/2.00000+ CONSTANTS[117]*(CONSTANTS[116]/( STATES[22]* pow(ALGEBRAIC[34], 1.0 / 2)))) - (1.00000+ 0.500000* pow(ALGEBRAIC[34], 1.0 / 2)); ALGEBRAIC[31] = (STATES[9]/2.00000)*(- CONSTANTS[117]+ pow((pow(CONSTANTS[117], 2.00000)+ 4.00000*CONSTANTS[117]*(CONSTANTS[116]/STATES[9] - 1.00000)), 1.0 / 2)); ALGEBRAIC[27] = CONSTANTS[112] - STATES[8]; ALGEBRAIC[43] = CONSTANTS[32]*STATES[4]*ALGEBRAIC[31]*(ALGEBRAIC[27]/STATES[8]); ALGEBRAIC[44] = CONSTANTS[33]*STATES[5]*ALGEBRAIC[31]; ALGEBRAIC[45] = CONSTANTS[34]*STATES[6]*STATES[8] - CONSTANTS[35]*STATES[7]*ALGEBRAIC[27]; ALGEBRAIC[46] = CONSTANTS[36]*(STATES[11]/(STATES[11]+CONSTANTS[37]))*(ALGEBRAIC[31]/(ALGEBRAIC[31]+CONSTANTS[38]))*(STATES[6]/(STATES[6]+CONSTANTS[39]))*(1.00000 - 1.00000/(1.00000+exp( - CONSTANTS[41]*( 1.00000*(STATES[9]/ALGEBRAIC[31] - 1.00000*CONSTANTS[40]))))); ALGEBRAIC[29] = CONSTANTS[114] - STATES[10]; ALGEBRAIC[47] = CONSTANTS[46]*STATES[10]*ALGEBRAIC[31] - CONSTANTS[45]*ALGEBRAIC[29]*STATES[9]; ALGEBRAIC[32] = (STATES[22]/2.00000)*(- CONSTANTS[117]+ pow((pow(CONSTANTS[117], 2.00000)+ 4.00000*CONSTANTS[117]*(CONSTANTS[116]/STATES[22] - 1.00000)), 1.0 / 2)); ALGEBRAIC[28] = CONSTANTS[113] - STATES[21]; ALGEBRAIC[48] = CONSTANTS[63]*STATES[17]*ALGEBRAIC[32]*(ALGEBRAIC[28]/STATES[21]); ALGEBRAIC[49] = CONSTANTS[64]*STATES[18]*ALGEBRAIC[32]; ALGEBRAIC[50] = CONSTANTS[65]*STATES[19]*STATES[21] - CONSTANTS[66]*STATES[20]*ALGEBRAIC[28]; ALGEBRAIC[51] = CONSTANTS[67]*(STATES[24]/(STATES[24]+CONSTANTS[37]))*(ALGEBRAIC[32]/(ALGEBRAIC[32]+CONSTANTS[38]))*(STATES[19]/(STATES[19]+CONSTANTS[39]))*(1.00000 - 1.00000/(1.00000+exp( 1.00000*- CONSTANTS[41]*(STATES[22]/ALGEBRAIC[32] - 1.00000*CONSTANTS[40])))); ALGEBRAIC[30] = CONSTANTS[115] - STATES[23]; ALGEBRAIC[52] = CONSTANTS[74]*STATES[23]*ALGEBRAIC[32] - CONSTANTS[73]*ALGEBRAIC[30]*STATES[22]; ALGEBRAIC[53] = 2.00000*(ALGEBRAIC[25]/CONSTANTS[77])*(CONSTANTS[8] - STATES[30]); ALGEBRAIC[54] = 2.00000*(ALGEBRAIC[25]/CONSTANTS[77])*(CONSTANTS[78] - STATES[31]); ALGEBRAIC[55] = 2.00000*(ALGEBRAIC[25]/CONSTANTS[77])*(CONSTANTS[81] - STATES[32]); ALGEBRAIC[56] = 3.00000*ALGEBRAIC[46]; ALGEBRAIC[57] = 3.00000*ALGEBRAIC[51]; ALGEBRAIC[58] = 2.00000*(ALGEBRAIC[25]/CONSTANTS[77])*(STATES[33] - CONSTANTS[90]); ALGEBRAIC[40] = (CONDVAR[0]>=0.00000&&CONDVAR[1]<=0.00000 ? 1.00000 : 0.00000); ALGEBRAIC[60] = CONSTANTS[97]*(CONSTANTS[123]+ CONSTANTS[124]*((VOI - CONSTANTS[98])/CONSTANTS[122])*exp(- ( (VOI - CONSTANTS[98])*(ALGEBRAIC[40]/CONSTANTS[122]))))*ALGEBRAIC[40]; ALGEBRAIC[61] = ALGEBRAIC[60]; ALGEBRAIC[62] = ALGEBRAIC[61]*CONSTANTS[84]*CONSTANTS[86]*(STATES[12]/(STATES[12]+CONSTANTS[85])); ALGEBRAIC[42] = (CONDVAR[3]>=0.00000 ? 1.00000 : 0.00000); ALGEBRAIC[59] = 1.00000+ CONSTANTS[97]*( CONSTANTS[103]*CONSTANTS[104]*(1.00000/(1.00000+exp( 1.00000*- CONSTANTS[101]*(VOI - (CONSTANTS[98]+CONSTANTS[99])))))*(1.00000 - ALGEBRAIC[42])); ALGEBRAIC[63] = CONSTANTS[95]*(STATES[25]/(STATES[25]+CONSTANTS[96]))*ALGEBRAIC[59]; } void getStateInformation(double* SI) { SI[0] = 1.0; SI[1] = 1.0; SI[2] = 1.0; SI[3] = 1.0; SI[4] = 1.0; SI[5] = 1.0; SI[6] = 1.0; SI[7] = 1.0; SI[8] = 1.0; SI[9] = 1.0; SI[10] = 1.0; SI[11] = 1.0; SI[12] = 1.0; SI[13] = 1.0; SI[14] = 1.0; SI[15] = 1.0; SI[16] = 1.0; SI[17] = 1.0; SI[18] = 1.0; SI[19] = 1.0; SI[20] = 1.0; SI[21] = 1.0; SI[22] = 1.0; SI[23] = 1.0; SI[24] = 1.0; SI[25] = 1.0; SI[26] = 1.0; SI[27] = 1.0; SI[28] = 1.0; SI[29] = 1.0; SI[30] = 1.0; SI[31] = 1.0; SI[32] = 1.0; SI[33] = 1.0; SI[34] = 1.0; SI[35] = 1.0; } void computeRoots(double VOI, double* CONSTANTS, double* RATES, double* OLDRATES, double* STATES, double* OLDSTATES, double* ALGEBRAIC, double* CONDVARS) { CONDVAR[0] = VOI - CONSTANTS[98]; CONDVAR[1] = VOI - (CONSTANTS[98]+CONSTANTS[106]); CONDVAR[2] = (VOI - (CONSTANTS[106]+CONSTANTS[98])) - 0.00000; CONDVAR[3] = (VOI - (CONSTANTS[100]+CONSTANTS[98]+CONSTANTS[99])) - 0.00000; }