def model individual_HaiMurphy 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_A_init: fmol {init: 1e-888}; var q_M_init: fmol {init: 1e-888}; var q_Mp_init: fmol {init: 1e-888}; var q_AM_init: fmol {init: 1e-888}; var q_AMp_init: fmol {init: 1e-888}; var q_Pi_init: fmol {init: 1e-888}; var q_Ca_i_init: fmol {init: 1e-888}; var q_cGMP_init: fmol {init: 1e-888}; // Global value var q_A: fmol {pub: out}; var q_M: fmol {pub: out}; var q_Mp: fmol {pub: out}; var q_AM: fmol {pub: out}; var q_AMp: fmol {pub: out}; var q_Pi: fmol {pub: out}; var q_Ca_i: fmol {pub: out}; var q_cGMP: fmol {pub: out}; // From submodule var q_A_mHaiMurphy: fmol {pub: in}; var q_M_mHaiMurphy: fmol {pub: in}; var q_Mp_mHaiMurphy: fmol {pub: in}; var q_AM_mHaiMurphy: fmol {pub: in}; var q_AMp_mHaiMurphy: fmol {pub: in}; var q_Pi_mHaiMurphy: fmol {pub: in}; var q_Ca_i_mHaiMurphy: fmol {pub: in}; var q_cGMP_mHaiMurphy: fmol {pub: in}; q_A = q_A_mHaiMurphy + q_A_init; q_M = q_M_mHaiMurphy + q_M_init; q_Mp = q_Mp_mHaiMurphy + q_Mp_init; q_AM = q_AM_mHaiMurphy + q_AM_init; q_AMp = q_AMp_mHaiMurphy + q_AMp_init; q_Pi = q_Pi_mHaiMurphy + q_Pi_init; q_Ca_i = q_Ca_i_mHaiMurphy + q_Ca_i_init; q_cGMP = q_cGMP_mHaiMurphy + q_cGMP_init; enddef; def comp HaiMurphy_parameters as var kappa_R_12: fmol_per_sec {init: 0.117606, pub: out}; var kappa_R_34: fmol_per_sec {init: 6.98167, pub: out}; var kappa_R_56: fmol_per_sec {init: 2.11691, pub: out}; var kappa_R_78: fmol_per_sec {init: 0.0270688, pub: out}; var K_A: per_fmol {init: 0.0574405, pub: out}; var K_M: per_fmol {init: 0.440232, pub: out}; var K_Mp: per_fmol {init: 0.00379296, pub: out}; var K_AM: per_fmol {init: 0.0483265, pub: out}; var K_AMp: per_fmol {init: 0.000416373, pub: out}; var K_Pi: per_fmol {init: 27.0368, pub: out}; var K_Ca_i: per_fmol {init: 0.0157227, pub: out}; var K_cGMP: per_fmol {init: 0.0104801, pub: out}; enddef; def comp HaiMurphy as var time: second {pub: in}; var R: J_per_K_per_mol {pub: in}; var T: kelvin {pub: in}; // parameters var kappa_R_12: fmol_per_sec {pub: in}; var kappa_R_34: fmol_per_sec {pub: in}; var kappa_R_56: fmol_per_sec {pub: in}; var kappa_R_78: fmol_per_sec {pub: in}; var K_A: per_fmol {pub: in}; var K_M: per_fmol {pub: in}; var K_Mp: per_fmol {pub: in}; var K_AM: per_fmol {pub: in}; var K_AMp: per_fmol {pub: in}; var K_Pi: per_fmol {pub: in}; var K_Ca_i: per_fmol {pub: in}; var K_cGMP: per_fmol {pub: in}; // Input from global environment var q_A_global: fmol {pub: in}; var q_M_global: fmol {pub: in}; var q_Mp_global: fmol {pub: in}; var q_AM_global: fmol {pub: in}; var q_AMp_global: fmol {pub: in}; var q_Pi_global: fmol {pub: in}; var q_Ca_i_global: fmol {pub: in}; var q_cGMP_global: fmol {pub: in}; // Output to global environment var q_A: fmol {init: 1e-16, pub: out}; var q_M: fmol {init: 1e-16, pub: out}; var q_Mp: fmol {init: 1e-16, pub: out}; var q_AM: fmol {init: 1e-16, pub: out}; var q_AMp: fmol {init: 1e-16, pub: out}; var q_Pi: fmol {init: 1e-16, pub: out}; var q_Ca_i: fmol {init: 1e-16, pub: out}; var q_cGMP: fmol {init: 1e-16, pub: out}; // Constitutive parameters var mu_A: J_per_mol; var mu_M: J_per_mol; var mu_Mp: J_per_mol; var mu_AM: J_per_mol; var mu_AMp: J_per_mol; var mu_Pi: J_per_mol; var mu_Ca_i: J_per_mol; var mu_cGMP: J_per_mol; var v_R_12: fmol_per_sec; var v_R_34: fmol_per_sec; var v_R_56: fmol_per_sec; var v_R_78: fmol_per_sec; mu_A = R*T*ln(K_A*q_A_global); mu_M = R*T*ln(K_M*q_M_global); mu_Mp = R*T*ln(K_Mp*q_Mp_global); mu_AM = R*T*ln(K_AM*q_AM_global); mu_AMp = R*T*ln(K_AMp*q_AMp_global); mu_Pi = R*T*ln(K_Pi*q_Pi_global); mu_Ca_i = R*T*ln(K_Ca_i*q_Ca_i_global); mu_cGMP = R*T*ln(K_cGMP*q_cGMP_global); v_R_12 = ppp; v_R_34 = ppp; v_R_56 = ppp; v_R_78 = ppp; ode(q_A, time) = qqq; ode(q_M, time) = qqq; ode(q_Mp, time) = qqq; ode(q_AM, time) = qqq; ode(q_AMp, time) = qqq; ode(q_Pi, time) = qqq; ode(q_Ca_i, time) = qqq; ode(q_cGMP, time) = qqq; enddef; def map between environment and HaiMurphy for vars time and time; vars q_A_mHaiMurphy and q_A; vars q_A and q_A_global; vars q_M_mHaiMurphy and q_M; vars q_M and q_M_global; vars q_Mp_mHaiMurphy and q_Mp; vars q_Mp and q_Mp_global; vars q_AM_mHaiMurphy and q_AM; vars q_AM and q_AM_global; vars q_AMp_mHaiMurphy and q_AMp; vars q_AMp and q_AMp_global; vars q_Pi_mHaiMurphy and q_Pi; vars q_Pi and q_Pi_global; vars q_Ca_i_mHaiMurphy and q_Ca_i; vars q_Ca_i and q_Ca_i_global; vars q_cGMP_mHaiMurphy and q_cGMP; vars q_cGMP and q_cGMP_global; enddef; def map between HaiMurphy and HaiMurphy_parameters for vars kappa_R_12 and kappa_R_12; vars kappa_R_34 and kappa_R_34; vars kappa_R_56 and kappa_R_56; vars kappa_R_78 and kappa_R_78; vars K_A and K_A; vars K_M and K_M; vars K_Mp and K_Mp; vars K_AM and K_AM; vars K_AMp and K_AMp; vars K_Pi and K_Pi; vars K_Ca_i and K_Ca_i; vars K_cGMP and K_cGMP; enddef; def map between constants and HaiMurphy for vars R and R; vars T and T; enddef; enddef;