def model individual_cAMP as def import using "units_and_constants/units_BG.cellml" for unit mM using unit mM; unit fmol using unit fmol; unit per_fmol using unit per_fmol; unit J_per_mol using unit J_per_mol; unit fmol_per_sec using unit fmol_per_sec; unit C_per_mol using unit C_per_mol; unit J_per_C using unit J_per_C; unit microm3 using unit microm3; unit fF using unit fF; unit fC using unit fC; unit fA using unit fA; unit per_second using unit per_second; unit millivolt using unit millivolt; unit per_sec using unit per_sec; unit J_per_K_per_mol using unit J_per_K_per_mol; unit fmol_per_L using unit fmol_per_L; unit fmol_per_L_per_sec using unit fmol_per_L_per_sec; unit per_sec_per_fmol_per_L using unit per_sec_per_fmol_per_L; unit uM using unit uM; unit mM_per_sec using unit mM_per_sec; unit uM_per_sec using unit uM_per_sec; unit pL using unit pL; unit m_to_u using unit m_to_u; enddef; def import using "units_and_constants/constants_BG.cellml" for comp constants using comp constants; enddef; def comp environment as var time: second {pub: out}; // initial values var q_ATP_init: fmol {init: 1e-888}; var q_cAMP_init: fmol {init: 1e-888}; var q_AC_init: fmol {init: 1e-888}; var q_AC_ATP_init: fmol {init: 1e-888}; var q_a_Gs_GTP_AC_init: fmol {init: 1e-888}; var q_a_Gs_GTP_AC_ATP_init: fmol {init: 1e-888}; var q_FSK_AC_init: fmol {init: 1e-888}; var q_FSK_AC_ATP_init: fmol {init: 1e-888}; var q_PDE_init: fmol {init: 1e-888}; var q_PDE_cAMP_init: fmol {init: 1e-888}; var q_five_AMP_init: fmol {init: 1e-888}; var q_IBMX_init: fmol {init: 1e-888}; var q_PDEinh_init: fmol {init: 1e-888}; var q_a_Gs_GTP_init: fmol {init: 1e-888}; var q_FSK_init: fmol {init: 1e-888}; var q_a_Gi_GTP_init: fmol {init: 1e-888}; var q_ACinh_init: fmol {init: 1e-888}; var q_PPi_init: fmol {init: 1e-888}; // Global value var q_ATP: fmol {pub: out}; var q_cAMP: fmol {pub: out}; var q_AC: fmol {pub: out}; var q_AC_ATP: fmol {pub: out}; var q_a_Gs_GTP_AC: fmol {pub: out}; var q_a_Gs_GTP_AC_ATP: fmol {pub: out}; var q_FSK_AC: fmol {pub: out}; var q_FSK_AC_ATP: fmol {pub: out}; var q_PDE: fmol {pub: out}; var q_PDE_cAMP: fmol {pub: out}; var q_five_AMP: fmol {pub: out}; var q_IBMX: fmol {pub: out}; var q_PDEinh: fmol {pub: out}; var q_a_Gs_GTP: fmol {pub: out}; var q_FSK: fmol {pub: out}; var q_a_Gi_GTP: fmol {pub: out}; var q_ACinh: fmol {pub: out}; var q_PPi: fmol {pub: out}; // From submodule var q_ATP_mcAMP: fmol {pub: in}; var q_cAMP_mcAMP: fmol {pub: in}; var q_AC_mcAMP: fmol {pub: in}; var q_AC_ATP_mcAMP: fmol {pub: in}; var q_a_Gs_GTP_AC_mcAMP: fmol {pub: in}; var q_a_Gs_GTP_AC_ATP_mcAMP: fmol {pub: in}; var q_FSK_AC_mcAMP: fmol {pub: in}; var q_FSK_AC_ATP_mcAMP: fmol {pub: in}; var q_PDE_mcAMP: fmol {pub: in}; var q_PDE_cAMP_mcAMP: fmol {pub: in}; var q_five_AMP_mcAMP: fmol {pub: in}; var q_IBMX_mcAMP: fmol {pub: in}; var q_PDEinh_mcAMP: fmol {pub: in}; var q_a_Gs_GTP_mcAMP: fmol {pub: in}; var q_FSK_mcAMP: fmol {pub: in}; var q_a_Gi_GTP_mcAMP: fmol {pub: in}; var q_ACinh_mcAMP: fmol {pub: in}; var q_PPi_mcAMP: fmol {pub: in}; q_ATP = q_ATP_mcAMP + q_ATP_init; q_cAMP = q_cAMP_mcAMP + q_cAMP_init; q_AC = q_AC_mcAMP + q_AC_init; q_AC_ATP = q_AC_ATP_mcAMP + q_AC_ATP_init; q_a_Gs_GTP_AC = q_a_Gs_GTP_AC_mcAMP + q_a_Gs_GTP_AC_init; q_a_Gs_GTP_AC_ATP = q_a_Gs_GTP_AC_ATP_mcAMP + q_a_Gs_GTP_AC_ATP_init; q_FSK_AC = q_FSK_AC_mcAMP + q_FSK_AC_init; q_FSK_AC_ATP = q_FSK_AC_ATP_mcAMP + q_FSK_AC_ATP_init; q_PDE = q_PDE_mcAMP + q_PDE_init; q_PDE_cAMP = q_PDE_cAMP_mcAMP + q_PDE_cAMP_init; q_five_AMP = q_five_AMP_mcAMP + q_five_AMP_init; q_IBMX = q_IBMX_mcAMP + q_IBMX_init; q_PDEinh = q_PDEinh_mcAMP + q_PDEinh_init; q_a_Gs_GTP = q_a_Gs_GTP_mcAMP + q_a_Gs_GTP_init; q_FSK = q_FSK_mcAMP + q_FSK_init; q_a_Gi_GTP = q_a_Gi_GTP_mcAMP + q_a_Gi_GTP_init; q_ACinh = q_ACinh_mcAMP + q_ACinh_init; q_PPi = q_PPi_mcAMP + q_PPi_init; enddef; def comp cAMP_parameters as var kappa_1a: fmol_per_sec {init: 9.47329e+06, pub: out}; var kappa_1b: fmol_per_sec {init: 0.00197793, pub: out}; var kappa_2a: fmol_per_sec {init: 176000, pub: out}; var kappa_2b: fmol_per_sec {init: 0.047492, pub: out}; var kappa_3a: fmol_per_sec {init: 5.07667e+08, pub: out}; var kappa_3b: fmol_per_sec {init: 5.9031e-17, pub: out}; var kappa_4a: fmol_per_sec {init: 36084.5, pub: out}; var kappa_4b: fmol_per_sec {init: 0.138787, pub: out}; var kappa_5: fmol_per_sec {init: 751.564, pub: out}; var kappa_6: fmol_per_sec {init: 556.617, pub: out}; var kappa_7: fmol_per_sec {init: 160555, pub: out}; var kappa_GiAC: fmol_per_sec {init: 685.521, pub: out}; var K_ATP: per_fmol {init: 9.19362e-06, pub: out}; var K_cAMP: per_fmol {init: 0.0102598, pub: out}; var K_AC: per_fmol {init: 9.02358, pub: out}; var K_AC_ATP: per_fmol {init: 2.93942, pub: out}; var K_a_Gs_GTP_AC: per_fmol {init: 52.2258, pub: out}; var K_a_Gs_GTP_AC_ATP: per_fmol {init: 5.20284, pub: out}; var K_FSK_AC: per_fmol {init: 0.181058, pub: out}; var K_FSK_AC_ATP: per_fmol {init: 0.0492449, pub: out}; var K_PDE: per_fmol {init: 2.28256, pub: out}; var K_PDE_cAMP: per_fmol {init: 1.04728, pub: out}; var K_five_AMP: per_fmol {init: 0.0102598, pub: out}; var K_IBMX: per_fmol {init: 0.01642, pub: out}; var K_PDEinh: per_fmol {init: 38.679, pub: out}; var K_a_Gs_GTP: per_fmol {init: 0.420618, pub: out}; var K_FSK: per_fmol {init: 1.32565e-05, pub: out}; var K_a_Gi_GTP: per_fmol {init: 0.013661, pub: out}; var K_ACinh: per_fmol {init: 42.4053, pub: out}; var K_PPi: per_fmol {init: 2.60488e-05, pub: out}; enddef; def comp cAMP as var time: second {pub: in}; var R: J_per_K_per_mol {pub: in}; var T: kelvin {pub: in}; // parameters var kappa_1a: fmol_per_sec {pub: in}; var kappa_1b: fmol_per_sec {pub: in}; var kappa_2a: fmol_per_sec {pub: in}; var kappa_2b: fmol_per_sec {pub: in}; var kappa_3a: fmol_per_sec {pub: in}; var kappa_3b: fmol_per_sec {pub: in}; var kappa_4a: fmol_per_sec {pub: in}; var kappa_4b: fmol_per_sec {pub: in}; var kappa_5: fmol_per_sec {pub: in}; var kappa_6: fmol_per_sec {pub: in}; var kappa_7: fmol_per_sec {pub: in}; var kappa_GiAC: fmol_per_sec {pub: in}; var K_ATP: per_fmol {pub: in}; var K_cAMP: per_fmol {pub: in}; var K_AC: per_fmol {pub: in}; var K_AC_ATP: per_fmol {pub: in}; var K_a_Gs_GTP_AC: per_fmol {pub: in}; var K_a_Gs_GTP_AC_ATP: per_fmol {pub: in}; var K_FSK_AC: per_fmol {pub: in}; var K_FSK_AC_ATP: per_fmol {pub: in}; var K_PDE: per_fmol {pub: in}; var K_PDE_cAMP: per_fmol {pub: in}; var K_five_AMP: per_fmol {pub: in}; var K_IBMX: per_fmol {pub: in}; var K_PDEinh: per_fmol {pub: in}; var K_a_Gs_GTP: per_fmol {pub: in}; var K_FSK: per_fmol {pub: in}; var K_a_Gi_GTP: per_fmol {pub: in}; var K_ACinh: per_fmol {pub: in}; var K_PPi: per_fmol {pub: in}; // Input from global environment var q_ATP_global: fmol {pub: in}; var q_cAMP_global: fmol {pub: in}; var q_AC_global: fmol {pub: in}; var q_AC_ATP_global: fmol {pub: in}; var q_a_Gs_GTP_AC_global: fmol {pub: in}; var q_a_Gs_GTP_AC_ATP_global: fmol {pub: in}; var q_FSK_AC_global: fmol {pub: in}; var q_FSK_AC_ATP_global: fmol {pub: in}; var q_PDE_global: fmol {pub: in}; var q_PDE_cAMP_global: fmol {pub: in}; var q_five_AMP_global: fmol {pub: in}; var q_IBMX_global: fmol {pub: in}; var q_PDEinh_global: fmol {pub: in}; var q_a_Gs_GTP_global: fmol {pub: in}; var q_FSK_global: fmol {pub: in}; var q_a_Gi_GTP_global: fmol {pub: in}; var q_ACinh_global: fmol {pub: in}; var q_PPi_global: fmol {pub: in}; // Output to global environment var q_ATP: fmol {init: 1e-16, pub: out}; var q_cAMP: fmol {init: 1e-16, pub: out}; var q_AC: fmol {init: 1e-16, pub: out}; var q_AC_ATP: fmol {init: 1e-16, pub: out}; var q_a_Gs_GTP_AC: fmol {init: 1e-16, pub: out}; var q_a_Gs_GTP_AC_ATP: fmol {init: 1e-16, pub: out}; var q_FSK_AC: fmol {init: 1e-16, pub: out}; var q_FSK_AC_ATP: fmol {init: 1e-16, pub: out}; var q_PDE: fmol {init: 1e-16, pub: out}; var q_PDE_cAMP: fmol {init: 1e-16, pub: out}; var q_five_AMP: fmol {init: 1e-16, pub: out}; var q_IBMX: fmol {init: 1e-16, pub: out}; var q_PDEinh: fmol {init: 1e-16, pub: out}; var q_a_Gs_GTP: fmol {init: 1e-16, pub: out}; var q_FSK: fmol {init: 1e-16, pub: out}; var q_a_Gi_GTP: fmol {init: 1e-16, pub: out}; var q_ACinh: fmol {init: 1e-16, pub: out}; var q_PPi: fmol {init: 1e-16, pub: out}; // Constitutive parameters var mu_ATP: J_per_mol; var mu_cAMP: J_per_mol; var mu_AC: J_per_mol; var mu_AC_ATP: J_per_mol; var mu_a_Gs_GTP_AC: J_per_mol; var mu_a_Gs_GTP_AC_ATP: J_per_mol; var mu_FSK_AC: J_per_mol; var mu_FSK_AC_ATP: J_per_mol; var mu_PDE: J_per_mol; var mu_PDE_cAMP: J_per_mol; var mu_five_AMP: J_per_mol; var mu_IBMX: J_per_mol; var mu_PDEinh: J_per_mol; var mu_a_Gs_GTP: J_per_mol; var mu_FSK: J_per_mol; var mu_a_Gi_GTP: J_per_mol; var mu_ACinh: J_per_mol; var mu_PPi: J_per_mol; var v_1a: fmol_per_sec; var v_1b: fmol_per_sec; var v_2a: fmol_per_sec; var v_2b: fmol_per_sec; var v_3a: fmol_per_sec; var v_3b: fmol_per_sec; var v_4a: fmol_per_sec; var v_4b: fmol_per_sec; var v_5: fmol_per_sec; var v_6: fmol_per_sec; var v_7: fmol_per_sec; var v_GiAC: fmol_per_sec; mu_ATP = R*T*ln(K_ATP*q_ATP_global); mu_cAMP = R*T*ln(K_cAMP*q_cAMP_global); mu_AC = R*T*ln(K_AC*q_AC_global); mu_AC_ATP = R*T*ln(K_AC_ATP*q_AC_ATP_global); mu_a_Gs_GTP_AC = R*T*ln(K_a_Gs_GTP_AC*q_a_Gs_GTP_AC_global); mu_a_Gs_GTP_AC_ATP = R*T*ln(K_a_Gs_GTP_AC_ATP*q_a_Gs_GTP_AC_ATP_global); mu_FSK_AC = R*T*ln(K_FSK_AC*q_FSK_AC_global); mu_FSK_AC_ATP = R*T*ln(K_FSK_AC_ATP*q_FSK_AC_ATP_global); mu_PDE = R*T*ln(K_PDE*q_PDE_global); mu_PDE_cAMP = R*T*ln(K_PDE_cAMP*q_PDE_cAMP_global); mu_five_AMP = R*T*ln(K_five_AMP*q_five_AMP_global); mu_IBMX = R*T*ln(K_IBMX*q_IBMX_global); mu_PDEinh = R*T*ln(K_PDEinh*q_PDEinh_global); mu_a_Gs_GTP = R*T*ln(K_a_Gs_GTP*q_a_Gs_GTP_global); mu_FSK = R*T*ln(K_FSK*q_FSK_global); mu_a_Gi_GTP = R*T*ln(K_a_Gi_GTP*q_a_Gi_GTP_global); mu_ACinh = R*T*ln(K_ACinh*q_ACinh_global); mu_PPi = R*T*ln(K_PPi*q_PPi_global); v_1a = ppp; v_1b = ppp; v_2a = ppp; v_2b = ppp; v_3a = ppp; v_3b = ppp; v_4a = ppp; v_4b = ppp; v_5 = ppp; v_6 = ppp; v_7 = ppp; v_GiAC = ppp; ode(q_ATP, time) = qqq; ode(q_cAMP, time) = qqq; ode(q_AC, time) = qqq; ode(q_AC_ATP, time) = qqq; ode(q_a_Gs_GTP_AC, time) = qqq; ode(q_a_Gs_GTP_AC_ATP, time) = qqq; ode(q_FSK_AC, time) = qqq; ode(q_FSK_AC_ATP, time) = qqq; ode(q_PDE, time) = qqq; ode(q_PDE_cAMP, time) = qqq; ode(q_five_AMP, time) = qqq; ode(q_IBMX, time) = qqq; ode(q_PDEinh, time) = qqq; ode(q_a_Gs_GTP, time) = qqq; ode(q_FSK, time) = qqq; ode(q_a_Gi_GTP, time) = qqq; ode(q_ACinh, time) = qqq; ode(q_PPi, time) = qqq; enddef; def map between environment and cAMP for vars time and time; vars q_ATP_mcAMP and q_ATP; vars q_ATP and q_ATP_global; vars q_cAMP_mcAMP and q_cAMP; vars q_cAMP and q_cAMP_global; vars q_AC_mcAMP and q_AC; vars q_AC and q_AC_global; vars q_AC_ATP_mcAMP and q_AC_ATP; vars q_AC_ATP and q_AC_ATP_global; vars q_a_Gs_GTP_AC_mcAMP and q_a_Gs_GTP_AC; vars q_a_Gs_GTP_AC and q_a_Gs_GTP_AC_global; vars q_a_Gs_GTP_AC_ATP_mcAMP and q_a_Gs_GTP_AC_ATP; vars q_a_Gs_GTP_AC_ATP and q_a_Gs_GTP_AC_ATP_global; vars q_FSK_AC_mcAMP and q_FSK_AC; vars q_FSK_AC and q_FSK_AC_global; vars q_FSK_AC_ATP_mcAMP and q_FSK_AC_ATP; vars q_FSK_AC_ATP and q_FSK_AC_ATP_global; vars q_PDE_mcAMP and q_PDE; vars q_PDE and q_PDE_global; vars q_PDE_cAMP_mcAMP and q_PDE_cAMP; vars q_PDE_cAMP and q_PDE_cAMP_global; vars q_five_AMP_mcAMP and q_five_AMP; vars q_five_AMP and q_five_AMP_global; vars q_IBMX_mcAMP and q_IBMX; vars q_IBMX and q_IBMX_global; vars q_PDEinh_mcAMP and q_PDEinh; vars q_PDEinh and q_PDEinh_global; vars q_a_Gs_GTP_mcAMP and q_a_Gs_GTP; vars q_a_Gs_GTP and q_a_Gs_GTP_global; vars q_FSK_mcAMP and q_FSK; vars q_FSK and q_FSK_global; vars q_a_Gi_GTP_mcAMP and q_a_Gi_GTP; vars q_a_Gi_GTP and q_a_Gi_GTP_global; vars q_ACinh_mcAMP and q_ACinh; vars q_ACinh and q_ACinh_global; vars q_PPi_mcAMP and q_PPi; vars q_PPi and q_PPi_global; enddef; def map between cAMP and cAMP_parameters for vars kappa_1a and kappa_1a; vars kappa_1b and kappa_1b; vars kappa_2a and kappa_2a; vars kappa_2b and kappa_2b; vars kappa_3a and kappa_3a; vars kappa_3b and kappa_3b; vars kappa_4a and kappa_4a; vars kappa_4b and kappa_4b; vars kappa_5 and kappa_5; vars kappa_6 and kappa_6; vars kappa_7 and kappa_7; vars kappa_GiAC and kappa_GiAC; vars K_ATP and K_ATP; vars K_cAMP and K_cAMP; vars K_AC and K_AC; vars K_AC_ATP and K_AC_ATP; vars K_a_Gs_GTP_AC and K_a_Gs_GTP_AC; vars K_a_Gs_GTP_AC_ATP and K_a_Gs_GTP_AC_ATP; vars K_FSK_AC and K_FSK_AC; vars K_FSK_AC_ATP and K_FSK_AC_ATP; vars K_PDE and K_PDE; vars K_PDE_cAMP and K_PDE_cAMP; vars K_five_AMP and K_five_AMP; vars K_IBMX and K_IBMX; vars K_PDEinh and K_PDEinh; vars K_a_Gs_GTP and K_a_Gs_GTP; vars K_FSK and K_FSK; vars K_a_Gi_GTP and K_a_Gi_GTP; vars K_ACinh and K_ACinh; vars K_PPi and K_PPi; enddef; def map between constants and cAMP for vars R and R; vars T and T; enddef; enddef;