//Created by libAntimony v2.4 // Warnings from automatic translation: // Unable to use the formula "(L_totmax - LR) - LRG" to set the assignment rule for L: Loop detected: L's definition ((L_totmax - LR) - LRG) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). // Unable to use the formula "((b1_AR_tot - LR) - LRG) - RG" to set the assignment rule for R: Loop detected: R's definition (((b1_AR_tot - LR) - LRG) - RG) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). // Unable to use the formula "(Gs_tot - LRG) - RG" to set the assignment rule for Gs: Loop detected: Gs's definition ((Gs_tot - LRG) - RG) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). // Unable to use the formula "Gs_agtp_tot - Gsa_GTP_AC" to set the assignment rule for Gsa_GTP: Loop detected: Gsa_GTP's definition (Gs_agtp_tot - Gsa_GTP_AC) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). // Unable to use the formula "Fsk_tot - Fsk_AC" to set the assignment rule for Fsk: Loop detected: Fsk's definition (Fsk_tot - Fsk_AC) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). // Unable to use the formula "AC_tot - Gsa_GTP_AC" to set the assignment rule for AC: Loop detected: AC's definition (AC_tot - Gsa_GTP_AC) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). // Unable to use the formula "PDE_tot - PDE_IBMX" to set the assignment rule for PDE: Loop detected: PDE's definition (PDE_tot - PDE_IBMX) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). // Unable to use the formula "IBMX_tot - PDE_IBMX" to set the assignment rule for IBMX: Loop detected: IBMX's definition (IBMX_tot - PDE_IBMX) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). // Unable to use the formula "(cAMP_tot - (ARC_I + 2 * A2RC_I + 2 * A2R_I)) - (ARC_II + 2 * A2RC_II + 2 * A2R_II)" to set the assignment rule for cAMP: Loop detected: cAMP's definition ((cAMP_tot - (ARC_I + 2 * A2RC_I + 2 * A2R_I)) - (ARC_II + 2 * A2RC_II + 2 * A2R_II)) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). // Unable to translate the equation "0 = 2 * PKAI_tot * power(cAMP, 2) - PKAC_I * (1 + PKI / Ki_pki) * (PKA_temp * PKAC_I + power(cAMP, 2))" because Antimony does not handle algebraic rules. // Unable to translate the equation "0 = 2 * PKAII_tot * power(cAMP, 2) - PKAC_II * (1 + PKI / Ki_pki) * (PKA_temp * PKAC_II + power(cAMP, 2))" because Antimony does not handle algebraic rules. // Unable to use the formula "Inhib1p_tot - Inhib1p_PP1" to set the assignment rule for Inhib1p: Loop detected: Inhib1p's definition (Inhib1p_tot - Inhib1p_PP1) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). // Unable to use the formula "PP1_tot - Inhib1p_PP1" to set the assignment rule for PP1: Loop detected: PP1's definition (PP1_tot - Inhib1p_PP1) either includes itself directly (i.e. 's5 := 6 + s5') or by proxy (i.e. 's5 := 8*d3' and 'd3 := 9*s5'). model saucerman_brunton_michailova_mcculloch_2003__environment(time_, protocol) // Variable initializations: time_ = ; protocol = 0; end model saucerman_brunton_michailova_mcculloch_2003__b1_AR_Gs_parameters(L_totmax, sum_b1_AR, Gs_tot, Kl, Kr, Kc, k_bar_kp, k_bar_km, k_p_kap, k_p_kam, k_g_act, k_hyd, k_reassoc) // Variable initializations: L_totmax = 1; sum_b1_AR = 0.0132; Gs_tot = 3.83; Kl = 0.285; Kr = 0.062; Kc = 33; k_bar_kp = 1.1e-3; k_bar_km = 2.2e-3; k_p_kap = 3.6e-3; k_p_kam = 2.2e-3; k_g_act = 16; k_hyd = 0.8; k_reassoc = 1.21e3; end model saucerman_brunton_michailova_mcculloch_2003__cAMP_parameters(AC_tot, ATP, PDE_tot, IBMX_tot, Fsk_tot, k_ac_basal, k_ac_gsa, k_ac_fsk, k_pde, Km_basal, Km_gsa, Km_fsk, Km_pde, K_gsa, K_fsk, Ki_ibmx) // Variable initializations: AC_tot = 49.7e-3; ATP = 5e3; PDE_tot = 38.9e-3; IBMX_tot = 0; Fsk_tot = 0; k_ac_basal = 0.2; k_ac_gsa = 8.5; k_ac_fsk = 7.3; k_pde = 5; Km_basal = 1.03e3; Km_gsa = 315; Km_fsk = 860; Km_pde = 1.3; K_gsa = 0.4; K_fsk = 44; Ki_ibmx = 30; end model saucerman_brunton_michailova_mcculloch_2003__PKA_parameters(PKAI_tot, PKAII_tot, PKI_tot, K_a, K_b, K_d, Ki_pki) // Variable initializations: PKAI_tot = 0.59; PKAII_tot = 0.025; PKI_tot = 0.18; K_a = 9.14; K_b = 1.64; K_d = 4.375; Ki_pki = 0.2e-3; end model saucerman_brunton_michailova_mcculloch_2003__PLB_parameters(PLB_tot, PP1_tot, Inhib1_tot, k_pka_plb, Km_pka_plb, k_pp1_plb, Km_pp1_plb, k_pka_i1, Km_pka_i1, Vmax_pp2a_i1, Km_pp2a_i1, Ki_inhib1) // Variable initializations: PLB_tot = 106; PP1_tot = 0.89; Inhib1_tot = 0.3; k_pka_plb = 54; Km_pka_plb = 21; k_pp1_plb = 8.5; Km_pp1_plb = 7; k_pka_i1 = 60; Km_pka_i1 = 1; Vmax_pp2a_i1 = 14; Km_pp2a_i1 = 1; Ki_inhib1 = 1e-3; end model saucerman_brunton_michailova_mcculloch_2003__LCC_parameters(epsilon, LCC_tot, PP1_lcc_tot, PP2A_lcc_tot, k_pka_lcc, Km_pka_lcc, k_pp1_lcc, Km_pp1_lcc, k_pp2a_lcc, Km_pp2a_lcc) // Variable initializations: epsilon = 10; LCC_tot = 25e-3; PP1_lcc_tot = 25e-3; PP2A_lcc_tot = 25e-3; k_pka_lcc = 54; Km_pka_lcc = 21; k_pp1_lcc = 8.52; Km_pp1_lcc = 3; k_pp2a_lcc = 10.1; Km_pp2a_lcc = 3; end model saucerman_brunton_michailova_mcculloch_2003__EC_Coupling_Parameters(V_myo, V_nsr, V_jsr, A_Cap, Temp, Na_ext, K_ext, Ca_ext, G_Na, G_to, G_ss, G_Ki_bar, G_Kp, f, g, gamma_o, omega, p_Ca, p_K, N_lcc, I_Ca05, k_NaCa, Km_Na, Km_Ca, k_sat, eta, I_bar_NaK, Km_Nai, Km_Ko, I_bar_PCa, Km_PCa, G_CaB, G_NaB, Pns, Km_NS, I_up_bar, Km_up0, NSR_bar, tau_on, tau_off, G_max_rel, d_Cai_th, Km_rel, CSQN_th, CSQN_bar, Km_CSQN, tau_tr, TRPN_bar, CMDN_bar, INDO_bar, Km_TRPN, Km_CMDN, Km_INDO) // Variable initializations: V_myo = 20.8e-6; V_nsr = 9.88e-7; V_jsr = 9.3e-8; A_Cap = 1.534e-4; Temp = 310; Na_ext = 140; K_ext = 5.4; Ca_ext = 1.8; G_Na = 8; G_to = 0.35; G_ss = 0.07; G_Ki_bar = 0.24; G_Kp = 0.008; f = 300; g = 2e3; gamma_o = 5187.5; omega = 10; p_Ca = 1.7469e-8; p_K = 3.234e-11; N_lcc = 3e5; I_Ca05 = -0.458; k_NaCa = 1483; Km_Na = 87.5; Km_Ca = 1.38; k_sat = 0.1; eta = 0.35; I_bar_NaK = 1.1; Km_Nai = 10; Km_Ko = 1.5; I_bar_PCa = 1.15; Km_PCa = 0.5e-3; G_CaB = 2.8e-3; G_NaB = 1.18e-3; Pns = 0; Km_NS = 1.2e-3; I_up_bar = 4.7; Km_up0 = 3e-4; NSR_bar = 15; tau_on = 2e-3; tau_off = 2e-3; G_max_rel = 60e3; d_Cai_th = 0.18e-3; Km_rel = 0.8e-3; CSQN_th = 8.75; CSQN_bar = 15; Km_CSQN = 0.8; tau_tr = 5.7e-4; TRPN_bar = 0.07; CMDN_bar = 0.05; INDO_bar = 0.07; Km_TRPN = 0.5128e-3; Km_CMDN = 2.38e-3; Km_INDO = 8.44e-4; end model saucerman_brunton_michailova_mcculloch_2003__b1_AR_module(time_, L_totmax, sum_b1_AR, Gs_tot, Kl, Kr, Kc, k_bar_kp, k_bar_km, k_p_kap, k_p_kam, k_g_act, k_hyd, k_reassoc, LR, LRG, RG, L, R, Gs, b1_AR_tot, b1_AR_d, b1_AR_p, Gs_agtp_tot, Gs_agdp, Gs_bg, PKAC_I) // Assignment Rules: LR := (L * R) / Kl; LRG := (LR * Gs) / Kr; RG := (R * Gs) / Kc; BARK_DESENS := k_bar_kp * (LR + LRG); BARK_RESENS := k_bar_km * b1_AR_d; PKA_DESENS := k_p_kap * PKAC_I * b1_AR_tot; PKA_RESENS := k_p_kam * b1_AR_p; G_ACT := k_g_act * (RG + LRG); HYD := k_hyd * Gs_agtp_tot; REASSOC := k_reassoc * Gs_agdp * Gs_bg; // Rate Rules: b1_AR_tot' = (BARK_RESENS - BARK_DESENS) + (PKA_RESENS - PKA_DESENS); b1_AR_d' = BARK_DESENS - BARK_RESENS; b1_AR_p' = PKA_DESENS - PKA_RESENS; Gs_agtp_tot' = G_ACT - HYD; Gs_agdp' = HYD - REASSOC; Gs_bg' = G_ACT - REASSOC; // Variable initializations: time_ = ; L_totmax = ; sum_b1_AR = ; Gs_tot = ; Kl = ; Kr = ; Kc = ; k_bar_kp = ; k_bar_km = ; k_p_kap = ; k_p_kam = ; k_g_act = ; k_hyd = ; k_reassoc = ; L = ; R = ; Gs = ; b1_AR_tot = 0.01205; b1_AR_d = 0; b1_AR_p = 1.154e-3; Gs_agtp_tot = 0.02505; Gs_agdp = 6.446e-4; Gs_bg = 0.02569; PKAC_I = ; end model saucerman_brunton_michailova_mcculloch_2003__cAMP_module(time_, AC_tot, ATP, PDE_tot, IBMX_tot, Fsk_tot, k_ac_basal, k_ac_gsa, k_ac_fsk, k_pde, Km_basal, Km_gsa, Km_fsk, Km_pde, K_gsa, K_fsk, Ki_ibmx, cAMP, cAMP_tot, Gs_agtp_tot) // Assignment Rules: Gsa_GTP_AC := (Gsa_GTP * AC) / K_gsa; Fsk_AC := (Fsk * AC) / K_fsk; AC_ACT_GSA := (k_ac_gsa * Gsa_GTP_AC * ATP) / (Km_gsa + ATP); AC_ACT_BASAL := (k_ac_basal * AC * ATP) / (Km_basal + ATP); AC_ACT_FSK := (k_ac_fsk * Fsk_AC * ATP) / (Km_fsk + ATP); PDE_ACT := (k_pde * PDE * cAMP) / (Km_pde + cAMP); PDE_IBMX := (PDE * IBMX) / Ki_ibmx; // Rate Rules: cAMP_tot' = (AC_ACT_BASAL + AC_ACT_GSA + AC_ACT_FSK) - PDE_ACT; // Variable initializations: time_ = ; AC_tot = ; ATP = ; PDE_tot = ; IBMX_tot = ; Fsk_tot = ; k_ac_basal = ; k_ac_gsa = ; k_ac_fsk = ; k_pde = ; Km_basal = ; Km_gsa = ; Km_fsk = ; Km_pde = ; K_gsa = ; K_fsk = ; Ki_ibmx = ; cAMP = ; Gsa_GTP = ; Fsk = ; AC = ; PDE = ; IBMX = ; cAMP_tot = 0.8453; Gs_agtp_tot = ; end model saucerman_brunton_michailova_mcculloch_2003__PKA_module(PKAI_tot, PKAII_tot, PKI_tot, K_a, K_b, K_d, Ki_pki, cAMP, PKAC_I, PKAC_II, cAMP_tot) // Assignment Rules: PKI := (PKI_tot * Ki_pki) / (Ki_pki + PKAC_I + PKAC_II); A2RC_I := (PKAC_I / K_d) * PKAC_I * (1 + PKI / Ki_pki); A2R_I := PKAC_I * (1 + PKI / Ki_pki); A2RC_II := (PKAC_II / K_d) * PKAC_II * (1 + PKI / Ki_pki); A2R_II := PKAC_II * (1 + PKI / Ki_pki); ARC_I := (K_a / cAMP) * A2RC_I; ARC_II := (K_a / cAMP) * A2RC_II; PKA_temp := (K_a * K_b) / K_d + (K_a * cAMP) / K_d + power(cAMP, 2) / K_d; // Variable initializations: PKAI_tot = ; PKAII_tot = ; PKI_tot = ; K_a = ; K_b = ; K_d = ; Ki_pki = ; cAMP = ; PKAC_I = ; PKAC_II = ; cAMP_tot = ; end model saucerman_brunton_michailova_mcculloch_2003__PLB_module(time_, PLB_tot, PP1_tot, Inhib1_tot, k_pka_plb, Km_pka_plb, k_pp1_plb, Km_pp1_plb, k_pka_i1, Km_pka_i1, Vmax_pp2a_i1, Km_pp2a_i1, Ki_inhib1, frac_PLB, frac_PLB_o, PKAC_I) // Assignment Rules: PLB := PLB_tot - PLB_p; PLB_PHOSPH := (k_pka_plb * PKAC_I * PLB) / (Km_pka_plb + PLB); PLB_DEPHOSPH := (k_pp1_plb * PP1 * PLB_p) / (Km_pp1_plb + PLB_p); Inhib1 := Inhib1_tot - Inhib1p_tot; Inhib1p_PP1 := (Inhib1p * PP1) / Ki_inhib1; Inhib1_PHOSPH := (k_pka_i1 * PKAC_I * Inhib1) / (Km_pka_i1 + Inhib1); Inhib1_DEPHOSPH := (Vmax_pp2a_i1 * Inhib1p_tot) / (Km_pp2a_i1 + Inhib1p_tot); frac_PLB_p := PLB_p / PLB_tot; frac_PLB := PLB / PLB_tot; frac_PLB_o := 0.9613; // Rate Rules: PLB_p' = PLB_PHOSPH - PLB_DEPHOSPH; Inhib1p_tot' = Inhib1_PHOSPH - Inhib1_DEPHOSPH; // Variable initializations: time_ = ; PLB_tot = ; PP1_tot = ; Inhib1_tot = ; k_pka_plb = ; Km_pka_plb = ; k_pp1_plb = ; Km_pp1_plb = ; k_pka_i1 = ; Km_pka_i1 = ; Vmax_pp2a_i1 = ; Km_pp2a_i1 = ; Ki_inhib1 = ; PLB_p = 4.105; Inhib1p_tot = 0.0526; Inhib1p = ; PP1 = ; PKAC_I = ; end model saucerman_brunton_michailova_mcculloch_2003__LCC_module(time_, epsilon, LCC_tot, PP1_lcc_tot, PP2A_lcc_tot, k_pka_lcc, Km_pka_lcc, k_pp1_lcc, Km_pp1_lcc, k_pp2a_lcc, Km_pp2a_lcc, frac_LCCa_p, frac_LCCa_po, frac_LCCb_p, frac_LCCb_po, PKAC_II) // Assignment Rules: LCCa := LCC_tot - LCCa_p; LCCa_PHOSPH := (epsilon * k_pka_lcc * PKAC_II * LCCa) / (Km_pka_lcc + epsilon * LCCa); LCCa_DEPHOSPH := (epsilon * k_pp2a_lcc * PP2A_lcc_tot * LCCa_p) / (Km_pp2a_lcc + epsilon * LCCa_p); LCCb := LCC_tot - LCCb_p; LCCb_PHOSPH := (epsilon * k_pka_lcc * PKAC_II * LCCb) / (Km_pka_lcc + epsilon * LCCb); LCCb_DEPHOSPH := (epsilon * k_pp1_lcc * PP1_lcc_tot * LCCb_p) / (Km_pp1_lcc + epsilon * LCCb_p); frac_LCCa_p := LCCa_p / LCC_tot; frac_LCCa_po := 0.2041; frac_LCCb_p := LCCb_p / LCC_tot; frac_LCCb_po := 0.2336; // Rate Rules: LCCa_p' = LCCa_PHOSPH - LCCa_DEPHOSPH; LCCb_p' = LCCb_PHOSPH - LCCb_DEPHOSPH; // Variable initializations: time_ = ; epsilon = ; LCC_tot = ; PP1_lcc_tot = ; PP2A_lcc_tot = ; k_pka_lcc = ; Km_pka_lcc = ; k_pp1_lcc = ; Km_pp1_lcc = ; k_pp2a_lcc = ; Km_pp2a_lcc = ; LCCa_p = 5.103e-3; LCCb_p = 5.841e-3; PKAC_II = ; end model saucerman_brunton_michailova_mcculloch_2003__Nernst_Potentials(E_Na, E_K, E_Ca, E_Cl, Frdy, FoRT, z_Na, z_K, z_Ca, Temp, Na_ext, K_ext, Ca_ext, Na_i, K_i, Ca_i) // Assignment Rules: E_Na := (1 / (FoRT * z_Na)) * ln(Na_ext / Na_i); E_K := (1 / (FoRT * z_K)) * ln(K_ext / K_i); E_Ca := (1 / (FoRT * z_Ca)) * ln(Ca_ext / Ca_i); E_Cl := -(40); FoRT := (Frdy / R) / Temp; // Variable initializations: R = 8314; Frdy = 96485; z_Na = 1; z_K = 1; z_Ca = 2; Temp = ; Na_ext = ; K_ext = ; Ca_ext = ; Na_i = ; K_i = ; Ca_i = ; end model saucerman_brunton_michailova_mcculloch_2003__Fast_Na_Current(time_, I_Na, V_m, E_Na, G_Na) // Assignment Rules: am := (0.32 * (V_m + 47.13)) / (1 - exp(-(0.1) * (V_m + 47.13))); bm := 0.08 * exp(- V_m / 11); ah := piecewise( 0 , geq(V_m, -(40)) , 0.135 * exp((80 + V_m) / -(6.8)) ); aj := piecewise( 0 , geq(V_m, -(40)) , ((-(1.2714E5) * exp(0.2444 * V_m) - 3.474E-5 * exp(-(0.04391) * V_m)) * (V_m + 37.78)) / (1 + exp(0.311 * (V_m + 79.23))) ); bh := piecewise( 1 / (0.13 * (1 + exp(-(V_m + 10.66) / 11.1))) , geq(V_m, -(40)) , 3.56 * exp(0.079 * V_m) + 3.1E5 * exp(0.35 * V_m) ); bj := piecewise( (0.3 * exp(-(2.575E-7) * V_m)) / (1 + exp(-(0.1) * (V_m + 32))) , geq(V_m, -(40)) , (0.1212 * exp(-(0.01052) * V_m)) / (1 + exp(-(0.1378) * (V_m + 40.14))) ); I_Na := G_Na * power(m, 3) * h * j * (V_m - E_Na); // Rate Rules: m' = 1E3 * (am * (1 - m) - bm * m); h' = 1E3 * (ah * (1 - h) - bh * h); j' = 1E3 * (aj * (1 - j) - bj * j); // Variable initializations: time_ = ; m = 1.4e-3; h = 0.99; j = 0.99; V_m = ; E_Na = ; G_Na = ; end model saucerman_brunton_michailova_mcculloch_2003__L_Type_Calcium_Current(I_Ca, I_CaK, I_Ca_tot, time_, K_ext, Ca_ext, f, g, gamma_o, omega, p_Ca, p_K, N_lcc, I_Ca05, frac_LCCa_p, frac_LCCa_po, frac_LCCb_p, frac_LCCb_po, Frdy, FoRT, K_i, Ca_i, V_m) // Assignment Rules: a_lcc := 400 * exp((V_m + 2) / 10); b_lcc := 50 * exp((-(1) * (V_m + 2)) / 13); f_lcc := f * ((0.375 * frac_LCCa_p) / frac_LCCa_po + 0.625); y_lcc_inf := 1 / (1 + exp((V_m + 55) / 7.5)) + 0.1 / (1 + exp((- V_m + 21) / 6)); tau_y_lcc := 0.02 + 0.3 / (1 + exp((V_m + 30) / 9.5)); gamma := gamma_o * Ca_i; v_gamma := gamma * (power(1 - v, 4) + 2 * v * power(1 - v, 3) + 4 * power(v, 2) * power(1 - v, 2) + 8 * power(v, 3) * (1 - v) + 16 * power(v, 4) * (1 - f_lcc / g)); v_omega := omega * (power(1 - w, 4) + 0.5 * w * power(1 - w, 3) + 0.25 * power(w, 2) * power(1 - w, 2) + 0.125 * power(w, 3) * (1 - w) + 0.0625 * power(w, 4)); i_bar_Ca := (p_Ca * 4 * V_m * Frdy * FoRT * (1E-3 * exp(2 * V_m * FoRT) - 0.341 * Ca_ext)) / (exp(2 * V_m * FoRT) - 1); i_bar_K := (p_K * V_m * Frdy * FoRT * (K_i * exp(V_m * FoRT) - K_ext)) / (exp(V_m * FoRT) - 1); f_avail := 0.5 * ((0.4 * frac_LCCb_p) / frac_LCCb_po + 0.6); I_Ca := i_bar_Ca * N_lcc * f_avail * power(v, 4) * x * y * z; I_CaK := (i_bar_K / (1 + I_Ca / I_Ca05)) * N_lcc * f_avail * power(v, 4) * x * y * z; I_Ca_tot := I_Ca + I_CaK; // Rate Rules: v' = a_lcc * (1 - v) - b_lcc * v; w' = 2 * a_lcc * (1 - w) - (b_lcc / 2) * w; x' = f_lcc * (1 - x) - g * x; y' = (y_lcc_inf - y) / tau_y_lcc; z' = v_omega * (1 - z) - v_gamma * z; // Variable initializations: v = 0; w = 0; x = 0.13; y = 0.96; z = 0.92; time_ = ; K_ext = ; Ca_ext = ; f = ; g = ; gamma_o = ; omega = ; p_Ca = ; p_K = ; N_lcc = ; I_Ca05 = ; frac_LCCa_p = ; frac_LCCa_po = ; frac_LCCb_p = ; frac_LCCb_po = ; Frdy = ; FoRT = ; K_i = ; Ca_i = ; V_m = ; end model saucerman_brunton_michailova_mcculloch_2003__Transient_Outward_K_Current(time_, I_to, V_m, E_K, G_to) // Assignment Rules: r_toss := 1 / (1 + exp((V_m + 10.6) / -(11.42))); s_toss := 1 / (1 + exp((V_m + 43.5) / 6.8841)); tau_r_to := 1 / (45.16 * exp(0.03577 * (V_m + 50)) + 98.9 * exp(-(0.1) * (V_m + 38))); tau_s_to := 0.35 * exp(-(1) * power((V_m + 70) / 15, 2)) + 0.035; tau_ss_to := 3.7 * exp(-(1) * power((V_m + 70) / 30, 2)) + 0.035; I_to := G_to * r_to * (0.886 * s_to + 0.114 * ss_to) * (V_m - E_K); // Rate Rules: r_to' = (r_toss - r_to) / tau_r_to; s_to' = (s_toss - s_to) / tau_s_to; ss_to' = (s_toss - ss_to) / tau_ss_to; // Variable initializations: time_ = ; r_to = 1.4e-3; s_to = 1; ss_to = 0.613; V_m = ; E_K = ; G_to = ; end model saucerman_brunton_michailova_mcculloch_2003__Steady_State_K_Current(time_, I_ss, V_m, E_K, G_ss) // Assignment Rules: r_ss_inf := 1 / (1 + exp((V_m + 11.5) / -(11.82))); tau_r_ss := 10 / (45.16 * exp(0.03577 * (V_m + 50)) + 98.9 * exp(-(0.1) * (V_m + 38))); s_ss_inf := 1 / (1 + exp((V_m + 87.5) / 10.3)); tau_s_ss := 2.1; I_ss := G_ss * r_ss * s_ss * (V_m - E_K); // Rate Rules: r_ss' = (r_ss_inf - r_ss) / tau_r_ss; s_ss' = (s_ss_inf - s_ss) / tau_s_ss; // Variable initializations: time_ = ; r_ss = 198e-3; s_ss = 0.43; V_m = ; E_K = ; G_ss = ; end model saucerman_brunton_michailova_mcculloch_2003__Time_Independent_K_Current(I_Ki, V_m, E_K, G_Ki_bar, K_ext) // Assignment Rules: a_Ki := 1.02 / (1 + exp(0.2385 * ((V_m - E_K) - 59.215))); b_Ki := (0.49124 * exp(0.08032 * ((V_m + 5.476) - E_K)) + exp(0.06175 * ((V_m - E_K) - 594.31))) / (1 + exp(-(0.5143) * ((V_m - E_K) + 4.753))); Ki_ss := a_Ki / (a_Ki + b_Ki); I_Ki := G_Ki_bar * root(K_ext / 5.4) * Ki_ss * (V_m - E_K); // Variable initializations: V_m = ; E_K = ; G_Ki_bar = ; K_ext = ; end model saucerman_brunton_michailova_mcculloch_2003__Plateau_K_Current(I_Kp, V_m, E_K, G_Kp) // Assignment Rules: Kp := 1 / (1 + exp((7.488 - V_m) / 5.98)); I_Kp := G_Kp * Kp * (V_m - E_K); // Variable initializations: V_m = ; E_K = ; G_Kp = ; end model saucerman_brunton_michailova_mcculloch_2003__Na_Ca_Exchanger_Current(I_NCX, Na_ext, Ca_ext, k_NaCa, Km_Na, Km_Ca, k_sat, eta, FoRT, Na_i, Ca_i, V_m) // Assignment Rules: s4 := exp(eta * V_m * FoRT) * power(Na_i, 3) * Ca_ext; s5 := exp((eta - 1) * V_m * FoRT) * power(Na_ext, 3) * Ca_i; I_NCX := (k_NaCa / ((power(Km_Na, 3) + power(Na_ext, 3)) * (Km_Ca + Ca_ext) * (1 + k_sat * exp((eta - 1) * V_m * FoRT)))) * (s4 - s5); // Variable initializations: Na_ext = ; Ca_ext = ; k_NaCa = ; Km_Na = ; Km_Ca = ; k_sat = ; eta = ; FoRT = ; Na_i = ; Ca_i = ; V_m = ; end model saucerman_brunton_michailova_mcculloch_2003__Na_K_Pump_Current(I_NaK, Na_ext, K_ext, I_bar_NaK, Km_Nai, Km_Ko, FoRT, Na_i, V_m) // Assignment Rules: sigma := (exp(Na_ext / 67.3) - 1) / 7; f_NaK := 1 / (1 + 0.1245 * exp(-(0.1) * V_m * FoRT) + 0.0365 * sigma * exp(- V_m * FoRT)); I_NaK := (((I_bar_NaK * f_NaK) / (1 + power(Km_Nai / Na_i, 1.5))) * K_ext) / (K_ext + Km_Ko); // Variable initializations: Na_ext = ; K_ext = ; I_bar_NaK = ; Km_Nai = ; Km_Ko = ; FoRT = ; Na_i = ; V_m = ; end model saucerman_brunton_michailova_mcculloch_2003__Sarcolemmal_Ca_Pump_Current(I_PCa, I_bar_PCa, Km_PCa, Ca_i) // Assignment Rules: I_PCa := (I_bar_PCa * Ca_i) / (Km_PCa + Ca_i); // Variable initializations: I_bar_PCa = ; Km_PCa = ; Ca_i = ; end model saucerman_brunton_michailova_mcculloch_2003__Ca_Background_Current(I_CaB, V_m, E_Ca, G_CaB) // Assignment Rules: I_CaB := G_CaB * (V_m - E_Ca); // Variable initializations: V_m = ; E_Ca = ; G_CaB = ; end model saucerman_brunton_michailova_mcculloch_2003__Na_Background_Current(I_NaB, V_m, E_Na, G_NaB) // Assignment Rules: I_NaB := G_NaB * (V_m - E_Na); // Variable initializations: V_m = ; E_Na = ; G_NaB = ; end model saucerman_brunton_michailova_mcculloch_2003__Total_Membrane_Currents(I_Na_tot, I_K_tot, I_Ca_tot, I_Na, I_NaB, I_NCX, I_NaK, I_to, I_ss, I_Ki, I_Kp, I_CaK, I_Ca, I_CaB, I_PCa) // Assignment Rules: I_Na_tot := I_Na + I_NaB + 3 * I_NCX + 3 * I_NaK; I_K_tot := ((I_to + I_ss + I_Ki + I_Kp) - 2 * I_NaK) + I_CaK; I_Ca_tot := (I_Ca + I_CaB + I_PCa) - 2 * I_NCX; // Variable initializations: I_Na = ; I_NaB = ; I_NCX = ; I_NaK = ; I_to = ; I_ss = ; I_Ki = ; I_Kp = ; I_CaK = ; I_Ca = ; I_CaB = ; I_PCa = ; end model saucerman_brunton_michailova_mcculloch_2003__Calcium_Induced_Calcium_Release(I_rel, tau_on, tau_off, G_max_rel, I_Ca_tot, Ca_jsr, Ca_i, trel) // Assignment Rules: t_rel := trel + 2E-3; ryr_on := 1 - exp(- t_rel / tau_on); ryr_off := exp(- t_rel / tau_off); g_rel := G_max_rel / (1 + exp((I_Ca_tot + 5) / 0.9)); I_rel := g_rel * ryr_on * ryr_off * (Ca_jsr - Ca_i); // Variable initializations: tau_on = ; tau_off = ; G_max_rel = ; I_Ca_tot = ; Ca_jsr = ; Ca_i = ; trel = ; end model saucerman_brunton_michailova_mcculloch_2003__Other_SR_Fluxes_and_Concentrations(I_up, I_leak, Ca_nsr, Ca_jsr, time_, V_myo, V_nsr, V_jsr, I_up_bar, Km_up0, NSR_bar, CSQN_bar, Km_CSQN, tau_tr, frac_PLB, frac_PLB_o, I_rel, Ca_i) // Assignment Rules: Km_up := (Km_up0 * (1 + 2 * frac_PLB)) / (1 + 2 * frac_PLB_o); I_up := (I_up_bar * power(Ca_i, 2)) / (power(Km_up, 2) + power(Ca_i, 2)); I_leak := (I_up_bar * Ca_nsr) / NSR_bar; I_tr := (Ca_nsr - Ca_jsr) / tau_tr; B_jsr := 1 / (1 + (CSQN_bar * Km_CSQN) / power(Km_CSQN + Ca_jsr, 2)); SR_content := 1E3 * (((Ca_jsr + Ca_jsr / B_jsr) * V_jsr) / V_myo + (Ca_nsr * V_nsr) / V_myo); // Rate Rules: Ca_nsr' = (I_up - I_leak) - (I_tr * V_jsr) / V_nsr; Ca_jsr' = B_jsr * (I_tr - I_rel); // Variable initializations: Ca_nsr = 1.92; Ca_jsr = 1.92; time_ = ; V_myo = ; V_nsr = ; V_jsr = ; I_up_bar = ; Km_up0 = ; NSR_bar = ; CSQN_bar = ; Km_CSQN = ; tau_tr = ; frac_PLB = ; frac_PLB_o = ; I_rel = ; Ca_i = ; end model saucerman_brunton_michailova_mcculloch_2003__Cytoplasmic_Calcium_Buffering(B_myo, TRPN_bar, CMDN_bar, INDO_bar, Km_TRPN, Km_CMDN, Km_INDO, Ca_i) // Assignment Rules: b_trpn := (TRPN_bar * Km_TRPN) / power(Km_TRPN + Ca_i, 2); b_cmdn := (CMDN_bar * Km_CMDN) / power(Km_CMDN + Ca_i, 2); b_indo := (INDO_bar * Km_INDO) / power(Km_INDO + Ca_i, 2); B_myo := 1 / (1 + b_cmdn + b_trpn + b_trpn + b_indo); // Variable initializations: TRPN_bar = ; CMDN_bar = ; INDO_bar = ; Km_TRPN = ; Km_CMDN = ; Km_INDO = ; Ca_i = ; end model saucerman_brunton_michailova_mcculloch_2003__Ion_Concentrations_and_Membrane_Potential(Na_i, K_i, Ca_i, V_m, trel, time_, V_myo, V_nsr, V_jsr, A_Cap, Frdy, z_Na, z_K, z_Ca, I_Na_tot, I_K_tot, I_Ca_tot, I_leak, I_rel, I_up, B_myo, protocol, I_pace) // Assignment Rules: I_app := piecewise( 0 , protocol == 0 , I_pace , protocol == 1 , (V_clamp - V_m) / 0.02 ); V_clamp := piecewise( V_test , ( time_ > 59.1) && (time_ < 59.5 ), V_hold ); // Rate Rules: Na_i' = (-(1E3) * I_Na_tot * A_Cap) / (V_myo * z_Na * Frdy); K_i' = (-(1E3) * I_K_tot * A_Cap) / (V_myo * z_K * Frdy); Ca_i' = - B_myo * (((1E3 * I_Ca_tot * A_Cap) / (V_myo * z_Ca * Frdy) + ((I_up - I_leak) * V_nsr) / V_myo) - (I_rel * V_jsr) / V_myo); V_m' = -(1E3) * ((I_Ca_tot + I_K_tot + I_Na_tot) - I_app); trel' = piecewise( 1 - 1E4 * trel , -(1E3) * ((I_Ca_tot + I_K_tot + I_Na_tot) - I_app) > 30E3 , 1 ); // Variable initializations: Na_i = 16; K_i = 145; Ca_i = 1.58e-4; V_m = -85.66; trel = 0.9; time_ = ; V_myo = ; V_nsr = ; V_jsr = ; A_Cap = ; Frdy = ; z_Na = ; z_K = ; z_Ca = ; I_Na_tot = ; I_K_tot = ; I_Ca_tot = ; I_leak = ; I_rel = ; I_up = ; B_myo = ; V_hold = -40; V_test = -10; R_clamp = 0.02; protocol = ; I_pace = ; end model saucerman_brunton_michailova_mcculloch_2003__Pacing(I_pace, time_) // Assignment Rules: I_pace := piecewise( 10 , rem(time_, 1000) < 5 , 0 ); // Variable initializations: time_ = ; rem = ; end model *saucerman_brunton_michailova_mcculloch_2003____main() // Sub-modules, and any changes to those submodules: environment: saucerman_brunton_michailova_mcculloch_2003__environment(time_, protocol); b1_AR_Gs_parameters: saucerman_brunton_michailova_mcculloch_2003__b1_AR_Gs_parameters(L_totmax, sum_b1_AR, Gs_tot, Kl, Kr, Kc, k_bar_kp, k_bar_km, k_p_kap, k_p_kam, k_g_act, k_hyd, k_reassoc); cAMP_parameters: saucerman_brunton_michailova_mcculloch_2003__cAMP_parameters(AC_tot, ATP, PDE_tot, IBMX_tot, Fsk_tot, k_ac_basal, k_ac_gsa, k_ac_fsk, k_pde, Km_basal, Km_gsa, Km_fsk, Km_pde, K_gsa, K_fsk, Ki_ibmx); PKA_parameters: saucerman_brunton_michailova_mcculloch_2003__PKA_parameters(PKAI_tot, PKAII_tot, PKI_tot, K_a, K_b, K_d, Ki_pki); PLB_parameters: saucerman_brunton_michailova_mcculloch_2003__PLB_parameters(PLB_tot, PP1_tot, Inhib1_tot, k_pka_plb, Km_pka_plb, k_pp1_plb, Km_pp1_plb, k_pka_i1, Km_pka_i1, Vmax_pp2a_i1, Km_pp2a_i1, Ki_inhib1); LCC_parameters: saucerman_brunton_michailova_mcculloch_2003__LCC_parameters(epsilon, LCC_tot, PP1_lcc_tot, PP2A_lcc_tot, k_pka_lcc, Km_pka_lcc, k_pp1_lcc, Km_pp1_lcc, k_pp2a_lcc, Km_pp2a_lcc); EC_Coupling_Parameters: saucerman_brunton_michailova_mcculloch_2003__EC_Coupling_Parameters(V_myo, V_nsr, V_jsr, A_Cap, Temp, Na_ext, K_ext, Ca_ext, G_Na, G_to, G_ss, G_Ki_bar, G_Kp, f, g, gamma_o, omega, p_Ca, p_K, N_lcc, I_Ca05, k_NaCa, Km_Na, Km_Ca, k_sat, eta, I_bar_NaK, Km_Nai, Km_Ko, I_bar_PCa, Km_PCa, G_CaB, G_NaB, Pns, Km_NS, I_up_bar, Km_up0, NSR_bar, tau_on, tau_off, G_max_rel, d_Cai_th, Km_rel, CSQN_th, CSQN_bar, Km_CSQN, tau_tr, TRPN_bar, CMDN_bar, INDO_bar, Km_TRPN, Km_CMDN, Km_INDO); b1_AR_module: saucerman_brunton_michailova_mcculloch_2003__b1_AR_module(time_, L_totmax, sum_b1_AR, Gs_tot, Kl, Kr, Kc, k_bar_kp, k_bar_km, k_p_kap, k_p_kam, k_g_act, k_hyd, k_reassoc, LR, LRG, RG, L, R, Gs, b1_AR_tot, b1_AR_d, b1_AR_p, Gs_agtp_tot, Gs_agdp, Gs_bg, PKAC_I); cAMP_module: saucerman_brunton_michailova_mcculloch_2003__cAMP_module(time_, AC_tot, ATP, PDE_tot, IBMX_tot, Fsk_tot, k_ac_basal, k_ac_gsa, k_ac_fsk, k_pde, Km_basal, Km_gsa, Km_fsk, Km_pde, K_gsa, K_fsk, Ki_ibmx, cAMP, cAMP_tot, Gs_agtp_tot); PKA_module: saucerman_brunton_michailova_mcculloch_2003__PKA_module(PKAI_tot, PKAII_tot, PKI_tot, K_a, K_b, K_d, Ki_pki, cAMP, PKAC_I, PKAC_II, cAMP_tot); PLB_module: saucerman_brunton_michailova_mcculloch_2003__PLB_module(time_, PLB_tot, PP1_tot, Inhib1_tot, k_pka_plb, Km_pka_plb, k_pp1_plb, Km_pp1_plb, k_pka_i1, Km_pka_i1, Vmax_pp2a_i1, Km_pp2a_i1, Ki_inhib1, frac_PLB, frac_PLB_o, PKAC_I); LCC_module: saucerman_brunton_michailova_mcculloch_2003__LCC_module(time_, epsilon, LCC_tot, PP1_lcc_tot, PP2A_lcc_tot, k_pka_lcc, Km_pka_lcc, k_pp1_lcc, Km_pp1_lcc, k_pp2a_lcc, Km_pp2a_lcc, frac_LCCa_p, frac_LCCa_po, frac_LCCb_p, frac_LCCb_po, PKAC_II); Nernst_Potentials: saucerman_brunton_michailova_mcculloch_2003__Nernst_Potentials(E_Na, E_K, E_Ca, E_Cl, Frdy, FoRT, z_Na, z_K, z_Ca, Temp, Na_ext, K_ext, Ca_ext, Na_i, K_i, Ca_i); Fast_Na_Current: saucerman_brunton_michailova_mcculloch_2003__Fast_Na_Current(time_, I_Na, V_m, E_Na, G_Na); L_Type_Calcium_Current: saucerman_brunton_michailova_mcculloch_2003__L_Type_Calcium_Current(I_Ca, I_CaK, I_Ca_tot0, time_, K_ext, Ca_ext, f, g, gamma_o, omega, p_Ca, p_K, N_lcc, I_Ca05, frac_LCCa_p, frac_LCCa_po, frac_LCCb_p, frac_LCCb_po, Frdy, FoRT, K_i, Ca_i, V_m); Transient_Outward_K_Current: saucerman_brunton_michailova_mcculloch_2003__Transient_Outward_K_Current(time_, I_to, V_m, E_K, G_to); Steady_State_K_Current: saucerman_brunton_michailova_mcculloch_2003__Steady_State_K_Current(time_, I_ss, V_m, E_K, G_ss); Time_Independent_K_Current: saucerman_brunton_michailova_mcculloch_2003__Time_Independent_K_Current(I_Ki, V_m, E_K, G_Ki_bar, K_ext); Plateau_K_Current: saucerman_brunton_michailova_mcculloch_2003__Plateau_K_Current(I_Kp, V_m, E_K, G_Kp); Na_Ca_Exchanger_Current: saucerman_brunton_michailova_mcculloch_2003__Na_Ca_Exchanger_Current(I_NCX, Na_ext, Ca_ext, k_NaCa, Km_Na, Km_Ca, k_sat, eta, FoRT, Na_i, Ca_i, V_m); Na_K_Pump_Current: saucerman_brunton_michailova_mcculloch_2003__Na_K_Pump_Current(I_NaK, Na_ext, K_ext, I_bar_NaK, Km_Nai, Km_Ko, FoRT, Na_i, V_m); Sarcolemmal_Ca_Pump_Current: saucerman_brunton_michailova_mcculloch_2003__Sarcolemmal_Ca_Pump_Current(I_PCa, I_bar_PCa, Km_PCa, Ca_i); Ca_Background_Current: saucerman_brunton_michailova_mcculloch_2003__Ca_Background_Current(I_CaB, V_m, E_Ca, G_CaB); Na_Background_Current: saucerman_brunton_michailova_mcculloch_2003__Na_Background_Current(I_NaB, V_m, E_Na, G_NaB); Total_Membrane_Currents: saucerman_brunton_michailova_mcculloch_2003__Total_Membrane_Currents(I_Na_tot, I_K_tot, I_Ca_tot, I_Na, I_NaB, I_NCX, I_NaK, I_to, I_ss, I_Ki, I_Kp, I_CaK, I_Ca, I_CaB, I_PCa); Calcium_Induced_Calcium_Release: saucerman_brunton_michailova_mcculloch_2003__Calcium_Induced_Calcium_Release(I_rel, tau_on, tau_off, G_max_rel, I_Ca_tot, Ca_jsr, Ca_i, trel); Other_SR_Fluxes_and_Concentrations: saucerman_brunton_michailova_mcculloch_2003__Other_SR_Fluxes_and_Concentrations(I_up, I_leak, Ca_nsr, Ca_jsr, time_, V_myo, V_nsr, V_jsr, I_up_bar, Km_up0, NSR_bar, CSQN_bar, Km_CSQN, tau_tr, frac_PLB, frac_PLB_o, I_rel, Ca_i); Cytoplasmic_Calcium_Buffering: saucerman_brunton_michailova_mcculloch_2003__Cytoplasmic_Calcium_Buffering(B_myo, TRPN_bar, CMDN_bar, INDO_bar, Km_TRPN, Km_CMDN, Km_INDO, Ca_i); Ion_Concentrations_and_Membrane_Potential: saucerman_brunton_michailova_mcculloch_2003__Ion_Concentrations_and_Membrane_Potential(Na_i, K_i, Ca_i, V_m, trel, time_, V_myo, V_nsr, V_jsr, A_Cap, Frdy, z_Na, z_K, z_Ca, I_Na_tot, I_K_tot, I_Ca_tot, I_leak, I_rel, I_up, B_myo, protocol, I_pace); Pacing: saucerman_brunton_michailova_mcculloch_2003__Pacing(I_pace, time_); end