def model individual_NaK_pump 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_1_NaK: fmol {init: 1e-888, pub: out}; var q_2_NaK: fmol {init: 1e-888, pub: out}; var q_3_NaK: fmol {init: 1e-888, pub: out}; var q_4_NaK: fmol {init: 1e-888, pub: out}; var q_5_NaK: fmol {init: 1e-888, pub: out}; var q_6_NaK: fmol {init: 1e-888, pub: out}; var q_7_NaK: fmol {init: 1e-888, pub: out}; var q_8_NaK: fmol {init: 1e-888, pub: out}; var q_9_NaK: fmol {init: 1e-888, pub: out}; var q_10_NaK: fmol {init: 1e-888, pub: out}; var q_11_NaK: fmol {init: 1e-888, pub: out}; var q_12_NaK: fmol {init: 1e-888, pub: out}; var q_13_NaK: fmol {init: 1e-888, pub: out}; var q_14_NaK: fmol {init: 1e-888, pub: out}; var q_15_NaK: fmol {init: 1e-888, pub: out}; var q_K_i: fmol {init: 1e-888, pub: out}; var q_K_o: fmol {init: 1e-888, pub: out}; var q_Na_i: fmol {init: 1e-888, pub: out}; var q_Na_o: fmol {init: 1e-888, pub: out}; var q_MgATP: fmol {init: 1e-888, pub: out}; var q_MgADP: fmol {init: 1e-888, pub: out}; var q_Pi: fmol {init: 1e-888, pub: out}; var q_H: fmol {init: 1e-888, pub: out}; // From submodule var v_1_NaK: fmol_per_sec {pub: in}; var v_2_NaK: fmol_per_sec {pub: in}; var v_3_NaK: fmol_per_sec {pub: in}; var v_4_NaK: fmol_per_sec {pub: in}; var v_5_NaK: fmol_per_sec {pub: in}; var v_6_NaK: fmol_per_sec {pub: in}; var v_7_NaK: fmol_per_sec {pub: in}; var v_8_NaK: fmol_per_sec {pub: in}; var v_9_NaK: fmol_per_sec {pub: in}; var v_10_NaK: fmol_per_sec {pub: in}; var v_11_NaK: fmol_per_sec {pub: in}; var v_12_NaK: fmol_per_sec {pub: in}; var v_13_NaK: fmol_per_sec {pub: in}; var v_14_NaK: fmol_per_sec {pub: in}; var v_15_NaK: fmol_per_sec {pub: in}; ode(q_1_NaK, time) = vvv; ode(q_2_NaK, time) = vvv; ode(q_3_NaK, time) = vvv; ode(q_4_NaK, time) = vvv; ode(q_5_NaK, time) = vvv; ode(q_6_NaK, time) = vvv; ode(q_7_NaK, time) = vvv; ode(q_8_NaK, time) = vvv; ode(q_9_NaK, time) = vvv; ode(q_10_NaK, time) = vvv; ode(q_11_NaK, time) = vvv; ode(q_12_NaK, time) = vvv; ode(q_13_NaK, time) = vvv; ode(q_14_NaK, time) = vvv; ode(q_15_NaK, time) = vvv; ode(q_K_i, time) = vvv; ode(q_K_o, time) = vvv; ode(q_Na_i, time) = vvv; ode(q_Na_o, time) = vvv; ode(q_MgATP, time) = vvv; ode(q_MgADP, time) = vvv; ode(q_Pi, time) = vvv; ode(q_H, time) = vvv; enddef; def comp NaK_pump_parameters as var kappa_1_NaK: fmol_per_sec {init: 597.448, pub: out}; var kappa_2_NaK: fmol_per_sec {init: 8065.54, pub: out}; var kappa_3_NaK: fmol_per_sec {init: 33580.9, pub: out}; var kappa_4_NaK: fmol_per_sec {init: 106835, pub: out}; var kappa_5_NaK: fmol_per_sec {init: 146.572, pub: out}; var kappa_6_NaK: fmol_per_sec {init: 0.208601, pub: out}; var kappa_7_NaK: fmol_per_sec {init: 73.8407, pub: out}; var kappa_8_NaK: fmol_per_sec {init: 70.8426, pub: out}; var kappa_9_NaK: fmol_per_sec {init: 19904.7, pub: out}; var kappa_10_NaK: fmol_per_sec {init: 1.39816e+06, pub: out}; var kappa_11_NaK: fmol_per_sec {init: 8221.69, pub: out}; var kappa_12_NaK: fmol_per_sec {init: 6755.7, pub: out}; var kappa_13_NaK: fmol_per_sec {init: 0.607234, pub: out}; var kappa_14_NaK: fmol_per_sec {init: 37036.3, pub: out}; var kappa_15_NaK: fmol_per_sec {init: 8.08158, pub: out}; var K_1_NaK: per_fmol {init: 194760, pub: out}; var K_2_NaK: per_fmol {init: 3606.67, pub: out}; var K_3_NaK: per_fmol {init: 267.161, pub: out}; var K_4_NaK: per_fmol {init: 83.9754, pub: out}; var K_5_NaK: per_fmol {init: 105.582, pub: out}; var K_6_NaK: per_fmol {init: 6822.6, pub: out}; var K_7_NaK: per_fmol {init: 156.618, pub: out}; var K_8_NaK: per_fmol {init: 492.348, pub: out}; var K_9_NaK: per_fmol {init: 1.06678e+06, pub: out}; var K_10_NaK: per_fmol {init: 3796.75, pub: out}; var K_11_NaK: per_fmol {init: 54.0519, pub: out}; var K_12_NaK: per_fmol {init: 65.7812, pub: out}; var K_13_NaK: per_fmol {init: 320.223, pub: out}; var K_14_NaK: per_fmol {init: 50.7727, pub: out}; var K_15_NaK: per_fmol {init: 3790.09, pub: out}; var K_K_i: per_fmol {init: 0.0134907, pub: out}; var K_K_o: per_fmol {init: 0.434241, pub: out}; var K_Na_i: per_fmol {init: 0.00324023, pub: out}; var K_Na_o: per_fmol {init: 0.00255349, pub: out}; var K_MgATP: per_fmol {init: 0.0154591, pub: out}; var K_MgADP: per_fmol {init: 0.201006, pub: out}; var K_Pi: per_fmol {init: 2.77543, pub: out}; var K_H: per_fmol {init: 2.77543, pub: out}; enddef; def comp NaK_pump as var time: second {pub: in}; var R: J_per_K_per_mol {pub: in}; var T: kelvin {pub: in}; // parameters var kappa_1_NaK: fmol_per_sec {pub: in}; var kappa_2_NaK: fmol_per_sec {pub: in}; var kappa_3_NaK: fmol_per_sec {pub: in}; var kappa_4_NaK: fmol_per_sec {pub: in}; var kappa_5_NaK: fmol_per_sec {pub: in}; var kappa_6_NaK: fmol_per_sec {pub: in}; var kappa_7_NaK: fmol_per_sec {pub: in}; var kappa_8_NaK: fmol_per_sec {pub: in}; var kappa_9_NaK: fmol_per_sec {pub: in}; var kappa_10_NaK: fmol_per_sec {pub: in}; var kappa_11_NaK: fmol_per_sec {pub: in}; var kappa_12_NaK: fmol_per_sec {pub: in}; var kappa_13_NaK: fmol_per_sec {pub: in}; var kappa_14_NaK: fmol_per_sec {pub: in}; var kappa_15_NaK: fmol_per_sec {pub: in}; var K_1_NaK: per_fmol {pub: in}; var K_2_NaK: per_fmol {pub: in}; var K_3_NaK: per_fmol {pub: in}; var K_4_NaK: per_fmol {pub: in}; var K_5_NaK: per_fmol {pub: in}; var K_6_NaK: per_fmol {pub: in}; var K_7_NaK: per_fmol {pub: in}; var K_8_NaK: per_fmol {pub: in}; var K_9_NaK: per_fmol {pub: in}; var K_10_NaK: per_fmol {pub: in}; var K_11_NaK: per_fmol {pub: in}; var K_12_NaK: per_fmol {pub: in}; var K_13_NaK: per_fmol {pub: in}; var K_14_NaK: per_fmol {pub: in}; var K_15_NaK: per_fmol {pub: in}; var K_K_i: per_fmol {pub: in}; var K_K_o: per_fmol {pub: in}; var K_Na_i: per_fmol {pub: in}; var K_Na_o: per_fmol {pub: in}; var K_MgATP: per_fmol {pub: in}; var K_MgADP: per_fmol {pub: in}; var K_Pi: per_fmol {pub: in}; var K_H: per_fmol {pub: in}; // Input from global environment var q_1_NaK: fmol {pub: in}; var q_2_NaK: fmol {pub: in}; var q_3_NaK: fmol {pub: in}; var q_4_NaK: fmol {pub: in}; var q_5_NaK: fmol {pub: in}; var q_6_NaK: fmol {pub: in}; var q_7_NaK: fmol {pub: in}; var q_8_NaK: fmol {pub: in}; var q_9_NaK: fmol {pub: in}; var q_10_NaK: fmol {pub: in}; var q_11_NaK: fmol {pub: in}; var q_12_NaK: fmol {pub: in}; var q_13_NaK: fmol {pub: in}; var q_14_NaK: fmol {pub: in}; var q_15_NaK: fmol {pub: in}; var q_K_i: fmol {pub: in}; var q_K_o: fmol {pub: in}; var q_Na_i: fmol {pub: in}; var q_Na_o: fmol {pub: in}; var q_MgATP: fmol {pub: in}; var q_MgADP: fmol {pub: in}; var q_Pi: fmol {pub: in}; var q_H: fmol {pub: in}; // Constitutive parameters var mu_1_NaK: J_per_mol; var mu_2_NaK: J_per_mol; var mu_3_NaK: J_per_mol; var mu_4_NaK: J_per_mol; var mu_5_NaK: J_per_mol; var mu_6_NaK: J_per_mol; var mu_7_NaK: J_per_mol; var mu_8_NaK: J_per_mol; var mu_9_NaK: J_per_mol; var mu_10_NaK: J_per_mol; var mu_11_NaK: J_per_mol; var mu_12_NaK: J_per_mol; var mu_13_NaK: J_per_mol; var mu_14_NaK: J_per_mol; var mu_15_NaK: J_per_mol; var mu_K_i: J_per_mol; var mu_K_o: J_per_mol; var mu_Na_i: J_per_mol; var mu_Na_o: J_per_mol; var mu_MgATP: J_per_mol; var mu_MgADP: J_per_mol; var mu_Pi: J_per_mol; var mu_H: J_per_mol; var v_1_NaK: fmol_per_sec {pub: out}; var v_2_NaK: fmol_per_sec {pub: out}; var v_3_NaK: fmol_per_sec {pub: out}; var v_4_NaK: fmol_per_sec {pub: out}; var v_5_NaK: fmol_per_sec {pub: out}; var v_6_NaK: fmol_per_sec {pub: out}; var v_7_NaK: fmol_per_sec {pub: out}; var v_8_NaK: fmol_per_sec {pub: out}; var v_9_NaK: fmol_per_sec {pub: out}; var v_10_NaK: fmol_per_sec {pub: out}; var v_11_NaK: fmol_per_sec {pub: out}; var v_12_NaK: fmol_per_sec {pub: out}; var v_13_NaK: fmol_per_sec {pub: out}; var v_14_NaK: fmol_per_sec {pub: out}; var v_15_NaK: fmol_per_sec {pub: out}; mu_1_NaK = R*T*ln(K_1_NaK*q_1_NaK); mu_2_NaK = R*T*ln(K_2_NaK*q_2_NaK); mu_3_NaK = R*T*ln(K_3_NaK*q_3_NaK); mu_4_NaK = R*T*ln(K_4_NaK*q_4_NaK); mu_5_NaK = R*T*ln(K_5_NaK*q_5_NaK); mu_6_NaK = R*T*ln(K_6_NaK*q_6_NaK); mu_7_NaK = R*T*ln(K_7_NaK*q_7_NaK); mu_8_NaK = R*T*ln(K_8_NaK*q_8_NaK); mu_9_NaK = R*T*ln(K_9_NaK*q_9_NaK); mu_10_NaK = R*T*ln(K_10_NaK*q_10_NaK); mu_11_NaK = R*T*ln(K_11_NaK*q_11_NaK); mu_12_NaK = R*T*ln(K_12_NaK*q_12_NaK); mu_13_NaK = R*T*ln(K_13_NaK*q_13_NaK); mu_14_NaK = R*T*ln(K_14_NaK*q_14_NaK); mu_15_NaK = R*T*ln(K_15_NaK*q_15_NaK); mu_K_i = R*T*ln(K_K_i*q_K_i); mu_K_o = R*T*ln(K_K_o*q_K_o); mu_Na_i = R*T*ln(K_Na_i*q_Na_i); mu_Na_o = R*T*ln(K_Na_o*q_Na_o); mu_MgATP = R*T*ln(K_MgATP*q_MgATP); mu_MgADP = R*T*ln(K_MgADP*q_MgADP); mu_Pi = R*T*ln(K_Pi*q_Pi); mu_H = R*T*ln(K_H*q_H); v_1_NaK = ppp; v_2_NaK = ppp; v_3_NaK = ppp; v_4_NaK = ppp; v_5_NaK = ppp; v_6_NaK = ppp; v_7_NaK = ppp; v_8_NaK = ppp; v_9_NaK = ppp; v_10_NaK = ppp; v_11_NaK = ppp; v_12_NaK = ppp; v_13_NaK = ppp; v_14_NaK = ppp; v_15_NaK = ppp; enddef; def map between environment and NaK_pump for vars time and time; vars q_1_NaK and q_1_NaK; vars q_2_NaK and q_2_NaK; vars q_3_NaK and q_3_NaK; vars q_4_NaK and q_4_NaK; vars q_5_NaK and q_5_NaK; vars q_6_NaK and q_6_NaK; vars q_7_NaK and q_7_NaK; vars q_8_NaK and q_8_NaK; vars q_9_NaK and q_9_NaK; vars q_10_NaK and q_10_NaK; vars q_11_NaK and q_11_NaK; vars q_12_NaK and q_12_NaK; vars q_13_NaK and q_13_NaK; vars q_14_NaK and q_14_NaK; vars q_15_NaK and q_15_NaK; vars q_K_i and q_K_i; vars q_K_o and q_K_o; vars q_Na_i and q_Na_i; vars q_Na_o and q_Na_o; vars q_MgATP and q_MgATP; vars q_MgADP and q_MgADP; vars q_Pi and q_Pi; vars q_H and q_H; vars v_1_NaK and v_1_NaK; vars v_2_NaK and v_2_NaK; vars v_3_NaK and v_3_NaK; vars v_4_NaK and v_4_NaK; vars v_5_NaK and v_5_NaK; vars v_6_NaK and v_6_NaK; vars v_7_NaK and v_7_NaK; vars v_8_NaK and v_8_NaK; vars v_9_NaK and v_9_NaK; vars v_10_NaK and v_10_NaK; vars v_11_NaK and v_11_NaK; vars v_12_NaK and v_12_NaK; vars v_13_NaK and v_13_NaK; vars v_14_NaK and v_14_NaK; vars v_15_NaK and v_15_NaK; enddef; def map between NaK_pump and NaK_pump_parameters for vars kappa_1_NaK and kappa_1_NaK; vars kappa_2_NaK and kappa_2_NaK; vars kappa_3_NaK and kappa_3_NaK; vars kappa_4_NaK and kappa_4_NaK; vars kappa_5_NaK and kappa_5_NaK; vars kappa_6_NaK and kappa_6_NaK; vars kappa_7_NaK and kappa_7_NaK; vars kappa_8_NaK and kappa_8_NaK; vars kappa_9_NaK and kappa_9_NaK; vars kappa_10_NaK and kappa_10_NaK; vars kappa_11_NaK and kappa_11_NaK; vars kappa_12_NaK and kappa_12_NaK; vars kappa_13_NaK and kappa_13_NaK; vars kappa_14_NaK and kappa_14_NaK; vars kappa_15_NaK and kappa_15_NaK; vars K_1_NaK and K_1_NaK; vars K_2_NaK and K_2_NaK; vars K_3_NaK and K_3_NaK; vars K_4_NaK and K_4_NaK; vars K_5_NaK and K_5_NaK; vars K_6_NaK and K_6_NaK; vars K_7_NaK and K_7_NaK; vars K_8_NaK and K_8_NaK; vars K_9_NaK and K_9_NaK; vars K_10_NaK and K_10_NaK; vars K_11_NaK and K_11_NaK; vars K_12_NaK and K_12_NaK; vars K_13_NaK and K_13_NaK; vars K_14_NaK and K_14_NaK; vars K_15_NaK and K_15_NaK; vars K_K_i and K_K_i; vars K_K_o and K_K_o; vars K_Na_i and K_Na_i; vars K_Na_o and K_Na_o; vars K_MgATP and K_MgATP; vars K_MgADP and K_MgADP; vars K_Pi and K_Pi; vars K_H and K_H; enddef; def map between constants and NaK_pump for vars R and R; vars T and T; enddef; enddef;