Generated Code
The following is c_ida code generated by the CellML API from this CellML file. (Back to language selection)
The raw code is available.
/*
There are a total of 126 entries in the algebraic variable array.
There are a total of 46 entries in each of the rate and state variable arrays.
There are a total of 175 entries in the constant variable array.
*/
/*
* VOI is t in component main (second).
* CONSTANTS[0] is rho in component main (Js2_per_m5).
* CONSTANTS[1] is g in component main (m_per_s2).
* CONSTANTS[2] is theta_deg in component main (dim).
* CONSTANTS[174] is theta_rad in component main (radian).
* ALGEBRAIC[0] is z in component main (dim).
* CONSTANTS[3] is T in component main (second).
* ALGEBRAIC[1] is mt in component main (dim).
* ALGEBRAIC[2] is mta in component main (dim).
* CONSTANTS[4] is delay in component main (dim).
* CONSTANTS[5] is To_pk in component main (dim).
* STATES[0] is q_LV in component main (litre).
* CONSTANTS[6] is q_LV_us in component main (litre).
* ALGEBRAIC[4] is u_LV in component main (kPa).
* ALGEBRAIC[3] is E_LV in component main (kPa_per_L).
* CONSTANTS[7] is E_LVmax in component main (kPa_per_L).
* CONSTANTS[8] is E_LVmin in component main (kPa_per_L).
* STATES[1] is q_RV in component main (litre).
* CONSTANTS[9] is q_RV_us in component main (litre).
* ALGEBRAIC[6] is u_RV in component main (kPa).
* ALGEBRAIC[5] is E_RV in component main (kPa_per_L).
* CONSTANTS[10] is E_RVmax in component main (kPa_per_L).
* CONSTANTS[11] is E_RVmin in component main (kPa_per_L).
* STATES[2] is q_LA in component main (litre).
* CONSTANTS[12] is q_LA_us in component main (litre).
* ALGEBRAIC[7] is u_LA in component main (kPa).
* CONSTANTS[13] is E_LA in component main (kPa_per_L).
* STATES[3] is q_RA in component main (litre).
* CONSTANTS[14] is q_RA_us in component main (litre).
* ALGEBRAIC[8] is u_RA in component main (kPa).
* CONSTANTS[15] is E_RA in component main (kPa_per_L).
* ALGEBRAIC[83] is v_AV in component main (L_per_s).
* CONSTANTS[16] is R_AV in component main (kPa_s_per_L).
* ALGEBRAIC[84] is v_PV in component main (L_per_s).
* CONSTANTS[17] is R_PV in component main (kPa_s_per_L).
* ALGEBRAIC[9] is v_TV in component main (L_per_s).
* CONSTANTS[18] is R_TV in component main (kPa_s_per_L).
* ALGEBRAIC[10] is v_MV in component main (L_per_s).
* CONSTANTS[19] is R_MV in component main (kPa_s_per_L).
* STATES[4] is q_pulmA in component main (litre).
* CONSTANTS[20] is q_pulmA_us in component main (litre).
* ALGEBRAIC[11] is u_pulmA in component main (kPa).
* CONSTANTS[21] is E_pulmA in component main (kPa_per_L).
* ALGEBRAIC[85] is v_lungA in component main (L_per_s).
* CONSTANTS[22] is R_lungA in component main (kPa_s_per_L).
* STATES[5] is q_lungC in component main (litre).
* CONSTANTS[23] is q_lungC_us in component main (litre).
* ALGEBRAIC[12] is u_lungC in component main (kPa).
* CONSTANTS[24] is E_lungC in component main (kPa_per_L).
* ALGEBRAIC[13] is v_pulmV in component main (L_per_s).
* CONSTANTS[25] is R_pulmV in component main (kPa_s_per_L).
* STATES[6] is q_AA in component main (litre).
* CONSTANTS[26] is q_AA_us in component main (litre).
* ALGEBRAIC[14] is u_AA in component main (kPa).
* CONSTANTS[27] is E_AA in component main (kPa_per_L).
* ALGEBRAIC[86] is v_brachiocephalicA in component main (L_per_s).
* CONSTANTS[28] is R_brachiocephalicA in component main (kPa_s_per_L).
* STATES[7] is q_brachiocephalicA in component main (litre).
* CONSTANTS[29] is q_brachiocephalicA_us in component main (litre).
* ALGEBRAIC[15] is u_brachiocephalicA in component main (kPa).
* CONSTANTS[30] is E_brachiocephalicA in component main (kPa_per_L).
* ALGEBRAIC[87] is v_rSubclavianA in component main (L_per_s).
* CONSTANTS[31] is R_rSubclavianA in component main (kPa_s_per_L).
* ALGEBRAIC[88] is v_rCCA in component main (L_per_s).
* CONSTANTS[32] is R_rCCA in component main (kPa_s_per_L).
* STATES[8] is q_rSubclavianA in component main (litre).
* CONSTANTS[33] is q_rSubclavianA_us in component main (litre).
* ALGEBRAIC[16] is u_rSubclavianA in component main (kPa).
* CONSTANTS[34] is E_rSubclavianA in component main (kPa_per_L).
* ALGEBRAIC[89] is v_rBrachialA in component main (L_per_s).
* CONSTANTS[35] is R_rBrachialA in component main (kPa_s_per_L).
* ALGEBRAIC[90] is v_rVertebralA in component main (L_per_s).
* CONSTANTS[36] is R_rVertebralA in component main (kPa_s_per_L).
* ALGEBRAIC[91] is v_lCCA in component main (L_per_s).
* CONSTANTS[37] is R_lCCA in component main (kPa_s_per_L).
* ALGEBRAIC[92] is v_lSubclavianA in component main (L_per_s).
* CONSTANTS[38] is R_lSubclavianA in component main (kPa_s_per_L).
* STATES[9] is q_lSubclavianA in component main (litre).
* CONSTANTS[39] is q_lSubclavianA_us in component main (litre).
* ALGEBRAIC[17] is u_lSubclavianA in component main (kPa).
* CONSTANTS[40] is E_lSubclavianA in component main (kPa_per_L).
* ALGEBRAIC[93] is v_lBrachialA in component main (L_per_s).
* CONSTANTS[41] is R_lBrachialA in component main (kPa_s_per_L).
* ALGEBRAIC[94] is v_lVertebralA in component main (L_per_s).
* CONSTANTS[42] is R_lVertebralA in component main (kPa_s_per_L).
* STATES[10] is q_headC in component main (litre).
* CONSTANTS[43] is q_headC_us in component main (litre).
* ALGEBRAIC[18] is u_headC in component main (kPa).
* CONSTANTS[44] is E_headC in component main (kPa_per_L).
* ALGEBRAIC[19] is v_headV in component main (L_per_s).
* CONSTANTS[45] is R_headV in component main (kPa_s_per_L).
* STATES[11] is q_lArmC in component main (litre).
* CONSTANTS[46] is q_lArmC_us in component main (litre).
* ALGEBRAIC[20] is u_lArmC in component main (kPa).
* CONSTANTS[47] is E_lArmC in component main (kPa_per_L).
* ALGEBRAIC[21] is v_lArmV in component main (L_per_s).
* CONSTANTS[48] is R_lArmV in component main (kPa_s_per_L).
* STATES[12] is q_rArmC in component main (litre).
* CONSTANTS[49] is q_rArmC_us in component main (litre).
* ALGEBRAIC[22] is u_rArmC in component main (kPa).
* CONSTANTS[50] is E_rArmC in component main (kPa_per_L).
* ALGEBRAIC[23] is v_rArmV in component main (L_per_s).
* CONSTANTS[51] is R_rArmV in component main (kPa_s_per_L).
* STATES[13] is q_A1 in component main (litre).
* CONSTANTS[52] is q_A1_us in component main (litre).
* STATES[14] is q_A2 in component main (litre).
* CONSTANTS[53] is q_A2_us in component main (litre).
* STATES[15] is q_A3 in component main (litre).
* CONSTANTS[54] is q_A3_us in component main (litre).
* STATES[16] is q_A4 in component main (litre).
* CONSTANTS[55] is q_A4_us in component main (litre).
* STATES[17] is q_A5 in component main (litre).
* CONSTANTS[56] is q_A5_us in component main (litre).
* STATES[18] is q_A6 in component main (litre).
* CONSTANTS[57] is q_A6_us in component main (litre).
* STATES[19] is q_A7 in component main (litre).
* CONSTANTS[58] is q_A7_us in component main (litre).
* STATES[20] is q_A8 in component main (litre).
* CONSTANTS[59] is q_A8_us in component main (litre).
* ALGEBRAIC[32] is v_A1 in component main (L_per_s).
* ALGEBRAIC[33] is v_A2 in component main (L_per_s).
* ALGEBRAIC[34] is v_A3 in component main (L_per_s).
* ALGEBRAIC[35] is v_A4 in component main (L_per_s).
* ALGEBRAIC[36] is v_A5 in component main (L_per_s).
* ALGEBRAIC[37] is v_A6 in component main (L_per_s).
* ALGEBRAIC[38] is v_A7 in component main (L_per_s).
* ALGEBRAIC[39] is v_A8 in component main (L_per_s).
* ALGEBRAIC[24] is u_A1 in component main (kPa).
* ALGEBRAIC[25] is u_A2 in component main (kPa).
* ALGEBRAIC[26] is u_A3 in component main (kPa).
* ALGEBRAIC[27] is u_A4 in component main (kPa).
* ALGEBRAIC[28] is u_A5 in component main (kPa).
* ALGEBRAIC[29] is u_A6 in component main (kPa).
* ALGEBRAIC[30] is u_A7 in component main (kPa).
* ALGEBRAIC[31] is u_A8 in component main (kPa).
* CONSTANTS[60] is E_A1 in component main (kPa_per_L).
* CONSTANTS[61] is E_A2 in component main (kPa_per_L).
* CONSTANTS[62] is E_A3 in component main (kPa_per_L).
* CONSTANTS[63] is E_A4 in component main (kPa_per_L).
* CONSTANTS[64] is E_A5 in component main (kPa_per_L).
* CONSTANTS[65] is E_A6 in component main (kPa_per_L).
* CONSTANTS[66] is E_A7 in component main (kPa_per_L).
* CONSTANTS[67] is E_A8 in component main (kPa_per_L).
* CONSTANTS[68] is R_A1 in component main (kPa_s_per_L).
* CONSTANTS[69] is R_A2 in component main (kPa_s_per_L).
* CONSTANTS[70] is R_A3 in component main (kPa_s_per_L).
* CONSTANTS[71] is R_A4 in component main (kPa_s_per_L).
* CONSTANTS[72] is R_A5 in component main (kPa_s_per_L).
* CONSTANTS[73] is R_A6 in component main (kPa_s_per_L).
* CONSTANTS[74] is R_A7 in component main (kPa_s_per_L).
* CONSTANTS[75] is R_A8 in component main (kPa_s_per_L).
* ALGEBRAIC[95] is v_lInfPhrenicA in component main (L_per_s).
* CONSTANTS[76] is R_lInfPhrenicA in component main (kPa_s_per_L).
* STATES[21] is q_lAdrenalGlandC in component main (litre).
* CONSTANTS[77] is q_lAdrenalGlandC_us in component main (litre).
* ALGEBRAIC[40] is u_lAdrenalGlandC in component main (kPa).
* CONSTANTS[78] is E_lAdrenalGlandC in component main (kPa_per_L).
* ALGEBRAIC[96] is v_lAdrenalV in component main (L_per_s).
* CONSTANTS[79] is R_lAdrenalV in component main (kPa_s_per_L).
* STATES[22] is q_lInfPhrenicV in component main (litre).
* CONSTANTS[80] is q_lInfPhrenicV_us in component main (litre).
* ALGEBRAIC[41] is u_lInfPhrenicV in component main (kPa).
* CONSTANTS[81] is E_lInfPhrenicV in component main (kPa_per_L).
* ALGEBRAIC[97] is v_lInfPhrenicV in component main (L_per_s).
* CONSTANTS[82] is R_lInfPhrenicV in component main (kPa_s_per_L).
* ALGEBRAIC[98] is v_rInfPhrenicA in component main (L_per_s).
* CONSTANTS[83] is R_rInfPhrenicA in component main (kPa_s_per_L).
* STATES[23] is q_rAdrenalGlandC in component main (litre).
* CONSTANTS[84] is q_rAdrenalGlandC_us in component main (litre).
* ALGEBRAIC[42] is u_rAdrenalGlandC in component main (kPa).
* CONSTANTS[85] is E_rAdrenalGlandC in component main (kPa_per_L).
* ALGEBRAIC[99] is v_rAdrenalV in component main (L_per_s).
* CONSTANTS[86] is R_rAdrenalV in component main (kPa_s_per_L).
* STATES[24] is q_rInfPhrenicV in component main (litre).
* CONSTANTS[87] is q_rInfPhrenicV_us in component main (litre).
* ALGEBRAIC[43] is u_rInfPhrenicV in component main (kPa).
* CONSTANTS[88] is E_rInfPhrenicV in component main (kPa_per_L).
* ALGEBRAIC[100] is v_rInfPhrenicV in component main (L_per_s).
* CONSTANTS[89] is R_rInfPhrenicV in component main (kPa_s_per_L).
* ALGEBRAIC[101] is v_celiacA in component main (L_per_s).
* CONSTANTS[90] is R_celiacA in component main (kPa_s_per_L).
* STATES[25] is q_celiacA in component main (litre).
* CONSTANTS[91] is q_celiacA_us in component main (litre).
* ALGEBRAIC[44] is u_celiacA in component main (kPa).
* CONSTANTS[92] is E_celiacA in component main (kPa_per_L).
* CONSTANTS[93] is z_celiacA in component main (meter).
* ALGEBRAIC[102] is v_supMesA in component main (L_per_s).
* CONSTANTS[94] is R_supMesA in component main (kPa_s_per_L).
* STATES[26] is q_supMesA in component main (litre).
* CONSTANTS[95] is q_supMesA_us in component main (litre).
* ALGEBRAIC[45] is u_supMesA in component main (kPa).
* CONSTANTS[96] is E_supMesA in component main (kPa_per_L).
* CONSTANTS[97] is z_supMesA in component main (meter).
* ALGEBRAIC[103] is v_lRenalA in component main (L_per_s).
* CONSTANTS[98] is R_lRenalA in component main (kPa_s_per_L).
* STATES[27] is q_lGlomerulusC in component main (litre).
* CONSTANTS[99] is q_lGlomerulusC_us in component main (litre).
* ALGEBRAIC[46] is u_lGlomerulusC in component main (kPa).
* CONSTANTS[100] is E_lGlomerulusC in component main (kPa_per_L).
* ALGEBRAIC[104] is v_lEffArteriol in component main (L_per_s).
* CONSTANTS[101] is R_lEffArteriol in component main (kPa_s_per_L).
* STATES[28] is q_lPeritubularC in component main (litre).
* CONSTANTS[102] is q_lPeritubularC_us in component main (litre).
* ALGEBRAIC[47] is u_lPeritubularC in component main (kPa).
* CONSTANTS[103] is E_lPeritubularC in component main (kPa_per_L).
* ALGEBRAIC[105] is v_lRenalV in component main (L_per_s).
* CONSTANTS[104] is R_lRenalV in component main (kPa_s_per_L).
* ALGEBRAIC[106] is v_rRenalA in component main (L_per_s).
* CONSTANTS[105] is R_rRenalA in component main (kPa_s_per_L).
* STATES[29] is q_rGlomerulusC in component main (litre).
* CONSTANTS[106] is q_rGlomerulusC_us in component main (litre).
* ALGEBRAIC[48] is u_rGlomerulusC in component main (kPa).
* CONSTANTS[107] is E_rGlomerulusC in component main (kPa_per_L).
* ALGEBRAIC[107] is v_rEffArteriol in component main (L_per_s).
* CONSTANTS[108] is R_rEffArteriol in component main (kPa_s_per_L).
* STATES[30] is q_rPeritubularC in component main (litre).
* CONSTANTS[109] is q_rPeritubularC_us in component main (litre).
* ALGEBRAIC[49] is u_rPeritubularC in component main (kPa).
* CONSTANTS[110] is E_rPeritubularC in component main (kPa_per_L).
* ALGEBRAIC[108] is v_rRenalV in component main (L_per_s).
* CONSTANTS[111] is R_rRenalV in component main (kPa_s_per_L).
* ALGEBRAIC[109] is v_infMesA in component main (L_per_s).
* CONSTANTS[112] is R_infMesA in component main (kPa_s_per_L).
* ALGEBRAIC[110] is v_stomachA in component main (L_per_s).
* CONSTANTS[113] is R_stomachA in component main (kPa_s_per_L).
* STATES[31] is q_stomachC in component main (litre).
* CONSTANTS[114] is q_stomachC_us in component main (litre).
* ALGEBRAIC[50] is u_stomachC in component main (kPa).
* CONSTANTS[115] is E_stomachC in component main (kPa_per_L).
* CONSTANTS[116] is z_stomachC in component main (meter).
* ALGEBRAIC[111] is v_stomachV in component main (L_per_s).
* CONSTANTS[117] is R_stomachV in component main (kPa_s_per_L).
* ALGEBRAIC[112] is v_spleenA in component main (L_per_s).
* CONSTANTS[118] is R_spleenA in component main (kPa_s_per_L).
* STATES[32] is q_spleenC in component main (litre).
* CONSTANTS[119] is q_spleenC_us in component main (litre).
* ALGEBRAIC[51] is u_spleenC in component main (kPa).
* CONSTANTS[120] is E_spleenC in component main (kPa_per_L).
* CONSTANTS[121] is z_spleenC in component main (meter).
* ALGEBRAIC[113] is v_spleenV in component main (L_per_s).
* CONSTANTS[122] is R_spleenV in component main (kPa_s_per_L).
* ALGEBRAIC[114] is v_pancreas1A in component main (L_per_s).
* ALGEBRAIC[115] is v_pancreas2A in component main (L_per_s).
* CONSTANTS[123] is R_pancreas1A in component main (kPa_s_per_L).
* CONSTANTS[124] is R_pancreas2A in component main (kPa_s_per_L).
* STATES[33] is q_pancreasC in component main (litre).
* CONSTANTS[125] is q_pancreasC_us in component main (litre).
* ALGEBRAIC[52] is u_pancreasC in component main (kPa).
* CONSTANTS[126] is E_pancreasC in component main (kPa_per_L).
* CONSTANTS[127] is z_pancreasC in component main (meter).
* ALGEBRAIC[116] is v_pancreasV in component main (L_per_s).
* CONSTANTS[128] is R_pancreasV in component main (kPa_s_per_L).
* ALGEBRAIC[117] is v_intestineA in component main (L_per_s).
* CONSTANTS[129] is R_intestineA in component main (kPa_s_per_L).
* STATES[34] is q_intestineC in component main (litre).
* CONSTANTS[130] is q_intestineC_us in component main (litre).
* ALGEBRAIC[53] is u_intestineC in component main (kPa).
* CONSTANTS[131] is E_intestineC in component main (kPa_per_L).
* CONSTANTS[132] is z_ in component main (meter).
* ALGEBRAIC[118] is v_intestineV in component main (L_per_s).
* CONSTANTS[133] is R_intestineV in component main (kPa_s_per_L).
* ALGEBRAIC[119] is v_colonA in component main (L_per_s).
* CONSTANTS[134] is R_colonA in component main (kPa_s_per_L).
* STATES[35] is q_colonC in component main (litre).
* CONSTANTS[135] is q_colonC_us in component main (litre).
* ALGEBRAIC[54] is u_colonC in component main (kPa).
* CONSTANTS[136] is E_colonC in component main (kPa_per_L).
* CONSTANTS[137] is z_colonC in component main (meter).
* ALGEBRAIC[120] is v_colonV in component main (L_per_s).
* CONSTANTS[138] is R_colonV in component main (kPa_s_per_L).
* STATES[36] is q_portalV in component main (litre).
* CONSTANTS[139] is q_portalV_us in component main (litre).
* ALGEBRAIC[55] is u_portalV in component main (kPa).
* CONSTANTS[140] is E_portalV in component main (kPa_per_L).
* CONSTANTS[141] is z_portalV in component main (meter).
* ALGEBRAIC[121] is v_portalV in component main (L_per_s).
* CONSTANTS[142] is R_portalV in component main (kPa_s_per_L).
* ALGEBRAIC[122] is v_liverA in component main (L_per_s).
* CONSTANTS[143] is R_liverA in component main (kPa_s_per_L).
* STATES[37] is q_liverC in component main (litre).
* CONSTANTS[144] is q_liverC_us in component main (litre).
* ALGEBRAIC[56] is u_liverC in component main (kPa).
* CONSTANTS[145] is E_liverC in component main (kPa_per_L).
* CONSTANTS[146] is z_liverC in component main (meter).
* ALGEBRAIC[123] is v_liverV in component main (L_per_s).
* CONSTANTS[147] is R_liverV in component main (kPa_s_per_L).
* STATES[38] is q_V1 in component main (litre).
* CONSTANTS[148] is q_V1_us in component main (litre).
* STATES[39] is q_V2 in component main (litre).
* CONSTANTS[149] is q_V2_us in component main (litre).
* STATES[40] is q_V3 in component main (litre).
* CONSTANTS[150] is q_V3_us in component main (litre).
* STATES[41] is q_V4 in component main (litre).
* CONSTANTS[151] is q_V4_us in component main (litre).
* STATES[42] is q_V5 in component main (litre).
* CONSTANTS[152] is q_V5_us in component main (litre).
* STATES[43] is q_V6 in component main (litre).
* CONSTANTS[153] is q_V6_us in component main (litre).
* ALGEBRAIC[63] is v_V1 in component main (L_per_s).
* ALGEBRAIC[64] is v_V2 in component main (L_per_s).
* ALGEBRAIC[65] is v_V3 in component main (L_per_s).
* ALGEBRAIC[66] is v_V4 in component main (L_per_s).
* ALGEBRAIC[67] is v_V5 in component main (L_per_s).
* ALGEBRAIC[68] is v_V6 in component main (L_per_s).
* ALGEBRAIC[57] is u_V1 in component main (kPa).
* ALGEBRAIC[58] is u_V2 in component main (kPa).
* ALGEBRAIC[59] is u_V3 in component main (kPa).
* ALGEBRAIC[60] is u_V4 in component main (kPa).
* ALGEBRAIC[61] is u_V5 in component main (kPa).
* ALGEBRAIC[62] is u_V6 in component main (kPa).
* CONSTANTS[154] is E_V1 in component main (kPa_per_L).
* CONSTANTS[155] is E_V2 in component main (kPa_per_L).
* CONSTANTS[156] is E_V3 in component main (kPa_per_L).
* CONSTANTS[157] is E_V4 in component main (kPa_per_L).
* CONSTANTS[158] is E_V5 in component main (kPa_per_L).
* CONSTANTS[159] is E_V6 in component main (kPa_per_L).
* CONSTANTS[160] is R_V1 in component main (kPa_s_per_L).
* CONSTANTS[161] is R_V2 in component main (kPa_s_per_L).
* CONSTANTS[162] is R_V3 in component main (kPa_s_per_L).
* CONSTANTS[163] is R_V4 in component main (kPa_s_per_L).
* CONSTANTS[164] is R_V5 in component main (kPa_s_per_L).
* CONSTANTS[165] is R_V6 in component main (kPa_s_per_L).
* ALGEBRAIC[124] is v_lCommonIliacA in component main (L_per_s).
* CONSTANTS[166] is R_lCommonIliacA in component main (kPa_s_per_L).
* STATES[44] is q_lLegC in component main (litre).
* CONSTANTS[167] is q_lLegC_us in component main (litre).
* ALGEBRAIC[69] is u_lLegC in component main (kPa).
* CONSTANTS[168] is E_lLegC in component main (kPa_per_L).
* ALGEBRAIC[70] is v_lCommonIliacV in component main (L_per_s).
* CONSTANTS[169] is R_lCommonIliacV in component main (kPa_s_per_L).
* ALGEBRAIC[125] is v_rCommonIliacA in component main (L_per_s).
* CONSTANTS[170] is R_rCommonIliacA in component main (kPa_s_per_L).
* STATES[45] is q_rLegC in component main (litre).
* CONSTANTS[171] is q_rLegC_us in component main (litre).
* ALGEBRAIC[71] is u_rLegC in component main (kPa).
* CONSTANTS[172] is E_rLegC in component main (kPa_per_L).
* ALGEBRAIC[72] is v_rCommonIliacV in component main (L_per_s).
* CONSTANTS[173] is R_rCommonIliacV in component main (kPa_s_per_L).
* ALGEBRAIC[73] is q_TotHeart in component main (litre).
* ALGEBRAIC[74] is q_TotLung in component main (litre).
* ALGEBRAIC[75] is q_TotHead in component main (litre).
* ALGEBRAIC[76] is q_TotThoracic in component main (litre).
* ALGEBRAIC[77] is q_TotAorta in component main (litre).
* ALGEBRAIC[78] is q_TotRenal in component main (litre).
* ALGEBRAIC[79] is q_TotGut in component main (litre).
* ALGEBRAIC[80] is q_TotVenaCava in component main (litre).
* ALGEBRAIC[81] is q_TotLimbs in component main (litre).
* ALGEBRAIC[82] is q_TotBlood in component main (litre).
* RATES[0] is d/dt q_LV in component main (litre).
* RATES[1] is d/dt q_RV in component main (litre).
* RATES[2] is d/dt q_LA in component main (litre).
* RATES[3] is d/dt q_RA in component main (litre).
* RATES[4] is d/dt q_pulmA in component main (litre).
* RATES[5] is d/dt q_lungC in component main (litre).
* RATES[6] is d/dt q_AA in component main (litre).
* RATES[7] is d/dt q_brachiocephalicA in component main (litre).
* RATES[8] is d/dt q_rSubclavianA in component main (litre).
* RATES[9] is d/dt q_lSubclavianA in component main (litre).
* RATES[10] is d/dt q_headC in component main (litre).
* RATES[11] is d/dt q_lArmC in component main (litre).
* RATES[12] is d/dt q_rArmC in component main (litre).
* RATES[13] is d/dt q_A1 in component main (litre).
* RATES[14] is d/dt q_A2 in component main (litre).
* RATES[15] is d/dt q_A3 in component main (litre).
* RATES[16] is d/dt q_A4 in component main (litre).
* RATES[17] is d/dt q_A5 in component main (litre).
* RATES[18] is d/dt q_A6 in component main (litre).
* RATES[19] is d/dt q_A7 in component main (litre).
* RATES[20] is d/dt q_A8 in component main (litre).
* RATES[21] is d/dt q_lAdrenalGlandC in component main (litre).
* RATES[22] is d/dt q_lInfPhrenicV in component main (litre).
* RATES[23] is d/dt q_rAdrenalGlandC in component main (litre).
* RATES[24] is d/dt q_rInfPhrenicV in component main (litre).
* RATES[25] is d/dt q_celiacA in component main (litre).
* RATES[26] is d/dt q_supMesA in component main (litre).
* RATES[27] is d/dt q_lGlomerulusC in component main (litre).
* RATES[28] is d/dt q_lPeritubularC in component main (litre).
* RATES[29] is d/dt q_rGlomerulusC in component main (litre).
* RATES[30] is d/dt q_rPeritubularC in component main (litre).
* RATES[31] is d/dt q_stomachC in component main (litre).
* RATES[32] is d/dt q_spleenC in component main (litre).
* RATES[33] is d/dt q_pancreasC in component main (litre).
* RATES[34] is d/dt q_intestineC in component main (litre).
* RATES[35] is d/dt q_colonC in component main (litre).
* RATES[36] is d/dt q_portalV in component main (litre).
* RATES[37] is d/dt q_liverC in component main (litre).
* RATES[38] is d/dt q_V1 in component main (litre).
* RATES[39] is d/dt q_V2 in component main (litre).
* RATES[40] is d/dt q_V3 in component main (litre).
* RATES[41] is d/dt q_V4 in component main (litre).
* RATES[42] is d/dt q_V5 in component main (litre).
* RATES[43] is d/dt q_V6 in component main (litre).
* RATES[44] is d/dt q_lLegC in component main (litre).
* RATES[45] is d/dt q_rLegC in component main (litre).
* There are a total of 10 condition variables.
*/
void
initConsts(double* CONSTANTS, double* RATES, double *STATES)
{
CONSTANTS[0] = 1000;
CONSTANTS[1] = 9.81;
CONSTANTS[2] = 90;
CONSTANTS[3] = 1;
CONSTANTS[4] = 0.1;
CONSTANTS[5] = 0.1;
STATES[0] = 2.24894867772612;
CONSTANTS[6] = 0.005;
CONSTANTS[7] = 320;
CONSTANTS[8] = 6.667;
STATES[1] = 2.24212874273495;
CONSTANTS[9] = 0.01;
CONSTANTS[10] = 70;
CONSTANTS[11] = 2;
STATES[2] = 1.50038322871398;
CONSTANTS[12] = 0.004;
CONSTANTS[13] = 10;
STATES[3] = 0.582873822068968;
CONSTANTS[14] = 0.004;
CONSTANTS[15] = 10;
CONSTANTS[16] = 1;
CONSTANTS[17] = 1;
CONSTANTS[18] = 1;
CONSTANTS[19] = 1;
STATES[4] = 0.274822042097049;
CONSTANTS[20] = 0.2;
CONSTANTS[21] = 200;
CONSTANTS[22] = 1;
STATES[5] = 0.274821056256821;
CONSTANTS[23] = 0.2;
CONSTANTS[24] = 200;
CONSTANTS[25] = 1;
STATES[6] = 1.43716360225001;
CONSTANTS[26] = 0.12;
CONSTANTS[27] = 80;
CONSTANTS[28] = 100;
STATES[7] = 0.658321340279823;
CONSTANTS[29] = 0.2;
CONSTANTS[30] = 200;
CONSTANTS[31] = 100;
CONSTANTS[32] = 100;
STATES[8] = 0.578637981993128;
CONSTANTS[33] = 0.2;
CONSTANTS[34] = 200;
CONSTANTS[35] = 100;
CONSTANTS[36] = 100;
CONSTANTS[37] = 100;
CONSTANTS[38] = 100;
STATES[9] = 0.609560299960373;
CONSTANTS[39] = 0.2;
CONSTANTS[40] = 200;
CONSTANTS[41] = 100;
CONSTANTS[42] = 100;
STATES[10] = 0.575700923676085;
CONSTANTS[43] = 0.2;
CONSTANTS[44] = 200;
CONSTANTS[45] = 100;
STATES[11] = 0.380415025779693;
CONSTANTS[46] = 0.06;
CONSTANTS[47] = 150;
CONSTANTS[48] = 100;
STATES[12] = 0.380415025779692;
CONSTANTS[49] = 0.06;
CONSTANTS[50] = 150;
CONSTANTS[51] = 100;
STATES[13] = 0.0726453866278764;
CONSTANTS[52] = 0.06;
STATES[14] = 0.0722595904606296;
CONSTANTS[53] = 0.06;
STATES[15] = 0.0717727262354559;
CONSTANTS[54] = 0.06;
STATES[16] = 0.0715328891139091;
CONSTANTS[55] = 0.06;
STATES[17] = 0.0714293557557069;
CONSTANTS[56] = 0.06;
STATES[18] = 0.0713497500336812;
CONSTANTS[57] = 0.06;
STATES[19] = 0.0712949341825069;
CONSTANTS[58] = 0.06;
STATES[20] = 0.0712201889071758;
CONSTANTS[59] = 0.06;
CONSTANTS[60] = 400;
CONSTANTS[61] = 400;
CONSTANTS[62] = 400;
CONSTANTS[63] = 400;
CONSTANTS[64] = 400;
CONSTANTS[65] = 400;
CONSTANTS[66] = 400;
CONSTANTS[67] = 400;
CONSTANTS[68] = 10000000;
CONSTANTS[69] = 100;
CONSTANTS[70] = 100;
CONSTANTS[71] = 100;
CONSTANTS[72] = 100;
CONSTANTS[73] = 100;
CONSTANTS[74] = 100;
CONSTANTS[75] = 100;
CONSTANTS[76] = 100;
STATES[21] = 0.226013520134949;
CONSTANTS[77] = 0.2;
CONSTANTS[78] = 200;
CONSTANTS[79] = 100;
STATES[22] = 0.226425525942081;
CONSTANTS[80] = 0.2;
CONSTANTS[81] = 200;
CONSTANTS[82] = 100;
CONSTANTS[83] = 100;
STATES[23] = 0.224729694488936;
CONSTANTS[84] = 0.2;
CONSTANTS[85] = 200;
CONSTANTS[86] = 100;
STATES[24] = 0.224899115493557;
CONSTANTS[87] = 0.2;
CONSTANTS[88] = 200;
CONSTANTS[89] = 100;
CONSTANTS[90] = 100;
STATES[25] = 0.0715428919998289;
CONSTANTS[91] = 0.06;
CONSTANTS[92] = 400;
CONSTANTS[93] = 0.2;
CONSTANTS[94] = 100;
STATES[26] = 0.071414457768405;
CONSTANTS[95] = 0.06;
CONSTANTS[96] = 400;
CONSTANTS[97] = 0.2;
CONSTANTS[98] = 100;
STATES[27] = 0.222843940557744;
CONSTANTS[99] = 0.2;
CONSTANTS[100] = 200;
CONSTANTS[101] = 100;
STATES[28] = 0.222892809988734;
CONSTANTS[102] = 0.2;
CONSTANTS[103] = 200;
CONSTANTS[104] = 100;
CONSTANTS[105] = 100;
STATES[29] = 0.222680450943523;
CONSTANTS[106] = 0.2;
CONSTANTS[107] = 200;
CONSTANTS[108] = 100;
STATES[30] = 0.222721287850087;
CONSTANTS[109] = 0.2;
CONSTANTS[110] = 200;
CONSTANTS[111] = 100;
CONSTANTS[112] = 100;
CONSTANTS[113] = 100;
STATES[31] = 0.105910755847991;
CONSTANTS[114] = 0.06;
CONSTANTS[115] = 100;
CONSTANTS[116] = 0.2;
CONSTANTS[117] = 2400;
CONSTANTS[118] = 100;
STATES[32] = 0.105910034847806;
CONSTANTS[119] = 0.06;
CONSTANTS[120] = 100;
CONSTANTS[121] = 0.2;
CONSTANTS[122] = 3000;
CONSTANTS[123] = 100;
CONSTANTS[124] = 100;
STATES[33] = 0.105787155209054;
CONSTANTS[125] = 0.06;
CONSTANTS[126] = 100;
CONSTANTS[127] = 0.2;
CONSTANTS[128] = 4000;
CONSTANTS[129] = 100;
STATES[34] = 0.105459895332545;
CONSTANTS[130] = 0.06;
CONSTANTS[131] = 100;
CONSTANTS[132] = 0.2;
CONSTANTS[133] = 1200;
CONSTANTS[134] = 100;
STATES[35] = 0.105317375726849;
CONSTANTS[135] = 0.06;
CONSTANTS[136] = 100;
CONSTANTS[137] = 0.2;
CONSTANTS[138] = 2000;
STATES[36] = 0.152013945600315;
CONSTANTS[139] = 0.06;
CONSTANTS[140] = 50;
CONSTANTS[141] = 0.2;
CONSTANTS[142] = 100;
CONSTANTS[143] = 800;
STATES[37] = 0.526188169704937;
CONSTANTS[144] = 0.06;
CONSTANTS[145] = 10;
CONSTANTS[146] = -0.5;
CONSTANTS[147] = 1;
STATES[38] = 0.0732527312969717;
CONSTANTS[148] = 0.06;
STATES[39] = 0.0724355014489091;
CONSTANTS[149] = 0.06;
STATES[40] = 0.0716607456049039;
CONSTANTS[150] = 0.06;
STATES[41] = 0.071501504166401;
CONSTANTS[151] = 0.06;
STATES[42] = 0.0714111536200381;
CONSTANTS[152] = 0.06;
STATES[43] = 0.0713861207574313;
CONSTANTS[153] = 0.06;
CONSTANTS[154] = 400;
CONSTANTS[155] = 400;
CONSTANTS[156] = 400;
CONSTANTS[157] = 400;
CONSTANTS[158] = 400;
CONSTANTS[159] = 400;
CONSTANTS[160] = 100;
CONSTANTS[161] = 100;
CONSTANTS[162] = 100;
CONSTANTS[163] = 100;
CONSTANTS[164] = 100;
CONSTANTS[165] = 100;
CONSTANTS[166] = 100;
STATES[44] = 0.0898390162613648;
CONSTANTS[167] = 0.06;
CONSTANTS[168] = 150;
CONSTANTS[169] = 4000;
CONSTANTS[170] = 100;
STATES[45] = 0.0898390162613648;
CONSTANTS[171] = 0.06;
CONSTANTS[172] = 150;
CONSTANTS[173] = 4000;
CONSTANTS[174] = ( CONSTANTS[2]* 3.14159265358979)/180.000;
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;
RATES[36] = 0.1001;
RATES[37] = 0.1001;
RATES[38] = 0.1001;
RATES[39] = 0.1001;
RATES[40] = 0.1001;
RATES[41] = 0.1001;
RATES[42] = 0.1001;
RATES[43] = 0.1001;
RATES[44] = 0.1001;
RATES[45] = 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[10] - ALGEBRAIC[83];
resid[1] = RATES[1] - ALGEBRAIC[9] - ALGEBRAIC[84];
resid[2] = RATES[2] - ALGEBRAIC[13] - ALGEBRAIC[10];
resid[3] = RATES[3] - (ALGEBRAIC[19]+ALGEBRAIC[21]+ALGEBRAIC[23]+ALGEBRAIC[63]) - ALGEBRAIC[9];
resid[4] = RATES[4] - ALGEBRAIC[84] - ALGEBRAIC[85];
resid[5] = RATES[5] - ALGEBRAIC[85] - ALGEBRAIC[13];
resid[6] = RATES[6] - (((ALGEBRAIC[83] - ALGEBRAIC[32]) - ALGEBRAIC[86]) - ALGEBRAIC[91]) - ALGEBRAIC[92];
resid[7] = RATES[7] - (ALGEBRAIC[86] - ALGEBRAIC[87]) - ALGEBRAIC[88];
resid[8] = RATES[8] - (ALGEBRAIC[87] - ALGEBRAIC[89]) - ALGEBRAIC[90];
resid[9] = RATES[9] - (ALGEBRAIC[92] - ALGEBRAIC[93]) - ALGEBRAIC[94];
resid[10] = RATES[10] - (ALGEBRAIC[90]+ALGEBRAIC[88]+ALGEBRAIC[91]+ALGEBRAIC[94]) - ALGEBRAIC[19];
resid[11] = RATES[11] - ALGEBRAIC[93] - ALGEBRAIC[21];
resid[12] = RATES[12] - ALGEBRAIC[89] - ALGEBRAIC[23];
resid[13] = RATES[13] - (ALGEBRAIC[32] - ALGEBRAIC[33]) - ALGEBRAIC[95];
resid[14] = RATES[14] - (ALGEBRAIC[33] - ALGEBRAIC[34]) - ALGEBRAIC[98];
resid[15] = RATES[15] - (ALGEBRAIC[34] - ALGEBRAIC[35]) - ALGEBRAIC[101];
resid[16] = RATES[16] - (ALGEBRAIC[35] - ALGEBRAIC[36]) - ALGEBRAIC[102];
resid[17] = RATES[17] - (ALGEBRAIC[36] - ALGEBRAIC[37]) - ALGEBRAIC[103];
resid[18] = RATES[18] - (ALGEBRAIC[37] - ALGEBRAIC[38]) - ALGEBRAIC[106];
resid[19] = RATES[19] - (ALGEBRAIC[38] - ALGEBRAIC[39]) - ALGEBRAIC[109];
resid[20] = RATES[20] - (ALGEBRAIC[39] - ALGEBRAIC[124]) - ALGEBRAIC[125];
resid[21] = RATES[21] - ALGEBRAIC[95] - ALGEBRAIC[96];
resid[22] = RATES[22] - ALGEBRAIC[96] - ALGEBRAIC[97];
resid[23] = RATES[23] - ALGEBRAIC[98] - ALGEBRAIC[99];
resid[24] = RATES[24] - ALGEBRAIC[99] - ALGEBRAIC[100];
resid[25] = RATES[25] - (((ALGEBRAIC[101] - ALGEBRAIC[122]) - ALGEBRAIC[110]) - ALGEBRAIC[112]) - ALGEBRAIC[114];
resid[26] = RATES[26] - ((ALGEBRAIC[102] - ALGEBRAIC[115]) - ALGEBRAIC[117]) - ALGEBRAIC[119];
resid[27] = RATES[27] - ALGEBRAIC[103] - ALGEBRAIC[104];
resid[28] = RATES[28] - ALGEBRAIC[104] - ALGEBRAIC[105];
resid[29] = RATES[29] - ALGEBRAIC[106] - ALGEBRAIC[107];
resid[30] = RATES[30] - ALGEBRAIC[107] - ALGEBRAIC[108];
resid[31] = RATES[31] - ALGEBRAIC[110] - ALGEBRAIC[111];
resid[32] = RATES[32] - ALGEBRAIC[112] - ALGEBRAIC[113];
resid[33] = RATES[33] - (ALGEBRAIC[114]+ALGEBRAIC[115]) - ALGEBRAIC[116];
resid[34] = RATES[34] - ALGEBRAIC[117] - ALGEBRAIC[118];
resid[35] = RATES[35] - (ALGEBRAIC[119]+ALGEBRAIC[109]) - ALGEBRAIC[120];
resid[36] = RATES[36] - (ALGEBRAIC[111]+ALGEBRAIC[113]+ALGEBRAIC[116]+ALGEBRAIC[118]+ALGEBRAIC[120]) - ALGEBRAIC[121];
resid[37] = RATES[37] - (ALGEBRAIC[122]+ALGEBRAIC[121]) - ALGEBRAIC[123];
resid[38] = RATES[38] - (ALGEBRAIC[64]+ALGEBRAIC[97]) - ALGEBRAIC[63];
resid[39] = RATES[39] - (ALGEBRAIC[65]+ALGEBRAIC[100]) - ALGEBRAIC[64];
resid[40] = RATES[40] - (ALGEBRAIC[66]+ALGEBRAIC[123]) - ALGEBRAIC[65];
resid[41] = RATES[41] - (ALGEBRAIC[67]+ALGEBRAIC[105]) - ALGEBRAIC[66];
resid[42] = RATES[42] - (ALGEBRAIC[68]+ALGEBRAIC[108]) - ALGEBRAIC[67];
resid[43] = RATES[43] - (ALGEBRAIC[70]+ALGEBRAIC[72]) - ALGEBRAIC[68];
resid[44] = RATES[44] - ALGEBRAIC[124] - ALGEBRAIC[70];
resid[45] = RATES[45] - ALGEBRAIC[125] - ALGEBRAIC[72];
}
void
computeVariables(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC)
{
ALGEBRAIC[0] = (CONDVAR[0]>0.00000&&CONDVAR[1]<0.00000 ? 1.00000 : 0.00000);
ALGEBRAIC[2] = (VOI/CONSTANTS[3] - CONSTANTS[4]) - floor((VOI - CONSTANTS[4]*CONSTANTS[3])/CONSTANTS[3]);
ALGEBRAIC[73] = STATES[3]+STATES[1]+STATES[2]+STATES[0];
ALGEBRAIC[74] = STATES[5]+STATES[4];
ALGEBRAIC[75] = STATES[7]+STATES[8]+STATES[9]+STATES[10];
ALGEBRAIC[76] = STATES[21]+STATES[22]+STATES[23]+STATES[24];
ALGEBRAIC[77] = STATES[6]+STATES[13]+STATES[14]+STATES[15]+STATES[16]+STATES[17]+STATES[18]+STATES[19]+STATES[20];
ALGEBRAIC[78] = STATES[27]+STATES[28]+STATES[29]+STATES[30];
ALGEBRAIC[79] = STATES[25]+STATES[26]+STATES[31]+STATES[32]+STATES[33]+STATES[34]+STATES[35]+STATES[36]+STATES[37];
ALGEBRAIC[80] = STATES[38]+STATES[39]+STATES[40]+STATES[41]+STATES[42]+STATES[43];
ALGEBRAIC[81] = STATES[11]+STATES[12]+STATES[44]+STATES[45];
ALGEBRAIC[82] = ALGEBRAIC[73]+ALGEBRAIC[74]+(ALGEBRAIC[75])+ALGEBRAIC[76]+ALGEBRAIC[77]+ALGEBRAIC[78]+ALGEBRAIC[79]+ALGEBRAIC[80]+ALGEBRAIC[81];
}
void
computeEssentialVariables(double VOI, double* CONSTANTS, double* RATES, double* STATES, double* ALGEBRAIC)
{
ALGEBRAIC[1] = VOI/CONSTANTS[3] - floor(VOI/CONSTANTS[3]);
ALGEBRAIC[5] = (CONDVAR[4]<0.00000 ? (( (CONSTANTS[10] - CONSTANTS[11])*ALGEBRAIC[1])/CONSTANTS[5])*exp( 0.500000*(1.00000 - pow(ALGEBRAIC[1]/CONSTANTS[5], 2.00000)))+CONSTANTS[11] : CONDVAR[5]<0.00000 ? (( (CONSTANTS[10] - CONSTANTS[11])*0.400000)/CONSTANTS[5])*exp( 0.500000*(1.00000 - pow(0.400000/CONSTANTS[5], 2.00000)))+CONSTANTS[11] : CONSTANTS[11]);
ALGEBRAIC[6] = ALGEBRAIC[5]*(STATES[1] - CONSTANTS[9]);
ALGEBRAIC[8] = CONSTANTS[15]*(STATES[3] - CONSTANTS[14]);
ALGEBRAIC[9] = (CONDVAR[8]>0.00000 ? (ALGEBRAIC[8] - ALGEBRAIC[6])/CONSTANTS[18] : 0.00000);
ALGEBRAIC[3] = (CONDVAR[2]<0.00000 ? (( (CONSTANTS[7] - CONSTANTS[8])*ALGEBRAIC[1])/CONSTANTS[5])*exp( 0.500000*(1.00000 - pow(ALGEBRAIC[1]/CONSTANTS[5], 2.00000)))+CONSTANTS[8] : CONDVAR[3]<0.00000 ? (( (CONSTANTS[7] - CONSTANTS[8])*0.400000)/CONSTANTS[5])*exp( 0.500000*(1.00000 - pow(0.400000/CONSTANTS[5], 2.00000)))+CONSTANTS[8] : CONSTANTS[8]);
ALGEBRAIC[4] = ALGEBRAIC[3]*(STATES[0] - CONSTANTS[6]);
ALGEBRAIC[7] = CONSTANTS[13]*(STATES[2] - CONSTANTS[12]);
ALGEBRAIC[10] = (CONDVAR[9]>0.00000 ? (ALGEBRAIC[7] - ALGEBRAIC[4])/CONSTANTS[19] : 0.00000);
ALGEBRAIC[12] = CONSTANTS[24]*(STATES[5] - CONSTANTS[23]);
ALGEBRAIC[13] = (ALGEBRAIC[12] - ALGEBRAIC[7])/CONSTANTS[25];
ALGEBRAIC[18] = CONSTANTS[44]*(STATES[10] - CONSTANTS[43]);
ALGEBRAIC[19] = (ALGEBRAIC[18] - ALGEBRAIC[8])/CONSTANTS[45];
ALGEBRAIC[20] = CONSTANTS[47]*(STATES[11] - CONSTANTS[46]);
ALGEBRAIC[21] = (ALGEBRAIC[20] - ALGEBRAIC[8])/CONSTANTS[48];
ALGEBRAIC[22] = CONSTANTS[50]*(STATES[12] - CONSTANTS[49]);
ALGEBRAIC[23] = (ALGEBRAIC[22] - ALGEBRAIC[8])/CONSTANTS[51];
ALGEBRAIC[14] = CONSTANTS[27]*(STATES[6] - CONSTANTS[26]);
ALGEBRAIC[24] = CONSTANTS[60]*(STATES[13] - CONSTANTS[52]);
ALGEBRAIC[32] = (ALGEBRAIC[14] - ALGEBRAIC[24])/CONSTANTS[68];
ALGEBRAIC[25] = CONSTANTS[61]*(STATES[14] - CONSTANTS[53]);
ALGEBRAIC[33] = (ALGEBRAIC[24] - ALGEBRAIC[25])/CONSTANTS[69];
ALGEBRAIC[26] = CONSTANTS[62]*(STATES[15] - CONSTANTS[54]);
ALGEBRAIC[34] = (ALGEBRAIC[25] - ALGEBRAIC[26])/CONSTANTS[70];
ALGEBRAIC[27] = CONSTANTS[63]*(STATES[16] - CONSTANTS[55]);
ALGEBRAIC[35] = (ALGEBRAIC[26] - ALGEBRAIC[27])/CONSTANTS[71];
ALGEBRAIC[28] = CONSTANTS[64]*(STATES[17] - CONSTANTS[56]);
ALGEBRAIC[36] = (ALGEBRAIC[27] - ALGEBRAIC[28])/CONSTANTS[72];
ALGEBRAIC[29] = CONSTANTS[65]*(STATES[18] - CONSTANTS[57]);
ALGEBRAIC[37] = (ALGEBRAIC[28] - ALGEBRAIC[29])/CONSTANTS[73];
ALGEBRAIC[30] = CONSTANTS[66]*(STATES[19] - CONSTANTS[58]);
ALGEBRAIC[38] = (ALGEBRAIC[29] - ALGEBRAIC[30])/CONSTANTS[74];
ALGEBRAIC[31] = CONSTANTS[67]*(STATES[20] - CONSTANTS[59]);
ALGEBRAIC[39] = (ALGEBRAIC[30] - ALGEBRAIC[31])/CONSTANTS[75];
ALGEBRAIC[57] = CONSTANTS[154]*(STATES[38] - CONSTANTS[148]);
ALGEBRAIC[63] = (ALGEBRAIC[57] - ALGEBRAIC[8])/CONSTANTS[160];
ALGEBRAIC[58] = CONSTANTS[155]*(STATES[39] - CONSTANTS[149]);
ALGEBRAIC[64] = (ALGEBRAIC[58] - ALGEBRAIC[57])/CONSTANTS[161];
ALGEBRAIC[59] = CONSTANTS[156]*(STATES[40] - CONSTANTS[150]);
ALGEBRAIC[65] = (ALGEBRAIC[59] - ALGEBRAIC[58])/CONSTANTS[162];
ALGEBRAIC[60] = CONSTANTS[157]*(STATES[41] - CONSTANTS[151]);
ALGEBRAIC[66] = (ALGEBRAIC[60] - ALGEBRAIC[59])/CONSTANTS[163];
ALGEBRAIC[61] = CONSTANTS[158]*(STATES[42] - CONSTANTS[152]);
ALGEBRAIC[67] = (ALGEBRAIC[61] - ALGEBRAIC[60])/CONSTANTS[164];
ALGEBRAIC[62] = CONSTANTS[159]*(STATES[43] - CONSTANTS[153]);
ALGEBRAIC[68] = (ALGEBRAIC[62] - ALGEBRAIC[61])/CONSTANTS[165];
ALGEBRAIC[69] = CONSTANTS[168]*(STATES[44] - CONSTANTS[167]);
ALGEBRAIC[70] = (ALGEBRAIC[69] - ALGEBRAIC[62])/CONSTANTS[169];
ALGEBRAIC[71] = CONSTANTS[172]*(STATES[45] - CONSTANTS[171]);
ALGEBRAIC[72] = (ALGEBRAIC[71] - ALGEBRAIC[62])/CONSTANTS[173];
ALGEBRAIC[83] = (CONDVAR[6]>0.00000 ? (ALGEBRAIC[4] - ALGEBRAIC[14])/CONSTANTS[16] : 0.00000);
ALGEBRAIC[11] = CONSTANTS[21]*(STATES[4] - CONSTANTS[20]);
ALGEBRAIC[84] = (CONDVAR[7]>0.00000 ? (ALGEBRAIC[6] - ALGEBRAIC[11])/CONSTANTS[17] : 0.00000);
ALGEBRAIC[85] = (ALGEBRAIC[11] - ALGEBRAIC[12])/CONSTANTS[22];
ALGEBRAIC[15] = CONSTANTS[30]*(STATES[7] - CONSTANTS[29]);
ALGEBRAIC[86] = (ALGEBRAIC[14] - ALGEBRAIC[15])/CONSTANTS[28];
ALGEBRAIC[16] = CONSTANTS[34]*(STATES[8] - CONSTANTS[33]);
ALGEBRAIC[87] = (ALGEBRAIC[15] - ALGEBRAIC[16])/CONSTANTS[31];
ALGEBRAIC[88] = (ALGEBRAIC[15] - ALGEBRAIC[18])/CONSTANTS[32];
ALGEBRAIC[89] = (ALGEBRAIC[16] - ALGEBRAIC[22])/CONSTANTS[35];
ALGEBRAIC[90] = (ALGEBRAIC[16] - ALGEBRAIC[18])/CONSTANTS[36];
ALGEBRAIC[91] = (ALGEBRAIC[14] - ALGEBRAIC[18])/CONSTANTS[37];
ALGEBRAIC[17] = CONSTANTS[40]*(STATES[9] - CONSTANTS[39]);
ALGEBRAIC[92] = (ALGEBRAIC[14] - ALGEBRAIC[17])/CONSTANTS[38];
ALGEBRAIC[93] = (ALGEBRAIC[17] - ALGEBRAIC[20])/CONSTANTS[41];
ALGEBRAIC[94] = (ALGEBRAIC[17] - ALGEBRAIC[18])/CONSTANTS[42];
ALGEBRAIC[40] = CONSTANTS[78]*(STATES[21] - CONSTANTS[77]);
ALGEBRAIC[95] = (ALGEBRAIC[24] - ALGEBRAIC[40])/CONSTANTS[76];
ALGEBRAIC[41] = CONSTANTS[81]*(STATES[22] - CONSTANTS[80]);
ALGEBRAIC[96] = (ALGEBRAIC[40] - ALGEBRAIC[41])/CONSTANTS[79];
ALGEBRAIC[97] = (ALGEBRAIC[41] - ALGEBRAIC[57])/CONSTANTS[82];
ALGEBRAIC[42] = CONSTANTS[85]*(STATES[23] - CONSTANTS[84]);
ALGEBRAIC[98] = (ALGEBRAIC[25] - ALGEBRAIC[42])/CONSTANTS[83];
ALGEBRAIC[43] = CONSTANTS[88]*(STATES[24] - CONSTANTS[87]);
ALGEBRAIC[99] = (ALGEBRAIC[42] - ALGEBRAIC[43])/CONSTANTS[86];
ALGEBRAIC[100] = (ALGEBRAIC[43] - ALGEBRAIC[58])/CONSTANTS[89];
ALGEBRAIC[44] = CONSTANTS[92]*(STATES[25] - CONSTANTS[91]);
ALGEBRAIC[101] = (ALGEBRAIC[26] - ALGEBRAIC[44])/CONSTANTS[90];
ALGEBRAIC[45] = CONSTANTS[96]*(STATES[26] - CONSTANTS[95]);
ALGEBRAIC[102] = (ALGEBRAIC[27] - ALGEBRAIC[45])/CONSTANTS[94];
ALGEBRAIC[46] = CONSTANTS[100]*(STATES[27] - CONSTANTS[99]);
ALGEBRAIC[103] = (ALGEBRAIC[28] - ALGEBRAIC[46])/CONSTANTS[98];
ALGEBRAIC[47] = CONSTANTS[103]*(STATES[28] - CONSTANTS[102]);
ALGEBRAIC[104] = (ALGEBRAIC[46] - ALGEBRAIC[47])/CONSTANTS[101];
ALGEBRAIC[105] = (ALGEBRAIC[47] - ALGEBRAIC[60])/CONSTANTS[104];
ALGEBRAIC[48] = CONSTANTS[107]*(STATES[29] - CONSTANTS[106]);
ALGEBRAIC[106] = (ALGEBRAIC[29] - ALGEBRAIC[48])/CONSTANTS[105];
ALGEBRAIC[49] = CONSTANTS[110]*(STATES[30] - CONSTANTS[109]);
ALGEBRAIC[107] = (ALGEBRAIC[48] - ALGEBRAIC[49])/CONSTANTS[108];
ALGEBRAIC[108] = (ALGEBRAIC[49] - ALGEBRAIC[61])/CONSTANTS[111];
ALGEBRAIC[54] = CONSTANTS[136]*(STATES[35] - CONSTANTS[135]);
ALGEBRAIC[109] = (ALGEBRAIC[30] - ALGEBRAIC[54])/CONSTANTS[112];
ALGEBRAIC[50] = CONSTANTS[115]*(STATES[31] - CONSTANTS[114]);
ALGEBRAIC[110] = (ALGEBRAIC[44] - ALGEBRAIC[50])/CONSTANTS[113];
ALGEBRAIC[55] = CONSTANTS[140]*(STATES[36] - CONSTANTS[139]);
ALGEBRAIC[111] = (ALGEBRAIC[50] - ALGEBRAIC[55])/CONSTANTS[117];
ALGEBRAIC[51] = CONSTANTS[120]*(STATES[32] - CONSTANTS[119]);
ALGEBRAIC[112] = (ALGEBRAIC[44] - ALGEBRAIC[51])/CONSTANTS[118];
ALGEBRAIC[113] = (ALGEBRAIC[51] - ALGEBRAIC[55])/CONSTANTS[122];
ALGEBRAIC[52] = CONSTANTS[126]*(STATES[33] - CONSTANTS[125]);
ALGEBRAIC[114] = (ALGEBRAIC[44] - ALGEBRAIC[52])/CONSTANTS[123];
ALGEBRAIC[115] = (ALGEBRAIC[45] - ALGEBRAIC[52])/CONSTANTS[124];
ALGEBRAIC[116] = (ALGEBRAIC[52] - ALGEBRAIC[55])/CONSTANTS[128];
ALGEBRAIC[53] = CONSTANTS[131]*(STATES[34] - CONSTANTS[130]);
ALGEBRAIC[117] = (ALGEBRAIC[45] - ALGEBRAIC[53])/CONSTANTS[129];
ALGEBRAIC[118] = (ALGEBRAIC[53] - ALGEBRAIC[55])/CONSTANTS[133];
ALGEBRAIC[119] = (ALGEBRAIC[45] - ALGEBRAIC[54])/CONSTANTS[134];
ALGEBRAIC[120] = (ALGEBRAIC[54] - ALGEBRAIC[55])/CONSTANTS[138];
ALGEBRAIC[56] = CONSTANTS[145]*(STATES[37] - CONSTANTS[144]);
ALGEBRAIC[121] = (ALGEBRAIC[55] - ALGEBRAIC[56])/CONSTANTS[142];
ALGEBRAIC[122] = (ALGEBRAIC[44] - ALGEBRAIC[56])/CONSTANTS[143];
ALGEBRAIC[123] = (ALGEBRAIC[56] - ALGEBRAIC[59])/CONSTANTS[147];
ALGEBRAIC[124] = (ALGEBRAIC[31] - ALGEBRAIC[69])/CONSTANTS[166];
ALGEBRAIC[125] = (ALGEBRAIC[31] - ALGEBRAIC[71])/CONSTANTS[170];
}
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;
SI[36] = 1.0;
SI[37] = 1.0;
SI[38] = 1.0;
SI[39] = 1.0;
SI[40] = 1.0;
SI[41] = 1.0;
SI[42] = 1.0;
SI[43] = 1.0;
SI[44] = 1.0;
SI[45] = 1.0;
}
void
computeRoots(double VOI, double* CONSTANTS, double* RATES, double* OLDRATES, double* STATES,
double* OLDSTATES, double* ALGEBRAIC, double* CONDVARS)
{
CONDVAR[0] = VOI - 100.000;
CONDVAR[1] = VOI - 101.000;
CONDVAR[2] = ALGEBRAIC[1] - 0.400000;
CONDVAR[3] = ALGEBRAIC[1] - 0.600000;
CONDVAR[4] = ALGEBRAIC[1] - 0.400000;
CONDVAR[5] = ALGEBRAIC[1] - 0.600000;
CONDVAR[6] = ALGEBRAIC[4] - ALGEBRAIC[14];
CONDVAR[7] = ALGEBRAIC[6] - ALGEBRAIC[11];
CONDVAR[8] = ALGEBRAIC[8] - ALGEBRAIC[6];
CONDVAR[9] = ALGEBRAIC[7] - ALGEBRAIC[4];
}
