//Created by libAntimony v2.4 model aslanidi_2009__environment(time_) // Variable initializations: time_ = ; end model aslanidi_2009__membrane(V, time_, i_Na, i_Na_L, i_Ca_L, i_Ca_T, i_to_1, i_to_2, i_Kr, i_Ks, i_K1, i_NaCa, i_NaK, i_Na_b, i_Ca_b, i_K_b, i_Cl_b, i_Ca_p, i_K_p) // Assignment Rules: i_stim := piecewise( stim_amplitude , ( geq(time_, stim_start)) && (time_ <= stim_end ), 0 ); i_tot := i_Na + i_Na_L + i_Ca_L + i_Ca_T + i_to_1 + i_to_2 + i_Kr + i_Ks + i_K1 + i_NaCa + i_NaK + i_Na_b + i_K_b + i_Ca_b + i_Cl_b + i_Ca_p + i_K_p; // Rate Rules: V' = -(i_tot + i_stim); // Variable initializations: V = -83.43812846286808; time_ = ; i_Na = ; i_Na_L = ; i_Ca_L = ; i_Ca_T = ; i_to_1 = ; i_to_2 = ; i_Kr = ; i_Ks = ; i_K1 = ; i_NaCa = ; i_NaK = ; i_Na_b = ; i_Ca_b = ; i_K_b = ; i_Cl_b = ; i_Ca_p = ; i_K_p = ; stim_start = 0; stim_end = 1; stim_amplitude = -80; end model aslanidi_2009__equilibrium_potentials(E_Na, E_K, E_Ca, E_Cl, E_Ks, Na_i, Na_o, Ca_i, Ca_o, K_i, K_o, Cl_i, Cl_o, R, F, T) // Assignment Rules: E_Na := ((R * T) / F) * ln(Na_o / Na_i); E_K := ((R * T) / F) * ln(K_o / K_i); E_Ca := ((R * T) / (2 * F)) * ln(Ca_o / Ca_i); E_Cl := ((- R * T) / F) * ln(Cl_o / Cl_i); E_Ks := ((R * T) / F) * ln((K_o + r_NaK * Na_o) / (K_i + r_NaK * Na_i)); // Variable initializations: r_NaK = 0.01833; Na_i = ; Na_o = ; Ca_i = ; Ca_o = ; K_i = ; K_o = ; Cl_i = ; Cl_o = ; R = ; F = ; T = ; end model aslanidi_2009__i_Na_m_gate(m, V, time_) // Assignment Rules: tau_m := 1 / (alpha_m + beta_m); m_infinity := alpha_m / (alpha_m + beta_m); alpha_m := (0.32 * (V + 47.13)) / (1 - exp(-(0.1) * (V + 47.13))); beta_m := 0.08 * exp(- V / 11); // Rate Rules: m' = (m_infinity - m) / tau_m; // Variable initializations: m = 0.002003390432234504; V = ; time_ = ; end model aslanidi_2009__i_Na_h_gate(h, V, time_) // Assignment Rules: tau_h := 1 / (alpha_h + beta_h); h_infinity := alpha_h / (alpha_h + beta_h); alpha_h := piecewise( 0.135 * exp((V + 80) / -(6.8)) , V < -(40) , 0 ); beta_h := piecewise( 3.56 * exp(0.079 * V) + 310000 * exp(0.35 * V) , V < -(40) , 1 / (0.13 * (1 + exp((V + 10.66) / -(11.1)))) ); // Rate Rules: h' = (h_infinity - h) / tau_h; // Variable initializations: h = 0.9786390933308567; V = ; time_ = ; end model aslanidi_2009__i_Na_j_gate(j, V, time_) // Assignment Rules: tau_j := 0.1 / (alpha_j + beta_j); j_infinity := (0.1 * alpha_j) / (alpha_j + beta_j); alpha_j := piecewise( ((-(127140) * exp(0.2444 * V) - 0.00003474 * exp(-(0.04391) * V)) * (V + 37.78)) / (1 + exp(0.311 * (V + 79.23))) , V < -(40) , 0 ); beta_j := piecewise( (0.1212 * exp(-(0.01052) * V)) / (1 + exp(-(0.1378) * (V + 40.14))) , V < -(40) , (0.3 * exp(-(0.0000002535) * V)) / (1 + exp(-(0.1) * (V + 32))) ); // Rate Rules: j' = (j_infinity - j) / tau_j; // Variable initializations: j = 0.09866447258167589; V = ; time_ = ; end model aslanidi_2009__i_Na(i_Na, time_, V, E_Na, m, h, j) // Sub-modules, and any changes to those submodules: i_Na_m_gate: aslanidi_2009__i_Na_m_gate(m, V, time_); i_Na_h_gate: aslanidi_2009__i_Na_h_gate(h, V, time_); i_Na_j_gate: aslanidi_2009__i_Na_j_gate(j, V, time_); // Assignment Rules: i_Na := g_Na * power(m, 3) * (0.8 * h + 0.2 * j) * (V - E_Na); // Variable initializations: g_Na = 8; E_Na = ; end model aslanidi_2009__i_Na_L_m_L_gate(m_L, V, time_) // Assignment Rules: tau_m_L := 1 / (alpha_m_L + beta_m_L); m_L_infinity := alpha_m_L / (alpha_m_L + beta_m_L); alpha_m_L := (0.32 * (V + 47.13)) / (1 - exp(-(0.1) * (V + 47.13))); beta_m_L := 0.08 * exp(- V / 11); // Rate Rules: m_L' = (m_L_infinity - m_L) / tau_m_L; // Variable initializations: m_L = 0.002003390432234504; V = ; time_ = ; end model aslanidi_2009__i_Na_L_h_L_gate(h_L, V, time_) // Assignment Rules: tau_h_L := 175 + 125 / (1 + exp(-(V + 25) / 6)); h_L_infinity := 1 / (1 + exp((V + 69) / 6.1)); // Rate Rules: h_L' = (h_L_infinity - h_L) / tau_h_L; // Variable initializations: h_L = 0.8946968372659203; V = ; time_ = ; end model aslanidi_2009__i_Na_L(i_Na_L, time_, V, E_Na, m_L, h_L) // Sub-modules, and any changes to those submodules: i_Na_L_m_L_gate: aslanidi_2009__i_Na_L_m_L_gate(m_L, V, time_); i_Na_L_h_L_gate: aslanidi_2009__i_Na_L_h_L_gate(h_L, V, time_); // Assignment Rules: i_Na_L := g_Na_L * power(m_L, 3) * h_L * (V - E_Na); // Variable initializations: g_Na_L = 0.037375; E_Na = ; end model aslanidi_2009__i_Ca_L_d_gate(d, V, time_) // Assignment Rules: d_infinity := 1 / (1 + exp(-(V - 4) / 6.74)); tau_d := 0.59 + (0.8 * exp(0.052 * (V + 13))) / (1 + exp(0.132 * (V + 13))); // Rate Rules: d' = (d_infinity - d) / tau_d; // Variable initializations: d = 0.000002322223865147363; V = ; time_ = ; end model aslanidi_2009__i_Ca_L_f_gate(f, V, time_) // Assignment Rules: f_infinity := 1 / (1 + exp((V + 18) / 10)); tau_f := 4 + 0.005 * power(V - 2.5, 2); // Rate Rules: f' = (f_infinity - f) / tau_f; // Variable initializations: f = 0.9985607329462358; V = ; time_ = ; end model aslanidi_2009__i_Ca_L_f2_gate(f2, V, time_) // Assignment Rules: f2_infinity := 1 / (1 + exp((V + 18) / 10)); tau_f2 := 38 + 0.07 * power(V - 18.6, 2); // Rate Rules: f2' = (f2_infinity - f2) / tau_f2; // Variable initializations: f2 = 0.8173435436674658; V = ; time_ = ; end model aslanidi_2009__i_Ca_L_f_Ca_gate(f_Ca, Ca_r, i_Ca_L, Ca_MK_act, km_Ca_MK, time_) // Assignment Rules: f_Ca_infinity := 0.3 / (1 - i_Ca_L / 0.05) + 0.55 / (1 + Ca_r / 0.003) + 0.15; tau_f_Ca := 0.5 + (10 * 1 * Ca_MK_act) / (1 * Ca_MK_act + km_Ca_MK) + 1 / (1 + Ca_r / 0.003); // Rate Rules: f_Ca' = (f_Ca_infinity - f_Ca) / tau_f_Ca; // Variable initializations: f_Ca = 0.9610551285529658; Ca_r = ; i_Ca_L = ; Ca_MK_act = ; km_Ca_MK = ; time_ = ; end model aslanidi_2009__i_Ca_L_f_Ca2_gate(f_Ca2, i_Ca_L, time_) // Assignment Rules: f_Ca2_infinity := 1 / (1 - i_Ca_L / 0.01); tau_f_Ca2 := 125 + 300 / (1 + exp((- i_Ca_L - 0.175) / 0.04)); // Rate Rules: f_Ca2' = (f_Ca2_infinity - f_Ca2) / tau_f_Ca2; // Variable initializations: f_Ca2 = 0.868690796671854; i_Ca_L = ; time_ = ; end model aslanidi_2009__i_Ca_L(i_Ca_L, g_Ca_L, i_Ca_L_max, z_Ca, gamma_Cai, gamma_Cao, time_, V, Ca_r, Ca_MK_act, km_Ca_MK, Ca_o, R, F, T, d, f, f2, f_Ca, f_Ca2, Cm) // Sub-modules, and any changes to those submodules: i_Ca_L_d_gate: aslanidi_2009__i_Ca_L_d_gate(d, V, time_); i_Ca_L_f_gate: aslanidi_2009__i_Ca_L_f_gate(f, V, time_); i_Ca_L_f2_gate: aslanidi_2009__i_Ca_L_f2_gate(f2, V, time_); i_Ca_L_f_Ca_gate: aslanidi_2009__i_Ca_L_f_Ca_gate(f_Ca, Ca_r, i_Ca_L, Ca_MK_act, km_Ca_MK, time_); i_Ca_L_f_Ca2_gate: aslanidi_2009__i_Ca_L_f_Ca2_gate(f_Ca2, i_Ca_L, time_); // Assignment Rules: i_Ca_L := g_Ca_L * d * f * f2 * f_Ca * f_Ca2 * i_Ca_L_max; i_Ca_L_max := (((((1 * p_Ca) / Cm) * power(z_Ca, 2) * (V - 15) * power(F, 2)) / (R * T)) * (gamma_Cai * Ca_r * exp((z_Ca * F * (V - 15)) / (R * T)) - gamma_Cao * Ca_o)) / (exp((z_Ca * F * (V - 15)) / (R * T)) - 1); // Variable initializations: g_Ca_L = 0.3392328; p_Ca = 0.000243; z_Ca = ; gamma_Cai = ; gamma_Cao = ; Ca_o = ; R = ; F = ; T = ; Cm = ; end model aslanidi_2009__i_Ca_T_b_gate(b, V, time_) // Assignment Rules: tau_b := 1 / (alpha_b + beta_b); b_infinity := 1 / (1 + exp(-(V + 33) / 6.1)); alpha_b := 1.068 * exp((V + 16.3) / 30); beta_b := 1.068 * exp(-(V + 16.3) / 30); // Rate Rules: b' = (b_infinity - b) / tau_b; // Variable initializations: b = 0.0002563937630984438; V = ; time_ = ; end model aslanidi_2009__i_Ca_T_g_gate(g, V, time_) // Assignment Rules: tau_g := 1 / (alpha_g + beta_g); g_infinity := 1 / (1 + exp((V + 60) / 6.6)); alpha_g := 0.015 * exp(-(V + 71.7) / 83.3); beta_g := 0.015 * exp((V + 71.7) / 15.4); // Rate Rules: g' = (g_infinity - g) / tau_g; // Variable initializations: g = 0.9720432601848331; V = ; time_ = ; end model aslanidi_2009__i_Ca_T(i_Ca_T, time_, V, b, g) // Sub-modules, and any changes to those submodules: i_Ca_T_b_gate: aslanidi_2009__i_Ca_T_b_gate(b, V, time_); i_Ca_T_g_gate: aslanidi_2009__i_Ca_T_g_gate(g, V, time_); // Assignment Rules: i_Ca_T := g_Ca_T * b * g * (V - 50); // Variable initializations: g_Ca_T = 0.13; end model aslanidi_2009__i_to_1_a_gate(a, V, time_) // Assignment Rules: alpha_a := (25 * exp((V - 76) / 20)) / (1 + exp((V - 76) / 20)); beta_a := (25 * exp(-(V + 54) / 20)) / (1 + exp(-(V + 54) / 20)); tau_a := 1 / (alpha_a + beta_a); a_infinity := alpha_a / (alpha_a + beta_a); // Rate Rules: a' = (a_infinity - a) / tau_a; // Variable initializations: a = 0.0004238729429342389; V = ; time_ = ; end model aslanidi_2009__i_to_1_i_gate(i, V, time_) // Assignment Rules: alpha_i := 0.03 / (1 + exp((V + 25) / 15)); beta_i := (0.1 * exp((V - 40) / 15)) / (1 + exp((V - 40) / 15)); tau_i := 6 + 5 / (1 + exp((V - 16.5) / 10)); i_infinity := alpha_i / (alpha_i + beta_i); // Rate Rules: i' = (i_infinity - i) / tau_i; // Variable initializations: i = 0.9990935802459496; V = ; time_ = ; end model aslanidi_2009__i_to_1_i2_gate(i2, V, time_) // Assignment Rules: alpha_i2 := 0.00442 / (1 + exp((V + 26) / 15)); beta_i2 := (0.05 * exp((V - 10) / 15)) / (1 + exp((V - 10) / 15)); tau_i2 := 21.5 + 30 / (1 + exp((V - 25) / 10)); i2_infinity := alpha_i2 / (alpha_i2 + beta_i2); // Rate Rules: i2' = (i2_infinity - i2) / tau_i2; // Variable initializations: i2 = 0.9777368439681764; V = ; time_ = ; end model aslanidi_2009__i_to_1(i_to_1, E_K, time_, V, a, i, i2) // Sub-modules, and any changes to those submodules: i_to_1_a_gate: aslanidi_2009__i_to_1_a_gate(a, V, time_); i_to_1_i_gate: aslanidi_2009__i_to_1_i_gate(i, V, time_); i_to_1_i2_gate: aslanidi_2009__i_to_1_i2_gate(i2, V, time_); // Assignment Rules: i_to_1 := g_to_1 * a * (0.8 * i + 0.2 * i2) * (V - E_K); // Variable initializations: g_to_1 = 0.14135944; E_K = ; end model aslanidi_2009__i_Kr_xr_gate(xr, V, time_) // Assignment Rules: tau_xr := 900 / (1 + exp(V / 5)) + 100; xr_infinity := 1 / (1 + exp(-(V + 0.085) / 12.25)); // Rate Rules: xr' = (xr_infinity - xr) / tau_xr; // Variable initializations: xr = 0.07084939408222911; V = ; time_ = ; end model aslanidi_2009__i_Kr(i_Kr, time_, V, E_K, K_o, xr) // Sub-modules, and any changes to those submodules: i_Kr_xr_gate: aslanidi_2009__i_Kr_xr_gate(xr, V, time_); // Assignment Rules: i_Kr := g_Kr * xr * rr_infinity * (V - E_K); g_Kr := 0.040008488 * root(K_o / 5.4); rr_infinity := 1 / (1 + exp((V - 5.4) / 20.4)); // Variable initializations: E_K = ; K_o = ; end model aslanidi_2009__i_Ks_xs1_gate(xs1, V, time_) // Assignment Rules: tau_xs1 := 1 / ((0.0000761 * (V + 44.6)) / (1 - exp(-(9.97) * (V + 44.6))) + (0.00036 * (V - 0.55)) / (exp(0.128 * (V - 0.55)) - 1)); xs1_infinity := 1 / (1 + exp(-(V - 9) / 13.7)); // Rate Rules: xs1' = (xs1_infinity - xs1) / tau_xs1; // Variable initializations: xs1 = 0.0011737654433043125; V = ; time_ = ; end model aslanidi_2009__i_Ks_xs2_gate(xs2, V, time_) // Assignment Rules: tau_xs2 := (2 * 1) / ((0.0000761 * (V + 44.6)) / (1 - exp(-(9.97) * (V + 44.6))) + (0.00036 * (V - 0.55)) / (exp(0.128 * (V - 0.55)) - 1)); xs2_infinity := 1 / (1 + exp(-(V - 9) / 13.7)); // Rate Rules: xs2' = (xs2_infinity - xs2) / tau_xs2; // Variable initializations: xs2 = 0.001179442867470093; V = ; time_ = ; end model aslanidi_2009__i_Ks(i_Ks, time_, V, E_Ks, Ca_i, xs1, xs2) // Sub-modules, and any changes to those submodules: i_Ks_xs1_gate: aslanidi_2009__i_Ks_xs1_gate(xs1, V, time_); i_Ks_xs2_gate: aslanidi_2009__i_Ks_xs2_gate(xs2, V, time_); // Assignment Rules: i_Ks := g_Ks * xs1 * xs2 * (V - E_Ks); g_Ks := 0.052581329 * (1 + 0.6 / (1 + power(0.000038 / Ca_i, 1.4))); // Variable initializations: E_Ks = ; Ca_i = ; end model aslanidi_2009__i_K1_xK1_gate(xK1, V, E_K) // Assignment Rules: xK1 := alpha_xK1 / (alpha_xK1 + beta_xK1); alpha_xK1 := 1.02 / (1 + exp(0.2385 * (V - (E_K + 59.215)))); beta_xK1 := (0.49124 * exp(0.08032 * ((V + 5.476) - E_K)) + exp(0.06175 * (V - (594.31 + E_K)))) / (1 + exp(-(0.5143) * ((V + 4.753) - E_K))); // Variable initializations: V = ; E_K = ; end model aslanidi_2009__i_K1(i_K1, time_, V, E_K, K_o, xK1) // Sub-modules, and any changes to those submodules: i_K1_xK1_gate: aslanidi_2009__i_K1_xK1_gate(xK1, V, E_K); // Assignment Rules: i_K1 := (g_K1 * xK1 + 0.004) * (V - E_K); g_K1 := 0.25 * root(K_o / 5.4); // Variable initializations: time_ = ; K_o = ; end model aslanidi_2009__i_K_p(i_K_p, V, E_K, time_) // Assignment Rules: i_K_p := g_K_p * kp * (V - E_K); kp := 1 / (1 + exp((7.488 - V) / 5.98)); // Variable initializations: g_K_p = 0.00276; V = ; E_K = ; time_ = ; end model aslanidi_2009__i_to_2_a_gate(a, Ca_r, time_) // Assignment Rules: a_infinity := 1 / (1 + km_to_2 / Ca_r); tau_a := 1; // Rate Rules: a' = (a_infinity - a) / tau_a; // Variable initializations: a = 0.0014909437525000811; km_to_2 = 0.1502; Ca_r = ; time_ = ; end model aslanidi_2009__i_to_2(i_to_2, time_, V, Ca_r, Cl_i, Cl_o, R, F, T, a, Cm) // Sub-modules, and any changes to those submodules: i_to_2_a_gate: aslanidi_2009__i_to_2_a_gate(a, Ca_r, time_); // Assignment Rules: i_to_2 := 20 * i_to_2_max * a; i_to_2_max := (((((1 * p_Cl) / Cm) * power(z_Cl, 2) * V * power(F, 2)) / (R * T)) * (Cl_i - Cl_o * exp((- z_Cl * V * F) / (R * T)))) / (1 - exp((- z_Cl * V * F) / (R * T))); // Variable initializations: p_Cl = 0.0000004; z_Cl = -1; V = ; Cl_i = ; Cl_o = ; R = ; F = ; T = ; Cm = ; end model aslanidi_2009__i_NaCa(i_NaCa, V, R, T, F, Na_i, Na_o, Ca_i, Ca_o) // Assignment Rules: i_NaCa := (X_NaCa * i_NaCa_max * power(Na_i, 3) * Ca_o * exp((0.35 * F * V) / (R * T)) - 1.5 * power(Na_o, 3) * Ca_i * exp((-(0.65) * F * V) / (R * T))) / ((1 + power(km_Ca_act / (1.5 * Ca_i), 2)) * (1 + k_sat * exp((-(0.65) * V * F) / (R * T))) * (dNaCa_1 + dNaCa_2)); dNaCa_1 := km_Ca_o * power(Na_i, 3) + 1.5 * power(km_Na_o, 3) * Ca_i + power(km_Na_i_1, 3) * Ca_o * (1 + (1.5 * Ca_i) / km_Ca_i); dNaCa_2 := km_Ca_i * power(Na_o, 3) * (1 + Na_i / km_Na_i_1) + power(Na_i, 3) * Ca_o + 1.5 * power(Na_o, 3) * Ca_i; // Variable initializations: X_NaCa = 0.4; i_NaCa_max = 4.5; km_Na_i_1 = 12.3; km_Na_o = 87.5; km_Ca_i = 0.0036; km_Ca_o = 1.3; km_Ca_act = 0.000125; k_sat = 0.27; V = ; R = ; T = ; F = ; Na_i = ; Na_o = ; Ca_i = ; Ca_o = ; end model aslanidi_2009__i_NaK(i_NaK, K_o, Na_i, Na_o, V, R, T, F) // Assignment Rules: i_NaK := (((g_NaK * f_NaK * 1) / (1 + power(km_Na_i_2 / Na_i, 2))) * K_o) / (K_o + km_K_o); f_NaK := 1 / (1 + 0.1245 * exp((-(0.1) * F * V) / (R * T)) + 0.0365 * sigma * exp((- F * V) / (R * T))); sigma := (1 / 7) * (exp(Na_o / 67.3) - 1); // Variable initializations: g_NaK = 0.61875; km_Na_i_2 = 10; km_K_o = 1.5; K_o = ; Na_i = ; Na_o = ; V = ; R = ; T = ; F = ; end model aslanidi_2009__i_Ca_p(i_Ca_p, Ca_i) // Assignment Rules: i_Ca_p := (i_Ca_p_max * Ca_i) / (km_Ca_p + Ca_i); // Variable initializations: i_Ca_p_max = 0.0575; km_Ca_p = 0.0005; Ca_i = ; end model aslanidi_2009__CT_K_Cl(CT_K_Cl, E_K, E_Cl) // Assignment Rules: CT_K_Cl := (CT_K_Cl_max * (E_K - E_Cl)) / ((E_K + 87.8251) - E_Cl); // Variable initializations: CT_K_Cl_max = 7.0756e-6; E_K = ; E_Cl = ; end model aslanidi_2009__CT_Na_Cl(CT_Na_Cl, E_Na, E_Cl) // Assignment Rules: CT_Na_Cl := (CT_Na_Cl_max * power(E_Na - E_Cl, 4)) / (power(E_Na - E_Cl, 4) + power(87.8251, 4)); // Variable initializations: CT_Na_Cl_max = 9.8443e-6; E_Na = ; E_Cl = ; end model aslanidi_2009__background_currents(i_Na_b, i_Ca_b, i_K_b, i_Cl_b, z_Ca, gamma_Cai, gamma_Cao, E_K, E_Cl, E_Na, V, Ca_i, Ca_o, R, F, T, Cm) // Assignment Rules: i_Na_b := g_Na_b * (V - E_Na); i_Ca_b := (((((1 * p_Ca_b) / Cm) * power(z_Ca, 2) * V * power(F, 2)) / (R * T)) * (gamma_Cai * Ca_i * exp((z_Ca * V * F) / (R * T)) - gamma_Cao * Ca_o)) / (exp((z_Ca * V * F) / (R * T)) - 1); i_K_b := g_K_b * (V - E_K); i_Cl_b := g_Cl_b * (V - E_Cl); // Variable initializations: g_Na_b = 0.0025; g_K_b = 0.005; p_Ca_b = 1.995084e-7; g_Cl_b = 0.000225; z_Ca = ; gamma_Cai = ; gamma_Cao = ; E_K = ; E_Cl = ; E_Na = ; V = ; Ca_i = ; Ca_o = ; R = ; F = ; T = ; Cm = ; end model aslanidi_2009__intracellular_ion_concentrations(Na_i, Cl_i, K_i, Vol_myo, a_cap, time_, F, i_NaK, i_NaCa, i_Na_b, i_Na, i_Na_L, i_K1, i_to_1, i_to_2, i_Kr, i_Ks, i_K_p, i_K_b, i_Cl_b, CT_Na_Cl, CT_K_Cl, Cm) // Rate Rules: Na_i' = (- Cm * (i_Na + i_Na_L + i_Na_b + 3 * i_NaK + 3 * i_NaCa) * a_cap) / (Vol_myo * F) + CT_Na_Cl; Cl_i' = (- Cm * (i_to_2 + i_Cl_b) * a_cap) / (Vol_myo * F) + CT_Na_Cl + CT_K_Cl; K_i' = (- Cm * ((i_to_1 + i_K1 + i_Kr + i_Ks + i_K_p + i_K_b) - 2 * i_NaK) * a_cap) / (Vol_myo * F) + CT_K_Cl; // Variable initializations: Na_i = 9.927155552932733; Cl_i = 18.904682470140408; K_i = 141.9670801746057; Vol_myo = ; a_cap = ; time_ = ; F = ; i_NaK = ; i_NaCa = ; i_Na_b = ; i_Na = ; i_Na_L = ; i_K1 = ; i_to_1 = ; i_to_2 = ; i_Kr = ; i_Ks = ; i_K_p = ; i_K_b = ; i_Cl_b = ; CT_Na_Cl = ; CT_K_Cl = ; Cm = ; end model aslanidi_2009__Ca_i(Ca_i, Vol_myo, Vol_nsr, Vol_ss, a_cap, time_, F, i_NaCa, i_Ca_b, i_Ca_p, q_up, q_leak, q_diff, Cm) // Assignment Rules: TRPN := (2 * TRPN_max * Ca_i) / power(Ca_i + km_TRPN, 2); CMDN := (2 * CMDN_max * Ca_i) / power(Ca_i + km_CMDN, 2); b_myo := 1 / (1 + TRPN + CMDN); // Rate Rules: Ca_i' = - b_myo * (((Cm * ((i_Ca_b + i_Ca_p) - 2 * i_NaCa) * a_cap) / (2 * Vol_myo * F) + ((q_up - q_leak) * Vol_nsr) / Vol_myo) - (q_diff * Vol_ss) / Vol_myo); // Variable initializations: Ca_i = 0.00022355433459434943; km_TRPN = 0.0005; km_CMDN = 0.00238; TRPN_max = 0.07; CMDN_max = 0.05; Vol_myo = ; Vol_nsr = ; Vol_ss = ; a_cap = ; time_ = ; F = ; i_NaCa = ; i_Ca_b = ; i_Ca_p = ; q_up = ; q_leak = ; q_diff = ; Cm = ; end model aslanidi_2009__Ca_MK_act(Ca_MK_act, km_Ca_MK, time_, Ca_r) // Assignment Rules: Ca_MK_act := Ca_MK_bound + Ca_MK_trap; Ca_MK_bound := (Ca_MK_0 * (1 - Ca_MK_trap)) / (1 + km_Ca_MK / Ca_r); // Rate Rules: Ca_MK_trap' = alpha_Ca_MK * Ca_MK_bound * (Ca_MK_bound + Ca_MK_trap) - beta_Ca_MK * Ca_MK_trap; // Variable initializations: km_Ca_MK = 0.15; Ca_MK_trap = 0.000008789168284782809; alpha_Ca_MK = 0.05; beta_Ca_MK = 0.00068; Ca_MK_0 = 0.05; time_ = ; Ca_r = ; end model aslanidi_2009__Ca_NSR(Ca_NSR, Vol_jsr, Vol_nsr, q_up, q_leak, q_tr, time_) // Rate Rules: Ca_NSR' = q_up - (q_leak + (q_tr * Vol_jsr) / Vol_nsr); // Variable initializations: Ca_NSR = 1.2132524695849454; Vol_jsr = ; Vol_nsr = ; q_up = ; q_leak = ; q_tr = ; time_ = ; end model aslanidi_2009__Ca_JSR(Ca_JSR, Vol_jsr, Vol_nsr, q_tr, q_rel, time_) // Rate Rules: Ca_JSR' = (q_tr - q_rel) / (1 + (CSQN_max * km_CSQN) / power(km_CSQN + Ca_JSR, 2)); // Variable initializations: Ca_JSR = 1.1433050636518596; CSQN_max = 10; km_CSQN = 0.8; Vol_jsr = ; Vol_nsr = ; q_tr = ; q_rel = ; time_ = ; end model aslanidi_2009__Ca_r(Ca_r, q_diff, Vol_jsr, Vol_ss, a_cap, z_Ca, time_, F, i_Ca_L, q_rel, Ca_i, Cm) // Assignment Rules: q_diff := (Ca_r - Ca_i) / tau_ss; b_SR := (2 * b_SR_max * Ca_r) / power(Ca_r + km_b_SR, 2); b_SL := (2 * b_SL_max * Ca_r) / power(Ca_r + km_b_SL, 2); Ca_r_tot := 1 / (1 + b_SR + b_SL); // Rate Rules: Ca_r' = Ca_r_tot * (((- Cm * i_Ca_L * a_cap) / (Vol_ss * z_Ca * F) + (q_rel * Vol_jsr) / Vol_ss) - q_diff); // Variable initializations: Ca_r = 0.00022418117117903934; km_b_SR = 0.00087; km_b_SL = 0.0087; b_SR_max = 0.047; b_SL_max = 1.124; tau_ss = 0.2; Vol_jsr = ; Vol_ss = ; a_cap = ; z_Ca = ; time_ = ; F = ; i_Ca_L = ; q_rel = ; Ca_i = ; Cm = ; end model aslanidi_2009__q_rel_ri_gate(ri, Ca_r, Ca_MK_act, km_Ca_MK, i_Ca_L, time_) // Assignment Rules: tau_ri := (350 - tau_Ca_MK) / (1 + exp(((Ca_r - 0.003) + 0.003 * Ca_fac) / 0.0002)) + 3 + tau_Ca_MK; tau_Ca_MK := (tau_Ca_MK_max * 1 * Ca_MK_act) / (km_Ca_MK + 1 * Ca_MK_act); Ca_fac := 1 / (1 + exp((i_Ca_L + 0.05) / 0.015)); ri_infinity := 1 / (1 + exp(((Ca_r - 0.0004) + 0.002 * Ca_fac) / 0.000025)); // Rate Rules: ri' = (ri_infinity - ri) / tau_ri; // Variable initializations: ri = 0.7802870066567904; tau_Ca_MK_max = 10; Ca_r = ; Ca_MK_act = ; km_Ca_MK = ; i_Ca_L = ; time_ = ; end model aslanidi_2009__q_rel_ro_gate(ro, Ca_r, Ca_JSR, i_Ca_L, time_) // Assignment Rules: ro_infinity := (ro_infinity_JSR * power(i_Ca_L, 2)) / (power(i_Ca_L, 2) + 1); ro_infinity_JSR := power(Ca_JSR, 1.9) / (power(Ca_JSR, 1.9) + power((49.28 * Ca_r) / (Ca_r + 0.0028), 1.9)); // Rate Rules: ro' = (ro_infinity - ro) / tau_ro; // Variable initializations: ro = 1.2785734760674763e-9; tau_ro = 3; Ca_r = ; Ca_JSR = ; i_Ca_L = ; time_ = ; end model aslanidi_2009__q_rel(q_rel, time_, Ca_MK_act, km_Ca_MK, Ca_r, Ca_JSR, i_Ca_L, i_Ca_L_max, g_Ca_L, ri, ro) // Sub-modules, and any changes to those submodules: q_rel_ri_gate: aslanidi_2009__q_rel_ri_gate(ri, Ca_r, Ca_MK_act, km_Ca_MK, i_Ca_L, time_); q_rel_ro_gate: aslanidi_2009__q_rel_ro_gate(ro, Ca_r, Ca_JSR, i_Ca_L, time_); // Assignment Rules: q_rel := g_rel * ro * ri * (Ca_JSR - Ca_r); g_rel := 3000 * vg; vg := 1 / (1 + exp((g_Ca_L * i_Ca_L_max + 13) / 5)); // Variable initializations: i_Ca_L_max = ; g_Ca_L = ; end model aslanidi_2009__q_leak(q_leak, Ca_NSR) // Assignment Rules: q_leak := (q_leak_max * Ca_NSR) / NSR_max; // Variable initializations: q_leak_max = 0.004375; NSR_max = 15; Ca_NSR = ; end model aslanidi_2009__q_up(q_up, Ca_MK_act, km_Ca_MK, Ca_i) // Assignment Rules: q_up := (X_q_up * (dq_up_Ca_MK + 1) * q_up_max * Ca_i) / ((Ca_i + km_up) - dkm_plb); dq_up_Ca_MK := (dq_up_Ca_MK_max * Ca_MK_act * 1) / (km_Ca_MK + Ca_MK_act * 1); dkm_plb := (dkm_plb_max * Ca_MK_act * 1) / (km_Ca_MK + Ca_MK_act * 1); // Variable initializations: X_q_up = 0.5; q_up_max = 0.004375; dq_up_Ca_MK_max = 0.75; dkm_plb_max = 0.00017; km_up = 0.00092; Ca_MK_act = ; km_Ca_MK = ; Ca_i = ; end model aslanidi_2009__q_tr(q_tr, Ca_NSR, Ca_JSR) // Assignment Rules: q_tr := (Ca_NSR - Ca_JSR) / tau_tr; // Variable initializations: tau_tr = 120; Ca_NSR = ; Ca_JSR = ; end model aslanidi_2009__model_parameters(Na_o, Ca_o, K_o, Cl_o, R, T, F, z_Ca, gamma_Cai, gamma_Cao, Vol_myo, Vol_jsr, Vol_nsr, Vol_ss, a_cap, Vol_cell, Cm) // Assignment Rules: Vol_myo := Vol_cell * 0.68; Vol_jsr := Vol_cell * 0.0048; Vol_nsr := Vol_cell * 0.0552; Vol_ss := Vol_cell * 0.02; a_cap := rcg * a_geo; a_geo := 2 * 3.14 * power(radius, 2) + 2 * 3.14 * radius * length; // Variable initializations: Na_o = 140; Ca_o = 1.8; K_o = 5.4; Cl_o = 100; R = 8314; T = 310; F = 96485; z_Ca = 2; gamma_Cai = 1; gamma_Cao = 0.341; Vol_cell = 0.3454; radius = 0.0011; rcg = 2; Cm = 1; // Unit definitions: unit length = metre; end model *aslanidi_2009____main() // Sub-modules, and any changes to those submodules: environment: aslanidi_2009__environment(time_); membrane: aslanidi_2009__membrane(V, time_, i_Na0, i_Na_L0, i_Ca_L0, i_Ca_T0, i_to_10, i_to_20, i_Kr0, i_Ks0, i_K10, i_NaCa0, i_NaK0, i_Na_b, i_Ca_b, i_K_b, i_Cl_b, i_Ca_p0, i_K_p0); equilibrium_potentials: aslanidi_2009__equilibrium_potentials(E_Na, E_K, E_Ca, E_Cl, E_Ks, Na_i, Na_o, Ca_i0, Ca_o, K_i, K_o, Cl_i, Cl_o, R, F, T); i_Na: aslanidi_2009__i_Na(i_Na0, time_, V, E_Na, m, h, j); i_Na_L: aslanidi_2009__i_Na_L(i_Na_L0, time_, V, E_Na, m_L, h_L); i_Ca_L: aslanidi_2009__i_Ca_L(i_Ca_L0, g_Ca_L, i_Ca_L_max, z_Ca, gamma_Cai, gamma_Cao, time_, V, Ca_r0, Ca_MK_act0, km_Ca_MK, Ca_o, R, F, T, d, f, f2, f_Ca, f_Ca2, Cm); i_Ca_T: aslanidi_2009__i_Ca_T(i_Ca_T0, time_, V, b, g); i_to_1: aslanidi_2009__i_to_1(i_to_10, E_K, time_, V, a, i, i2); i_Kr: aslanidi_2009__i_Kr(i_Kr0, time_, V, E_K, K_o, xr); i_Ks: aslanidi_2009__i_Ks(i_Ks0, time_, V, E_Ks, Ca_i0, xs1, xs2); i_K1: aslanidi_2009__i_K1(i_K10, time_, V, E_K, K_o, xK1); i_K_p: aslanidi_2009__i_K_p(i_K_p0, V, E_K, time_); i_to_2: aslanidi_2009__i_to_2(i_to_20, time_, V, Ca_r0, Cl_i, Cl_o, R, F, T, a0, Cm); i_NaCa: aslanidi_2009__i_NaCa(i_NaCa0, V, R, T, F, Na_i, Na_o, Ca_i0, Ca_o); i_NaK: aslanidi_2009__i_NaK(i_NaK0, K_o, Na_i, Na_o, V, R, T, F); i_Ca_p: aslanidi_2009__i_Ca_p(i_Ca_p0, Ca_i0); CT_K_Cl: aslanidi_2009__CT_K_Cl(CT_K_Cl0, E_K, E_Cl); CT_Na_Cl: aslanidi_2009__CT_Na_Cl(CT_Na_Cl0, E_Na, E_Cl); background_currents: aslanidi_2009__background_currents(i_Na_b, i_Ca_b, i_K_b, i_Cl_b, z_Ca, gamma_Cai, gamma_Cao, E_K, E_Cl, E_Na, V, Ca_i0, Ca_o, R, F, T, Cm); intracellular_ion_concentrations: aslanidi_2009__intracellular_ion_concentrations(Na_i, Cl_i, K_i, Vol_myo, a_cap, time_, F, i_NaK0, i_NaCa0, i_Na_b, i_Na0, i_Na_L0, i_K10, i_to_10, i_to_20, i_Kr0, i_Ks0, i_K_p0, i_K_b, i_Cl_b, CT_Na_Cl0, CT_K_Cl0, Cm); Ca_i: aslanidi_2009__Ca_i(Ca_i0, Vol_myo, Vol_nsr, Vol_ss, a_cap, time_, F, i_NaCa0, i_Ca_b, i_Ca_p0, q_up0, q_leak0, q_diff, Cm); Ca_MK_act: aslanidi_2009__Ca_MK_act(Ca_MK_act0, km_Ca_MK, time_, Ca_r0); Ca_NSR: aslanidi_2009__Ca_NSR(Ca_NSR0, Vol_jsr, Vol_nsr, q_up0, q_leak0, q_tr0, time_); Ca_JSR: aslanidi_2009__Ca_JSR(Ca_JSR0, Vol_jsr, Vol_nsr, q_tr0, q_rel0, time_); Ca_r: aslanidi_2009__Ca_r(Ca_r0, q_diff, Vol_jsr, Vol_ss, a_cap, z_Ca, time_, F, i_Ca_L0, q_rel0, Ca_i0, Cm); q_rel: aslanidi_2009__q_rel(q_rel0, time_, Ca_MK_act0, km_Ca_MK, Ca_r0, Ca_JSR0, i_Ca_L0, i_Ca_L_max, g_Ca_L, ri, ro); q_leak: aslanidi_2009__q_leak(q_leak0, Ca_NSR0); q_up: aslanidi_2009__q_up(q_up0, Ca_MK_act0, km_Ca_MK, Ca_i0); q_tr: aslanidi_2009__q_tr(q_tr0, Ca_NSR0, Ca_JSR0); model_parameters: aslanidi_2009__model_parameters(Na_o, Ca_o, K_o, Cl_o, R, T, F, z_Ca, gamma_Cai, gamma_Cao, Vol_myo, Vol_jsr, Vol_nsr, Vol_ss, a_cap, Vol_cell, Cm); end