- Author:
- Shelley Fong <s.fong@auckland.ac.nz>
- Date:
- 2021-10-19 16:16:29+13:00
- Desc:
- Renaming folders
- Permanent Source URI:
- https://models.cellml.org/workspace/705/rawfile/f0230b6eefe4dc73f4f21dc53ea460148a427603/python/FCU_adenylylCyclase_Exported_old.py
# Size of variable arrays:
sizeAlgebraic = 132
sizeStates = 55
sizeConstants = 121
from math import *
from numpy import *
def createLegends():
legend_states = [""] * sizeStates
legend_rates = [""] * sizeStates
legend_algebraic = [""] * sizeAlgebraic
legend_voi = ""
legend_constants = [""] * sizeConstants
legend_voi = "time in component environment (second)"
legend_algebraic[2] = "q_L_B1_init in component environment (fmol)"
legend_algebraic[0] = "q_L_M2_init in component environment (fmol)"
legend_algebraic[4] = "q_ATP in component environment (fmol)"
legend_algebraic[6] = "q_cAMP in component environment (fmol)"
legend_algebraic[8] = "q_AC in component environment (fmol)"
legend_algebraic[10] = "q_AC_ATP in component environment (fmol)"
legend_algebraic[12] = "q_aGs_GTP_AC in component environment (fmol)"
legend_algebraic[14] = "q_aGs_GTP_AC_ATP in component environment (fmol)"
legend_algebraic[16] = "q_FSK_AC in component environment (fmol)"
legend_algebraic[18] = "q_FSK_AC_ATP in component environment (fmol)"
legend_algebraic[20] = "q_PDE in component environment (fmol)"
legend_algebraic[21] = "q_PDE_cAMP in component environment (fmol)"
legend_algebraic[22] = "q_five_AMP in component environment (fmol)"
legend_algebraic[23] = "q_IBMX in component environment (fmol)"
legend_algebraic[24] = "q_PDEinh in component environment (fmol)"
legend_algebraic[25] = "q_aGs_GTP in component environment (fmol)"
legend_algebraic[27] = "q_FSK in component environment (fmol)"
legend_algebraic[29] = "q_aGi_GTP in component environment (fmol)"
legend_algebraic[32] = "q_ACinh in component environment (fmol)"
legend_algebraic[26] = "q_L_B1 in component environment (fmol)"
legend_algebraic[28] = "q_R_B1 in component environment (fmol)"
legend_algebraic[30] = "q_Gs in component environment (fmol)"
legend_algebraic[33] = "q_LR_B1 in component environment (fmol)"
legend_algebraic[37] = "q_R_B1Gs in component environment (fmol)"
legend_algebraic[40] = "q_LR_B1Gs in component environment (fmol)"
legend_algebraic[31] = "q_L_M2 in component environment (fmol)"
legend_algebraic[34] = "q_R_M2 in component environment (fmol)"
legend_algebraic[36] = "q_Gi in component environment (fmol)"
legend_algebraic[39] = "q_LR_M2 in component environment (fmol)"
legend_algebraic[42] = "q_R_M2Gi in component environment (fmol)"
legend_algebraic[48] = "q_LR_M2Gi in component environment (fmol)"
legend_algebraic[43] = "q_B1d in component environment (fmol)"
legend_algebraic[47] = "q_BARK in component environment (fmol)"
legend_algebraic[52] = "q_LR_B1_BARK in component environment (fmol)"
legend_algebraic[61] = "q_LR_B1Gs_BARK in component environment (fmol)"
legend_algebraic[1] = "q_B1p in component environment (fmol)"
legend_algebraic[3] = "q_B1tot in component environment (fmol)"
legend_algebraic[5] = "q_PKACI in component environment (fmol)"
legend_algebraic[7] = "q_PKACI_B1p in component environment (fmol)"
legend_algebraic[44] = "q_beta_gamma_Gs in component environment (fmol)"
legend_algebraic[51] = "q_aGs_GDP in component environment (fmol)"
legend_algebraic[53] = "q_beta_gamma_Gi in component environment (fmol)"
legend_algebraic[63] = "q_aGi_GDP in component environment (fmol)"
legend_states[0] = "q_ATP in component cAMP (fmol)"
legend_states[1] = "q_cAMP in component cAMP (fmol)"
legend_states[2] = "q_AC in component cAMP (fmol)"
legend_states[3] = "q_AC_ATP in component cAMP (fmol)"
legend_states[4] = "q_aGs_GTP_AC in component cAMP (fmol)"
legend_states[5] = "q_aGs_GTP_AC_ATP in component cAMP (fmol)"
legend_states[6] = "q_FSK_AC in component cAMP (fmol)"
legend_states[7] = "q_FSK_AC_ATP in component cAMP (fmol)"
legend_states[8] = "q_PDE in component cAMP (fmol)"
legend_states[9] = "q_PDE_cAMP in component cAMP (fmol)"
legend_states[10] = "q_five_AMP in component cAMP (fmol)"
legend_states[11] = "q_IBMX in component cAMP (fmol)"
legend_states[12] = "q_PDEinh in component cAMP (fmol)"
legend_states[13] = "q_aGs_GTP in component cAMP (fmol)"
legend_states[14] = "q_FSK in component cAMP (fmol)"
legend_states[15] = "q_aGi_GTP in component cAMP (fmol)"
legend_states[16] = "q_ACinh in component cAMP (fmol)"
legend_states[17] = "q_L_B1 in component LRGbinding_B1AR (fmol)"
legend_states[18] = "q_R_B1 in component LRGbinding_B1AR (fmol)"
legend_states[19] = "q_Gs in component LRGbinding_B1AR (fmol)"
legend_states[20] = "q_LR_B1 in component LRGbinding_B1AR (fmol)"
legend_states[21] = "q_R_B1Gs in component LRGbinding_B1AR (fmol)"
legend_states[22] = "q_LR_B1Gs in component LRGbinding_B1AR (fmol)"
legend_states[23] = "q_L_M2 in component LRGbinding_M2 (fmol)"
legend_states[24] = "q_R_M2 in component LRGbinding_M2 (fmol)"
legend_states[25] = "q_Gi in component LRGbinding_M2 (fmol)"
legend_states[26] = "q_LR_M2 in component LRGbinding_M2 (fmol)"
legend_states[27] = "q_R_M2Gi in component LRGbinding_M2 (fmol)"
legend_states[28] = "q_LR_M2Gi in component LRGbinding_M2 (fmol)"
legend_states[29] = "q_LR_B1 in component B1AR (fmol)"
legend_states[30] = "q_LR_B1Gs in component B1AR (fmol)"
legend_states[31] = "q_B1d in component B1AR (fmol)"
legend_states[32] = "q_BARK in component B1AR (fmol)"
legend_states[33] = "q_LR_B1_BARK in component B1AR (fmol)"
legend_states[34] = "q_LR_B1Gs_BARK in component B1AR (fmol)"
legend_states[35] = "q_B1p in component B1AR (fmol)"
legend_states[36] = "q_B1tot in component B1AR (fmol)"
legend_states[37] = "q_PKACI in component B1AR (fmol)"
legend_states[38] = "q_PKACI_B1p in component B1AR (fmol)"
legend_states[39] = "q_R_B1 in component GsProtein (fmol)"
legend_states[40] = "q_Gs in component GsProtein (fmol)"
legend_states[41] = "q_R_B1Gs in component GsProtein (fmol)"
legend_states[42] = "q_LR_B1 in component GsProtein (fmol)"
legend_states[43] = "q_LR_B1Gs in component GsProtein (fmol)"
legend_states[44] = "q_aGs_GTP in component GsProtein (fmol)"
legend_states[45] = "q_beta_gamma_Gs in component GsProtein (fmol)"
legend_states[46] = "q_aGs_GDP in component GsProtein (fmol)"
legend_states[47] = "q_R_M2 in component GiProtein (fmol)"
legend_states[48] = "q_Gi in component GiProtein (fmol)"
legend_states[49] = "q_R_M2Gi in component GiProtein (fmol)"
legend_states[50] = "q_LR_M2 in component GiProtein (fmol)"
legend_states[51] = "q_LR_M2Gi in component GiProtein (fmol)"
legend_states[52] = "q_aGi_GTP in component GiProtein (fmol)"
legend_states[53] = "q_beta_gamma_Gi in component GiProtein (fmol)"
legend_states[54] = "q_aGi_GDP in component GiProtein (fmol)"
legend_algebraic[118] = "v1a in component cAMP (fmol_per_sec)"
legend_algebraic[120] = "v1b in component cAMP (fmol_per_sec)"
legend_algebraic[122] = "v2a in component cAMP (fmol_per_sec)"
legend_algebraic[123] = "v2b in component cAMP (fmol_per_sec)"
legend_algebraic[124] = "v3a in component cAMP (fmol_per_sec)"
legend_algebraic[125] = "v3b in component cAMP (fmol_per_sec)"
legend_algebraic[126] = "v4a in component cAMP (fmol_per_sec)"
legend_algebraic[128] = "v4b in component cAMP (fmol_per_sec)"
legend_algebraic[130] = "v5 in component cAMP (fmol_per_sec)"
legend_algebraic[127] = "v6 in component cAMP (fmol_per_sec)"
legend_algebraic[129] = "v7 in component cAMP (fmol_per_sec)"
legend_algebraic[131] = "vGiAC in component cAMP (fmol_per_sec)"
legend_algebraic[35] = "mu_ATP in component cAMP (J_per_mol)"
legend_algebraic[41] = "mu_AC in component cAMP (J_per_mol)"
legend_algebraic[38] = "mu_cAMP in component cAMP (J_per_mol)"
legend_algebraic[45] = "mu_AC_ATP in component cAMP (J_per_mol)"
legend_algebraic[105] = "mu_FSK in component cAMP (J_per_mol)"
legend_algebraic[58] = "mu_FSK_AC in component cAMP (J_per_mol)"
legend_algebraic[64] = "mu_FSK_AC_ATP in component cAMP (J_per_mol)"
legend_algebraic[100] = "mu_aGs_GTP in component cAMP (J_per_mol)"
legend_algebraic[49] = "mu_aGs_GTP_AC in component cAMP (J_per_mol)"
legend_algebraic[54] = "mu_aGs_GTP_AC_ATP in component cAMP (J_per_mol)"
legend_algebraic[70] = "mu_PDE in component cAMP (J_per_mol)"
legend_algebraic[94] = "mu_PDEinh in component cAMP (J_per_mol)"
legend_algebraic[76] = "mu_PDE_cAMP in component cAMP (J_per_mol)"
legend_algebraic[88] = "mu_IBMX in component cAMP (J_per_mol)"
legend_algebraic[82] = "mu_five_AMP in component cAMP (J_per_mol)"
legend_algebraic[110] = "mu_aGi_GTP in component cAMP (J_per_mol)"
legend_algebraic[114] = "mu_ACinh in component cAMP (J_per_mol)"
legend_algebraic[46] = "mu_L_B1 in component LRGbinding_B1AR (J_per_mol)"
legend_algebraic[50] = "mu_R_B1 in component LRGbinding_B1AR (J_per_mol)"
legend_algebraic[55] = "mu_Gs in component LRGbinding_B1AR (J_per_mol)"
legend_algebraic[59] = "mu_LR_B1 in component LRGbinding_B1AR (J_per_mol)"
legend_algebraic[65] = "mu_R_B1Gs in component LRGbinding_B1AR (J_per_mol)"
legend_algebraic[71] = "mu_LR_B1Gs in component LRGbinding_B1AR (J_per_mol)"
legend_algebraic[77] = "vsig1_B1 in component LRGbinding_B1AR (fmol_per_sec)"
legend_algebraic[83] = "vsig2_B1 in component LRGbinding_B1AR (fmol_per_sec)"
legend_algebraic[89] = "vsig3_B1 in component LRGbinding_B1AR (fmol_per_sec)"
legend_algebraic[95] = "vsig4_B1 in component LRGbinding_B1AR (fmol_per_sec)"
legend_algebraic[56] = "mu_L_M2 in component LRGbinding_M2 (J_per_mol)"
legend_algebraic[60] = "mu_R_M2 in component LRGbinding_M2 (J_per_mol)"
legend_algebraic[66] = "mu_Gi in component LRGbinding_M2 (J_per_mol)"
legend_algebraic[72] = "mu_LR_M2 in component LRGbinding_M2 (J_per_mol)"
legend_algebraic[78] = "mu_R_M2Gi in component LRGbinding_M2 (J_per_mol)"
legend_algebraic[84] = "mu_LR_M2Gi in component LRGbinding_M2 (J_per_mol)"
legend_algebraic[90] = "vsig1_M2 in component LRGbinding_M2 (fmol_per_sec)"
legend_algebraic[96] = "vsig2_M2 in component LRGbinding_M2 (fmol_per_sec)"
legend_algebraic[101] = "vsig3_M2 in component LRGbinding_M2 (fmol_per_sec)"
legend_algebraic[106] = "vsig4_M2 in component LRGbinding_M2 (fmol_per_sec)"
legend_algebraic[102] = "vB11 in component B1AR (fmol_per_sec)"
legend_algebraic[107] = "vB12 in component B1AR (fmol_per_sec)"
legend_algebraic[111] = "vB21 in component B1AR (fmol_per_sec)"
legend_algebraic[115] = "vB22 in component B1AR (fmol_per_sec)"
legend_algebraic[17] = "vP1 in component B1AR (fmol_per_sec)"
legend_algebraic[19] = "vP2 in component B1AR (fmol_per_sec)"
legend_algebraic[67] = "mu_LR_B1 in component B1AR (J_per_mol)"
legend_algebraic[73] = "mu_LR_B1Gs in component B1AR (J_per_mol)"
legend_algebraic[79] = "mu_B1d in component B1AR (J_per_mol)"
legend_algebraic[85] = "mu_BARK in component B1AR (J_per_mol)"
legend_algebraic[91] = "mu_LR_B1_BARK in component B1AR (J_per_mol)"
legend_algebraic[97] = "mu_LR_B1Gs_BARK in component B1AR (J_per_mol)"
legend_algebraic[9] = "mu_B1p in component B1AR (J_per_mol)"
legend_algebraic[11] = "mu_B1tot in component B1AR (J_per_mol)"
legend_algebraic[13] = "mu_PKACI in component B1AR (J_per_mol)"
legend_algebraic[15] = "mu_PKACI_B1p in component B1AR (J_per_mol)"
legend_algebraic[103] = "vact1_Gs in component GsProtein (fmol_per_sec)"
legend_algebraic[108] = "vact2_Gs in component GsProtein (fmol_per_sec)"
legend_algebraic[112] = "vhyd_Gs in component GsProtein (fmol_per_sec)"
legend_algebraic[116] = "vreassoc_Gs in component GsProtein (fmol_per_sec)"
legend_algebraic[57] = "mu_R_B1 in component GsProtein (J_per_mol)"
legend_algebraic[62] = "mu_Gs in component GsProtein (J_per_mol)"
legend_algebraic[68] = "mu_R_B1Gs in component GsProtein (J_per_mol)"
legend_algebraic[74] = "mu_LR_B1 in component GsProtein (J_per_mol)"
legend_algebraic[80] = "mu_LR_B1Gs in component GsProtein (J_per_mol)"
legend_algebraic[86] = "mu_aGs_GTP in component GsProtein (J_per_mol)"
legend_algebraic[92] = "mu_beta_gamma_Gs in component GsProtein (J_per_mol)"
legend_algebraic[98] = "mu_aGs_GDP in component GsProtein (J_per_mol)"
legend_algebraic[113] = "vact1_Gi in component GiProtein (fmol_per_sec)"
legend_algebraic[117] = "vact2_Gi in component GiProtein (fmol_per_sec)"
legend_algebraic[119] = "vhyd_Gi in component GiProtein (fmol_per_sec)"
legend_algebraic[121] = "vreassoc_Gi in component GiProtein (fmol_per_sec)"
legend_algebraic[69] = "mu_R_M2 in component GiProtein (J_per_mol)"
legend_algebraic[75] = "mu_Gi in component GiProtein (J_per_mol)"
legend_algebraic[81] = "mu_R_M2Gi in component GiProtein (J_per_mol)"
legend_algebraic[87] = "mu_LR_M2 in component GiProtein (J_per_mol)"
legend_algebraic[93] = "mu_LR_M2Gi in component GiProtein (J_per_mol)"
legend_algebraic[99] = "mu_aGi_GTP in component GiProtein (J_per_mol)"
legend_algebraic[104] = "mu_beta_gamma_Gi in component GiProtein (J_per_mol)"
legend_algebraic[109] = "mu_aGi_GDP in component GiProtein (J_per_mol)"
legend_rates[0] = "d/dt q_ATP in component cAMP (fmol)"
legend_rates[2] = "d/dt q_AC in component cAMP (fmol)"
legend_rates[3] = "d/dt q_AC_ATP in component cAMP (fmol)"
legend_rates[1] = "d/dt q_cAMP in component cAMP (fmol)"
legend_rates[14] = "d/dt q_FSK in component cAMP (fmol)"
legend_rates[6] = "d/dt q_FSK_AC in component cAMP (fmol)"
legend_rates[7] = "d/dt q_FSK_AC_ATP in component cAMP (fmol)"
legend_rates[13] = "d/dt q_aGs_GTP in component cAMP (fmol)"
legend_rates[4] = "d/dt q_aGs_GTP_AC in component cAMP (fmol)"
legend_rates[5] = "d/dt q_aGs_GTP_AC_ATP in component cAMP (fmol)"
legend_rates[9] = "d/dt q_PDE_cAMP in component cAMP (fmol)"
legend_rates[8] = "d/dt q_PDE in component cAMP (fmol)"
legend_rates[11] = "d/dt q_IBMX in component cAMP (fmol)"
legend_rates[12] = "d/dt q_PDEinh in component cAMP (fmol)"
legend_rates[10] = "d/dt q_five_AMP in component cAMP (fmol)"
legend_rates[15] = "d/dt q_aGi_GTP in component cAMP (fmol)"
legend_rates[16] = "d/dt q_ACinh in component cAMP (fmol)"
legend_rates[17] = "d/dt q_L_B1 in component LRGbinding_B1AR (fmol)"
legend_rates[18] = "d/dt q_R_B1 in component LRGbinding_B1AR (fmol)"
legend_rates[19] = "d/dt q_Gs in component LRGbinding_B1AR (fmol)"
legend_rates[20] = "d/dt q_LR_B1 in component LRGbinding_B1AR (fmol)"
legend_rates[21] = "d/dt q_R_B1Gs in component LRGbinding_B1AR (fmol)"
legend_rates[22] = "d/dt q_LR_B1Gs in component LRGbinding_B1AR (fmol)"
legend_rates[23] = "d/dt q_L_M2 in component LRGbinding_M2 (fmol)"
legend_rates[24] = "d/dt q_R_M2 in component LRGbinding_M2 (fmol)"
legend_rates[25] = "d/dt q_Gi in component LRGbinding_M2 (fmol)"
legend_rates[26] = "d/dt q_LR_M2 in component LRGbinding_M2 (fmol)"
legend_rates[27] = "d/dt q_R_M2Gi in component LRGbinding_M2 (fmol)"
legend_rates[28] = "d/dt q_LR_M2Gi in component LRGbinding_M2 (fmol)"
legend_rates[29] = "d/dt q_LR_B1 in component B1AR (fmol)"
legend_rates[31] = "d/dt q_B1d in component B1AR (fmol)"
legend_rates[32] = "d/dt q_BARK in component B1AR (fmol)"
legend_rates[33] = "d/dt q_LR_B1_BARK in component B1AR (fmol)"
legend_rates[30] = "d/dt q_LR_B1Gs in component B1AR (fmol)"
legend_rates[34] = "d/dt q_LR_B1Gs_BARK in component B1AR (fmol)"
legend_rates[35] = "d/dt q_B1p in component B1AR (fmol)"
legend_rates[36] = "d/dt q_B1tot in component B1AR (fmol)"
legend_rates[37] = "d/dt q_PKACI in component B1AR (fmol)"
legend_rates[38] = "d/dt q_PKACI_B1p in component B1AR (fmol)"
legend_rates[39] = "d/dt q_R_B1 in component GsProtein (fmol)"
legend_rates[41] = "d/dt q_R_B1Gs in component GsProtein (fmol)"
legend_rates[40] = "d/dt q_Gs in component GsProtein (fmol)"
legend_rates[42] = "d/dt q_LR_B1 in component GsProtein (fmol)"
legend_rates[43] = "d/dt q_LR_B1Gs in component GsProtein (fmol)"
legend_rates[44] = "d/dt q_aGs_GTP in component GsProtein (fmol)"
legend_rates[45] = "d/dt q_beta_gamma_Gs in component GsProtein (fmol)"
legend_rates[46] = "d/dt q_aGs_GDP in component GsProtein (fmol)"
legend_rates[47] = "d/dt q_R_M2 in component GiProtein (fmol)"
legend_rates[49] = "d/dt q_R_M2Gi in component GiProtein (fmol)"
legend_rates[48] = "d/dt q_Gi in component GiProtein (fmol)"
legend_rates[50] = "d/dt q_LR_M2 in component GiProtein (fmol)"
legend_rates[51] = "d/dt q_LR_M2Gi in component GiProtein (fmol)"
legend_rates[52] = "d/dt q_aGi_GTP in component GiProtein (fmol)"
legend_rates[53] = "d/dt q_beta_gamma_Gi in component GiProtein (fmol)"
legend_rates[54] = "d/dt q_aGi_GDP in component GiProtein (fmol)"
return (legend_states, legend_algebraic, legend_voi, legend_constants)
def initConsts():
constants = [0.0] * sizeConstants; states = [0.0] * sizeStates;
constants[0] = 617247
constants[1] = 0.000128875
constants[2] = 325858
constants[3] = 0.0879301
constants[4] = 8.57316e+07
constants[5] = 9.96879e-18
constants[6] = 107140
constants[7] = 0.412077
constants[8] = 391.191
constants[9] = 54621.9
constants[10] = 1.43707e+06
constants[11] = 3357.07
constants[12] = 143475
constants[13] = 52.5633
constants[14] = 77.1867
constants[15] = 9827.69
constants[16] = 2.93719e+09
constants[17] = 262659
constants[18] = 280724
constants[19] = 2.08729e+06
constants[20] = 6.45993e-05
constants[21] = 29363.3
constants[22] = 6.45993e-05
constants[23] = 29363.3
constants[24] = 0.0240723
constants[25] = 0.00231579
constants[26] = 0.0073331
constants[27] = 9.10152e-05
constants[28] = 0.0344808
constants[29] = 443.387
constants[30] = 16.6519
constants[31] = 0.00519263
constants[32] = 0.100013
constants[33] = 2927.33
constants[34] = 0.00048728
constants[35] = 0.00048728
constants[36] = 2.61293
constants[37] = 45.1131
constants[38] = 0.5322
constants[39] = 2.81011
constants[40] = 0.0202285
constants[41] = 0.291608
constants[42] = 16.1866
constants[43] = 0.352723
constants[44] = 0.00048728
constants[45] = 0.00444855
constants[46] = 74.311
constants[47] = 0.0148023
constants[48] = 5.11474e-06
constants[49] = 0.00963373
constants[50] = 8.65927
constants[51] = 0.356212
constants[52] = 0.407286
constants[53] = 0.00361468
constants[54] = 265.938
constants[55] = 26.7494
constants[56] = 265.938
constants[57] = 2.00506
constants[58] = 0.000245905
constants[59] = 0.000290027
constants[60] = 1.73472
constants[61] = 0.00131755
constants[62] = 0.0384141
constants[63] = 3.19126e-10
constants[64] = 9.01813e-05
constants[65] = 0.990003
constants[66] = 0.990003
constants[67] = 0.0336751
constants[68] = 0.0336751
constants[69] = 0.0390101
constants[70] = 1.2076e-06
constants[71] = 0.0290698
constants[72] = 0.0290698
constants[73] = 0.00206275
constants[74] = 0.00701566
constants[75] = 34.4
constants[76] = 189.99905570
constants[77] = 0.0006143333
constants[78] = 0.0314042742
constants[79] = 0.000614333
constants[80] = 0.0000126667
constants[81] = 0.0000126667
constants[82] = 0.0000126667
constants[83] = 0.0009519
constants[84] = 0.00031730
constants[85] = 0.00031730
constants[86] = 0.0007171258
constants[87] = 1e-13
constants[88] = 0.0007171258
constants[89] = 3.80E-06
constants[90] = 1e-18
constants[91] = 4.81E-04
constants[92] = 1e-16
constants[93] = 0.000219725
constants[94] = 0.145305
constants[95] = 1.697e-06
constants[96] = 0.0000508778
constants[97] = 0.0000508778
constants[98] = 0.00072
constants[99] = 0.00836
constants[100] = 0
constants[101] = 1e-16
constants[102] = 1e-16
constants[103] = 1e-13
constants[104] = 0.0228
constants[105] = 0.0000508778
constants[106] = 0.0000508778
constants[107] = 0
constants[108] = 0.0000508778
constants[109] = 0.000221209
constants[110] = 0.008778
constants[111] = 0.00097622
constants[112] = 2.44948e-05
constants[113] = 1e-16
constants[114] = 1e-16
states[0] = 1e-16
states[1] = 1e-16
states[2] = 1e-16
states[3] = 1e-16
states[4] = 1e-16
states[5] = 1e-16
states[6] = 1e-16
states[7] = 1e-16
states[8] = 1e-16
states[9] = 1e-16
states[10] = 1e-16
states[11] = 1e-16
states[12] = 1e-16
states[13] = 1e-16
states[14] = 1e-16
states[15] = 1e-16
states[16] = 1e-16
states[17] = 1e-16
states[18] = 1e-16
states[19] = 1e-16
states[20] = 1e-16
states[21] = 1e-16
states[22] = 1e-16
states[23] = 1e-16
states[24] = 1e-16
states[25] = 1e-16
states[26] = 1e-16
states[27] = 1e-16
states[28] = 1e-16
states[29] = 1e-16
states[30] = 1e-16
states[31] = 1e-16
states[32] = 1e-16
states[33] = 1e-16
states[34] = 1e-16
states[35] = 1e-16
states[36] = 1e-16
states[37] = 1e-16
states[38] = 1e-16
states[39] = 1e-16
states[40] = 1e-16
states[41] = 1e-16
states[42] = 1e-16
states[43] = 1e-16
states[44] = 1e-16
states[45] = 1e-16
states[46] = 1e-16
states[47] = 1e-16
states[48] = 1e-16
states[49] = 1e-16
states[50] = 1e-16
states[51] = 1e-16
states[52] = 1e-16
states[53] = 1e-16
states[54] = 1e-16
constants[115] = 8.31
constants[116] = 310
constants[117] = 96485
constants[118] = 38.0
constants[119] = 34.4
constants[120] = 34.4
return (states, constants)
def computeRates(voi, states, constants):
rates = [0.0] * sizeStates; algebraic = [0.0] * sizeAlgebraic
algebraic[1] = constants[107]+states[35]
algebraic[9] = constants[115]*constants[116]*log(constants[67]*algebraic[1])
algebraic[5] = constants[109]+states[37]
algebraic[13] = constants[115]*constants[116]*log(constants[69]*algebraic[5])
algebraic[7] = constants[110]+states[38]
algebraic[15] = constants[115]*constants[116]*log(constants[70]*algebraic[7])
algebraic[17] = constants[24]*(exp((algebraic[9]+algebraic[13])/(constants[115]*constants[116]))-exp(algebraic[15]/(constants[115]*constants[116])))
rates[35] = -algebraic[17]
algebraic[3] = constants[108]+states[36]
algebraic[11] = constants[115]*constants[116]*log(constants[68]*algebraic[3])
algebraic[19] = constants[25]*(exp(algebraic[15]/(constants[115]*constants[116]))-exp((algebraic[13]+algebraic[11])/(constants[115]*constants[116])))
rates[36] = algebraic[19]
rates[37] = algebraic[19]-algebraic[17]
rates[38] = algebraic[17]-algebraic[19]
algebraic[28] = constants[93]+states[18]+states[39]
algebraic[50] = constants[115]*constants[116]*log(constants[52]*algebraic[28])
algebraic[30] = constants[94]+states[19]+states[40]
algebraic[55] = constants[115]*constants[116]*log(constants[53]*algebraic[30])
algebraic[37] = constants[96]+states[21]+states[41]
algebraic[65] = constants[115]*constants[116]*log(constants[55]*algebraic[37])
algebraic[77] = constants[12]*exp((algebraic[50]+algebraic[55])/(constants[115]*constants[116]))-exp(algebraic[65]/(constants[115]*constants[116]))
algebraic[2] = custom_piecewise([less(voi , 0.100000), 100*0.100000 , True, 1.00000e-16])
algebraic[26] = algebraic[2]+states[17]
algebraic[46] = constants[115]*constants[116]*log(constants[51]*algebraic[26])
algebraic[40] = constants[97]+states[22]
algebraic[71] = constants[115]*constants[116]*log(constants[56]*algebraic[40])
algebraic[83] = constants[13]*exp((algebraic[65]+algebraic[46])/(constants[115]*constants[116]))-exp(algebraic[71]/(constants[115]*constants[116]))
rates[21] = algebraic[77]-algebraic[83]
algebraic[33] = constants[95]+states[20]+states[29]+states[42]
algebraic[59] = constants[115]*constants[116]*log(constants[54]*algebraic[33])
algebraic[89] = constants[14]*exp((algebraic[59]+algebraic[55])/(constants[115]*constants[116]))-exp(algebraic[71]/(constants[115]*constants[116]))
rates[19] = -algebraic[77]-algebraic[89]
rates[22] = algebraic[83]+algebraic[89]
algebraic[95] = constants[15]*exp((algebraic[50]+algebraic[46])/(constants[115]*constants[116]))-exp(algebraic[59]/(constants[115]*constants[116]))
rates[17] = -algebraic[83]-algebraic[95]
rates[18] = -algebraic[77]-algebraic[95]
rates[20] = -algebraic[89]+algebraic[95]
algebraic[34] = constants[98]+states[24]+states[47]
algebraic[60] = constants[115]*constants[116]*log(constants[58]*algebraic[34])
algebraic[36] = constants[99]+states[25]+states[48]
algebraic[66] = constants[115]*constants[116]*log(constants[59]*algebraic[36])
algebraic[42] = constants[101]+states[27]+states[49]
algebraic[78] = constants[115]*constants[116]*log(constants[61]*algebraic[42])
algebraic[90] = constants[16]*exp((algebraic[60]+algebraic[66])/(constants[115]*constants[116]))-exp(algebraic[78]/(constants[115]*constants[116]))
algebraic[0] = custom_piecewise([less(voi , 0.500000) & greater(voi , 0.400000), 100*0.100000 , True, 1.00000e-16])
algebraic[31] = algebraic[0]+states[23]
algebraic[56] = constants[115]*constants[116]*log(constants[57]*algebraic[31])
algebraic[48] = constants[102]+states[28]+states[51]
algebraic[84] = constants[115]*constants[116]*log(constants[62]*algebraic[48])
algebraic[96] = constants[17]*exp((algebraic[78]+algebraic[56])/(constants[115]*constants[116]))-exp(algebraic[84]/(constants[115]*constants[116]))
rates[27] = algebraic[90]-algebraic[96]
algebraic[39] = constants[100]+states[26]+states[50]
algebraic[72] = constants[115]*constants[116]*log(constants[60]*algebraic[39])
algebraic[101] = constants[18]*exp((algebraic[72]+algebraic[66])/(constants[115]*constants[116]))-exp(algebraic[84]/(constants[115]*constants[116]))
rates[25] = -algebraic[90]-algebraic[101]
rates[28] = algebraic[96]+algebraic[101]
algebraic[67] = constants[115]*constants[116]*log(constants[54]*algebraic[33])
algebraic[47] = constants[104]+states[32]
algebraic[85] = constants[115]*constants[116]*log(constants[64]*algebraic[47])
algebraic[52] = constants[105]+states[33]
algebraic[91] = constants[115]*constants[116]*log(constants[65]*algebraic[52])
algebraic[102] = constants[20]*(exp((algebraic[67]+algebraic[85])/(constants[115]*constants[116]))-exp(algebraic[91]/(constants[115]*constants[116])))
rates[29] = -algebraic[102]
algebraic[57] = constants[115]*constants[116]*log(constants[52]*algebraic[28])
algebraic[68] = constants[115]*constants[116]*log(constants[55]*algebraic[37])
algebraic[25] = constants[83]+states[13]+states[44]
algebraic[86] = constants[115]*constants[116]*log(constants[47]*algebraic[25])
algebraic[44] = constants[111]+states[45]
algebraic[92] = constants[115]*constants[116]*log(constants[71]*algebraic[44])
algebraic[103] = constants[26]*(exp(algebraic[68]/(constants[115]*constants[116]))-exp((algebraic[86]+algebraic[92]+algebraic[57])/(constants[115]*constants[116])))
rates[39] = algebraic[103]
rates[41] = -algebraic[103]
algebraic[106] = constants[19]*exp((algebraic[60]+algebraic[56])/(constants[115]*constants[116]))-exp(algebraic[72]/(constants[115]*constants[116]))
rates[23] = -algebraic[96]-algebraic[106]
rates[24] = -algebraic[90]-algebraic[106]
rates[26] = -algebraic[101]+algebraic[106]
algebraic[43] = constants[103]+states[31]
algebraic[79] = constants[115]*constants[116]*log(constants[63]*algebraic[43])
algebraic[107] = constants[21]*(exp(algebraic[91]/(constants[115]*constants[116]))-exp((algebraic[85]+algebraic[79])/(constants[115]*constants[116])))
rates[33] = algebraic[102]-algebraic[107]
algebraic[74] = constants[115]*constants[116]*log(constants[54]*algebraic[33])
algebraic[80] = constants[115]*constants[116]*log(constants[56]*algebraic[40])
algebraic[108] = constants[27]*(exp(algebraic[80]/(constants[115]*constants[116]))-exp((algebraic[86]+algebraic[92]+algebraic[74])/(constants[115]*constants[116])))
rates[42] = algebraic[108]
rates[43] = -algebraic[108]
algebraic[73] = constants[115]*constants[116]*log(constants[56]*algebraic[40])
algebraic[61] = constants[106]+states[34]
algebraic[97] = constants[115]*constants[116]*log(constants[66]*algebraic[61])
algebraic[111] = constants[22]*(exp((algebraic[73]+algebraic[85])/(constants[115]*constants[116]))-exp(algebraic[97]/(constants[115]*constants[116])))
rates[30] = -algebraic[111]
algebraic[51] = constants[112]+states[46]
algebraic[98] = constants[115]*constants[116]*log(constants[72]*algebraic[51])
algebraic[112] = constants[28]*(exp(algebraic[86]/(constants[115]*constants[116]))-exp(algebraic[98]/(constants[115]*constants[116])))
rates[44] = (algebraic[103]+algebraic[108])-algebraic[112]
algebraic[69] = constants[115]*constants[116]*log(constants[58]*algebraic[34])
algebraic[81] = constants[115]*constants[116]*log(constants[61]*algebraic[42])
algebraic[29] = constants[91]+states[15]+states[52]
algebraic[99] = constants[115]*constants[116]*log(constants[49]*algebraic[29])
algebraic[53] = constants[113]+states[53]
algebraic[104] = constants[115]*constants[116]*log(constants[73]*algebraic[53])
algebraic[113] = constants[30]*(exp(algebraic[81]/(constants[115]*constants[116]))-exp((algebraic[99]+algebraic[104]+algebraic[69])/(constants[115]*constants[116])))
rates[47] = algebraic[113]
rates[49] = -algebraic[113]
algebraic[115] = constants[23]*(exp(algebraic[97]/(constants[115]*constants[116]))-exp((algebraic[85]+algebraic[79])/(constants[115]*constants[116])))
rates[31] = algebraic[107]+algebraic[115]
rates[32] = ((algebraic[107]+algebraic[115])-algebraic[102])-algebraic[111]
rates[34] = algebraic[111]-algebraic[115]
algebraic[62] = constants[115]*constants[116]*log(constants[53]*algebraic[30])
algebraic[116] = constants[29]*(exp((algebraic[98]+algebraic[92])/(constants[115]*constants[116]))-exp(algebraic[62]/(constants[115]*constants[116])))
rates[40] = algebraic[116]
rates[45] = (algebraic[103]+algebraic[108])-algebraic[116]
rates[46] = algebraic[112]-algebraic[116]
algebraic[87] = constants[115]*constants[116]*log(constants[60]*algebraic[39])
algebraic[93] = constants[115]*constants[116]*log(constants[62]*algebraic[48])
algebraic[117] = constants[31]*(exp(algebraic[93]/(constants[115]*constants[116]))-exp((algebraic[99]+algebraic[104]+algebraic[87])/(constants[115]*constants[116])))
rates[50] = algebraic[117]
rates[51] = -algebraic[117]
algebraic[63] = constants[114]+states[54]
algebraic[109] = constants[115]*constants[116]*log(constants[74]*algebraic[63])
algebraic[119] = constants[32]*(exp(algebraic[99]/(constants[115]*constants[116]))-exp(algebraic[109]/(constants[115]*constants[116])))
rates[52] = (algebraic[113]+algebraic[117])-algebraic[119]
algebraic[4] = constants[76]+states[0]
algebraic[35] = constants[115]*constants[116]*log(constants[34]*algebraic[4])
algebraic[8] = constants[77]+states[2]
algebraic[41] = constants[115]*constants[116]*log(constants[36]*algebraic[8])
algebraic[10] = constants[79]+states[3]
algebraic[45] = constants[115]*constants[116]*log(constants[37]*algebraic[10])
algebraic[118] = constants[0]*(exp((algebraic[41]+algebraic[35])/(constants[115]*constants[116]))-exp(algebraic[45]/(constants[115]*constants[116])))
algebraic[6] = constants[78]+states[1]
algebraic[38] = constants[115]*constants[116]*log(constants[35]*algebraic[6])
algebraic[120] = constants[1]*(exp(algebraic[45]/(constants[115]*constants[116]))-exp((algebraic[41]+algebraic[38])/(constants[115]*constants[116])))
rates[3] = algebraic[118]-algebraic[120]
algebraic[75] = constants[115]*constants[116]*log(constants[59]*algebraic[36])
algebraic[121] = constants[33]*(exp((algebraic[109]+algebraic[104])/(constants[115]*constants[116]))-exp(algebraic[75]/(constants[115]*constants[116])))
rates[48] = algebraic[121]
rates[53] = (algebraic[113]+algebraic[117])-algebraic[121]
rates[54] = algebraic[119]-algebraic[121]
algebraic[12] = constants[84]+states[4]
algebraic[49] = constants[115]*constants[116]*log(constants[38]*algebraic[12])
algebraic[14] = constants[85]+states[5]
algebraic[54] = constants[115]*constants[116]*log(constants[39]*algebraic[14])
algebraic[122] = constants[2]*(exp((algebraic[49]+algebraic[35])/(constants[115]*constants[116]))-exp(algebraic[54]/(constants[115]*constants[116])))
algebraic[123] = constants[3]*(exp(algebraic[54]/(constants[115]*constants[116]))-exp((algebraic[49]+algebraic[38])/(constants[115]*constants[116])))
rates[5] = algebraic[122]-algebraic[123]
algebraic[16] = constants[81]+states[6]
algebraic[58] = constants[115]*constants[116]*log(constants[40]*algebraic[16])
algebraic[18] = constants[82]+states[7]
algebraic[64] = constants[115]*constants[116]*log(constants[41]*algebraic[18])
algebraic[124] = constants[4]*(exp((algebraic[58]+algebraic[35])/(constants[115]*constants[116]))-exp(algebraic[64]/(constants[115]*constants[116])))
rates[0] = (-algebraic[118]-algebraic[124])-algebraic[122]
algebraic[125] = constants[5]*(exp(algebraic[64]/(constants[115]*constants[116]))-exp((algebraic[58]+algebraic[38])/(constants[115]*constants[116])))
rates[7] = algebraic[124]-algebraic[125]
algebraic[20] = constants[86]+states[8]
algebraic[70] = constants[115]*constants[116]*log(constants[42]*algebraic[20])
algebraic[21] = constants[88]+states[9]
algebraic[76] = constants[115]*constants[116]*log(constants[43]*algebraic[21])
algebraic[126] = constants[6]*(exp((algebraic[70]+algebraic[38])/(constants[115]*constants[116]))-exp(algebraic[76]/(constants[115]*constants[116])))
rates[1] = (algebraic[120]+algebraic[125]+algebraic[123])-algebraic[126]
algebraic[100] = constants[115]*constants[116]*log(constants[47]*algebraic[25])
algebraic[127] = constants[9]*(exp((algebraic[41]+algebraic[100])/(constants[115]*constants[116]))-exp(algebraic[49]/(constants[115]*constants[116])))
rates[13] = -algebraic[127]
rates[4] = (algebraic[127]-algebraic[122])+algebraic[123]
algebraic[27] = constants[80]+states[14]
algebraic[105] = constants[115]*constants[116]*log(constants[48]*algebraic[27])
algebraic[129] = constants[10]*(exp((algebraic[105]+algebraic[41])/(constants[115]*constants[116]))-exp(algebraic[58]/(constants[115]*constants[116])))
rates[14] = -algebraic[129]
rates[6] = (algebraic[129]+algebraic[125])-algebraic[124]
algebraic[22] = constants[90]+states[10]
algebraic[82] = constants[115]*constants[116]*log(constants[44]*algebraic[22])
algebraic[128] = constants[7]*(exp(algebraic[76]/(constants[115]*constants[116]))-exp((algebraic[70]+algebraic[82])/(constants[115]*constants[116])))
rates[9] = algebraic[126]-algebraic[128]
rates[10] = algebraic[128]
algebraic[110] = constants[115]*constants[116]*log(constants[49]*algebraic[29])
algebraic[32] = constants[92]+states[16]
algebraic[114] = constants[115]*constants[116]*log(constants[50]*algebraic[32])
algebraic[131] = constants[11]*(exp((algebraic[41]+algebraic[110])/(constants[115]*constants[116]))-exp(algebraic[114]/(constants[115]*constants[116])))
rates[2] = (((algebraic[120]-algebraic[118])-algebraic[127])-algebraic[129])-algebraic[131]
algebraic[24] = constants[87]+states[12]
algebraic[94] = constants[115]*constants[116]*log(constants[46]*algebraic[24])
algebraic[23] = constants[89]+states[11]
algebraic[88] = constants[115]*constants[116]*log(constants[45]*algebraic[23])
algebraic[130] = constants[8]*(exp((algebraic[70]+algebraic[88])/(constants[115]*constants[116]))-exp(algebraic[94]/(constants[115]*constants[116])))
rates[8] = (algebraic[128]-algebraic[126])-algebraic[130]
rates[11] = -algebraic[130]
rates[12] = algebraic[130]
rates[15] = -algebraic[131]
rates[16] = algebraic[131]
return(rates)
def computeAlgebraic(constants, states, voi):
algebraic = array([[0.0] * len(voi)] * sizeAlgebraic)
states = array(states)
voi = array(voi)
algebraic[1] = constants[107]+states[35]
algebraic[9] = constants[115]*constants[116]*log(constants[67]*algebraic[1])
algebraic[5] = constants[109]+states[37]
algebraic[13] = constants[115]*constants[116]*log(constants[69]*algebraic[5])
algebraic[7] = constants[110]+states[38]
algebraic[15] = constants[115]*constants[116]*log(constants[70]*algebraic[7])
algebraic[17] = constants[24]*(exp((algebraic[9]+algebraic[13])/(constants[115]*constants[116]))-exp(algebraic[15]/(constants[115]*constants[116])))
algebraic[3] = constants[108]+states[36]
algebraic[11] = constants[115]*constants[116]*log(constants[68]*algebraic[3])
algebraic[19] = constants[25]*(exp(algebraic[15]/(constants[115]*constants[116]))-exp((algebraic[13]+algebraic[11])/(constants[115]*constants[116])))
algebraic[28] = constants[93]+states[18]+states[39]
algebraic[50] = constants[115]*constants[116]*log(constants[52]*algebraic[28])
algebraic[30] = constants[94]+states[19]+states[40]
algebraic[55] = constants[115]*constants[116]*log(constants[53]*algebraic[30])
algebraic[37] = constants[96]+states[21]+states[41]
algebraic[65] = constants[115]*constants[116]*log(constants[55]*algebraic[37])
algebraic[77] = constants[12]*exp((algebraic[50]+algebraic[55])/(constants[115]*constants[116]))-exp(algebraic[65]/(constants[115]*constants[116]))
algebraic[2] = custom_piecewise([less(voi , 0.100000), 100*0.100000 , True, 1.00000e-16])
algebraic[26] = algebraic[2]+states[17]
algebraic[46] = constants[115]*constants[116]*log(constants[51]*algebraic[26])
algebraic[40] = constants[97]+states[22]
algebraic[71] = constants[115]*constants[116]*log(constants[56]*algebraic[40])
algebraic[83] = constants[13]*exp((algebraic[65]+algebraic[46])/(constants[115]*constants[116]))-exp(algebraic[71]/(constants[115]*constants[116]))
algebraic[33] = constants[95]+states[20]+states[29]+states[42]
algebraic[59] = constants[115]*constants[116]*log(constants[54]*algebraic[33])
algebraic[89] = constants[14]*exp((algebraic[59]+algebraic[55])/(constants[115]*constants[116]))-exp(algebraic[71]/(constants[115]*constants[116]))
algebraic[95] = constants[15]*exp((algebraic[50]+algebraic[46])/(constants[115]*constants[116]))-exp(algebraic[59]/(constants[115]*constants[116]))
algebraic[34] = constants[98]+states[24]+states[47]
algebraic[60] = constants[115]*constants[116]*log(constants[58]*algebraic[34])
algebraic[36] = constants[99]+states[25]+states[48]
algebraic[66] = constants[115]*constants[116]*log(constants[59]*algebraic[36])
algebraic[42] = constants[101]+states[27]+states[49]
algebraic[78] = constants[115]*constants[116]*log(constants[61]*algebraic[42])
algebraic[90] = constants[16]*exp((algebraic[60]+algebraic[66])/(constants[115]*constants[116]))-exp(algebraic[78]/(constants[115]*constants[116]))
algebraic[0] = custom_piecewise([less(voi , 0.500000) & greater(voi , 0.400000), 100*0.100000 , True, 1.00000e-16])
algebraic[31] = algebraic[0]+states[23]
algebraic[56] = constants[115]*constants[116]*log(constants[57]*algebraic[31])
algebraic[48] = constants[102]+states[28]+states[51]
algebraic[84] = constants[115]*constants[116]*log(constants[62]*algebraic[48])
algebraic[96] = constants[17]*exp((algebraic[78]+algebraic[56])/(constants[115]*constants[116]))-exp(algebraic[84]/(constants[115]*constants[116]))
algebraic[39] = constants[100]+states[26]+states[50]
algebraic[72] = constants[115]*constants[116]*log(constants[60]*algebraic[39])
algebraic[101] = constants[18]*exp((algebraic[72]+algebraic[66])/(constants[115]*constants[116]))-exp(algebraic[84]/(constants[115]*constants[116]))
algebraic[67] = constants[115]*constants[116]*log(constants[54]*algebraic[33])
algebraic[47] = constants[104]+states[32]
algebraic[85] = constants[115]*constants[116]*log(constants[64]*algebraic[47])
algebraic[52] = constants[105]+states[33]
algebraic[91] = constants[115]*constants[116]*log(constants[65]*algebraic[52])
algebraic[102] = constants[20]*(exp((algebraic[67]+algebraic[85])/(constants[115]*constants[116]))-exp(algebraic[91]/(constants[115]*constants[116])))
algebraic[57] = constants[115]*constants[116]*log(constants[52]*algebraic[28])
algebraic[68] = constants[115]*constants[116]*log(constants[55]*algebraic[37])
algebraic[25] = constants[83]+states[13]+states[44]
algebraic[86] = constants[115]*constants[116]*log(constants[47]*algebraic[25])
algebraic[44] = constants[111]+states[45]
algebraic[92] = constants[115]*constants[116]*log(constants[71]*algebraic[44])
algebraic[103] = constants[26]*(exp(algebraic[68]/(constants[115]*constants[116]))-exp((algebraic[86]+algebraic[92]+algebraic[57])/(constants[115]*constants[116])))
algebraic[106] = constants[19]*exp((algebraic[60]+algebraic[56])/(constants[115]*constants[116]))-exp(algebraic[72]/(constants[115]*constants[116]))
algebraic[43] = constants[103]+states[31]
algebraic[79] = constants[115]*constants[116]*log(constants[63]*algebraic[43])
algebraic[107] = constants[21]*(exp(algebraic[91]/(constants[115]*constants[116]))-exp((algebraic[85]+algebraic[79])/(constants[115]*constants[116])))
algebraic[74] = constants[115]*constants[116]*log(constants[54]*algebraic[33])
algebraic[80] = constants[115]*constants[116]*log(constants[56]*algebraic[40])
algebraic[108] = constants[27]*(exp(algebraic[80]/(constants[115]*constants[116]))-exp((algebraic[86]+algebraic[92]+algebraic[74])/(constants[115]*constants[116])))
algebraic[73] = constants[115]*constants[116]*log(constants[56]*algebraic[40])
algebraic[61] = constants[106]+states[34]
algebraic[97] = constants[115]*constants[116]*log(constants[66]*algebraic[61])
algebraic[111] = constants[22]*(exp((algebraic[73]+algebraic[85])/(constants[115]*constants[116]))-exp(algebraic[97]/(constants[115]*constants[116])))
algebraic[51] = constants[112]+states[46]
algebraic[98] = constants[115]*constants[116]*log(constants[72]*algebraic[51])
algebraic[112] = constants[28]*(exp(algebraic[86]/(constants[115]*constants[116]))-exp(algebraic[98]/(constants[115]*constants[116])))
algebraic[69] = constants[115]*constants[116]*log(constants[58]*algebraic[34])
algebraic[81] = constants[115]*constants[116]*log(constants[61]*algebraic[42])
algebraic[29] = constants[91]+states[15]+states[52]
algebraic[99] = constants[115]*constants[116]*log(constants[49]*algebraic[29])
algebraic[53] = constants[113]+states[53]
algebraic[104] = constants[115]*constants[116]*log(constants[73]*algebraic[53])
algebraic[113] = constants[30]*(exp(algebraic[81]/(constants[115]*constants[116]))-exp((algebraic[99]+algebraic[104]+algebraic[69])/(constants[115]*constants[116])))
algebraic[115] = constants[23]*(exp(algebraic[97]/(constants[115]*constants[116]))-exp((algebraic[85]+algebraic[79])/(constants[115]*constants[116])))
algebraic[62] = constants[115]*constants[116]*log(constants[53]*algebraic[30])
algebraic[116] = constants[29]*(exp((algebraic[98]+algebraic[92])/(constants[115]*constants[116]))-exp(algebraic[62]/(constants[115]*constants[116])))
algebraic[87] = constants[115]*constants[116]*log(constants[60]*algebraic[39])
algebraic[93] = constants[115]*constants[116]*log(constants[62]*algebraic[48])
algebraic[117] = constants[31]*(exp(algebraic[93]/(constants[115]*constants[116]))-exp((algebraic[99]+algebraic[104]+algebraic[87])/(constants[115]*constants[116])))
algebraic[63] = constants[114]+states[54]
algebraic[109] = constants[115]*constants[116]*log(constants[74]*algebraic[63])
algebraic[119] = constants[32]*(exp(algebraic[99]/(constants[115]*constants[116]))-exp(algebraic[109]/(constants[115]*constants[116])))
algebraic[4] = constants[76]+states[0]
algebraic[35] = constants[115]*constants[116]*log(constants[34]*algebraic[4])
algebraic[8] = constants[77]+states[2]
algebraic[41] = constants[115]*constants[116]*log(constants[36]*algebraic[8])
algebraic[10] = constants[79]+states[3]
algebraic[45] = constants[115]*constants[116]*log(constants[37]*algebraic[10])
algebraic[118] = constants[0]*(exp((algebraic[41]+algebraic[35])/(constants[115]*constants[116]))-exp(algebraic[45]/(constants[115]*constants[116])))
algebraic[6] = constants[78]+states[1]
algebraic[38] = constants[115]*constants[116]*log(constants[35]*algebraic[6])
algebraic[120] = constants[1]*(exp(algebraic[45]/(constants[115]*constants[116]))-exp((algebraic[41]+algebraic[38])/(constants[115]*constants[116])))
algebraic[75] = constants[115]*constants[116]*log(constants[59]*algebraic[36])
algebraic[121] = constants[33]*(exp((algebraic[109]+algebraic[104])/(constants[115]*constants[116]))-exp(algebraic[75]/(constants[115]*constants[116])))
algebraic[12] = constants[84]+states[4]
algebraic[49] = constants[115]*constants[116]*log(constants[38]*algebraic[12])
algebraic[14] = constants[85]+states[5]
algebraic[54] = constants[115]*constants[116]*log(constants[39]*algebraic[14])
algebraic[122] = constants[2]*(exp((algebraic[49]+algebraic[35])/(constants[115]*constants[116]))-exp(algebraic[54]/(constants[115]*constants[116])))
algebraic[123] = constants[3]*(exp(algebraic[54]/(constants[115]*constants[116]))-exp((algebraic[49]+algebraic[38])/(constants[115]*constants[116])))
algebraic[16] = constants[81]+states[6]
algebraic[58] = constants[115]*constants[116]*log(constants[40]*algebraic[16])
algebraic[18] = constants[82]+states[7]
algebraic[64] = constants[115]*constants[116]*log(constants[41]*algebraic[18])
algebraic[124] = constants[4]*(exp((algebraic[58]+algebraic[35])/(constants[115]*constants[116]))-exp(algebraic[64]/(constants[115]*constants[116])))
algebraic[125] = constants[5]*(exp(algebraic[64]/(constants[115]*constants[116]))-exp((algebraic[58]+algebraic[38])/(constants[115]*constants[116])))
algebraic[20] = constants[86]+states[8]
algebraic[70] = constants[115]*constants[116]*log(constants[42]*algebraic[20])
algebraic[21] = constants[88]+states[9]
algebraic[76] = constants[115]*constants[116]*log(constants[43]*algebraic[21])
algebraic[126] = constants[6]*(exp((algebraic[70]+algebraic[38])/(constants[115]*constants[116]))-exp(algebraic[76]/(constants[115]*constants[116])))
algebraic[100] = constants[115]*constants[116]*log(constants[47]*algebraic[25])
algebraic[127] = constants[9]*(exp((algebraic[41]+algebraic[100])/(constants[115]*constants[116]))-exp(algebraic[49]/(constants[115]*constants[116])))
algebraic[27] = constants[80]+states[14]
algebraic[105] = constants[115]*constants[116]*log(constants[48]*algebraic[27])
algebraic[129] = constants[10]*(exp((algebraic[105]+algebraic[41])/(constants[115]*constants[116]))-exp(algebraic[58]/(constants[115]*constants[116])))
algebraic[22] = constants[90]+states[10]
algebraic[82] = constants[115]*constants[116]*log(constants[44]*algebraic[22])
algebraic[128] = constants[7]*(exp(algebraic[76]/(constants[115]*constants[116]))-exp((algebraic[70]+algebraic[82])/(constants[115]*constants[116])))
algebraic[110] = constants[115]*constants[116]*log(constants[49]*algebraic[29])
algebraic[32] = constants[92]+states[16]
algebraic[114] = constants[115]*constants[116]*log(constants[50]*algebraic[32])
algebraic[131] = constants[11]*(exp((algebraic[41]+algebraic[110])/(constants[115]*constants[116]))-exp(algebraic[114]/(constants[115]*constants[116])))
algebraic[24] = constants[87]+states[12]
algebraic[94] = constants[115]*constants[116]*log(constants[46]*algebraic[24])
algebraic[23] = constants[89]+states[11]
algebraic[88] = constants[115]*constants[116]*log(constants[45]*algebraic[23])
algebraic[130] = constants[8]*(exp((algebraic[70]+algebraic[88])/(constants[115]*constants[116]))-exp(algebraic[94]/(constants[115]*constants[116])))
return algebraic
def custom_piecewise(cases):
"""Compute result of a piecewise function"""
return select(cases[0::2],cases[1::2])
def solve_model():
"""Solve model with ODE solver"""
from scipy.integrate import ode
# Initialise constants and state variables
(init_states, constants) = initConsts()
# Set timespan to solve over
voi = linspace(0, 1, 500)
# Construct ODE object to solve
r = ode(computeRates)
r.set_integrator('vode', method='bdf', atol=1e-06, rtol=1e-06, max_step=1e-7)
r.set_initial_value(init_states, voi[0])
r.set_f_params(constants)
# Solve model
states = array([[0.0] * len(voi)] * sizeStates)
states[:,0] = init_states
for (i,t) in enumerate(voi[1:]):
if r.successful():
r.integrate(t)
states[:,i+1] = r.y
else:
break
# Compute algebraic variables
algebraic = computeAlgebraic(constants, states, voi)
return (voi, states, algebraic)
def plot_model(voi, states, algebraic):
"""Plot variables against variable of integration"""
import matplotlib.pyplot as plt
(legend_states, legend_algebraic, legend_voi, legend_constants) = createLegends()
if False:
plt.figure(1)
i_s = range(17, 22)
plt.plot(voi, states[i_s].T)
plt.xlabel('time (s)')
plt.legend([legend_states[i] for i in i_s], loc='best')
modNames = ['cAMP','B1AR','M2']
# comp ENVIRONMENT
i_s = {c:[] for c in modNames}
i_s['cAMP'] = [4,6,8,10]
i_s['B1AR'] = [2,26,28,30,33,37,40,44,51]
i_s['M2'] = [0,31,34,36,39,42,53,63]
for name in i_s.keys():
ids = i_s[name]
figure, axes = plt.subplots(nrows=3, ncols=3)
for j in range(len(ids)):
plt.subplot(3,3,j+1)
plt.plot(voi[2:-1], algebraic[ids[j]][2:-1].T)
# plt.xlabel('time (s)')
legstr = legend_algebraic[ids[j]].split(' ')[0] + legend_algebraic[ids[j]].split('(')[-1]
plt.title(legstr)
plt.suptitle(name+' env')
# comp INDIVIDUAL
i_s['cAMP'] = list(range(4))+[13,15,16]
i_s['B1AR'] = list(range(17,23))
i_s['M2'] = list(range(23,29))
for name in i_s.keys():
ids = i_s[name]
figure, axes = plt.subplots(nrows=3, ncols=3)
for j in range(len(ids)):
plt.subplot(3,3,j+1)
plt.plot(voi[2:-1], states[ids[j]][2:-1].T)
legstr = legend_states[ids[j]].split(' ')[0] + legend_states[ids[j]].split('(')[-1]
plt.title(legstr)
plt.suptitle(name+' subcomp')
# figure.tight_layout()
plt.show()
if __name__ == "__main__":
(voi, states, algebraic) = solve_model()
plot_model(voi, states, algebraic)