//Created by libAntimony v2.4 model magnus_keizer_1998_version01__environment(time_) // Variable initializations: time_ = ; end model magnus_keizer_1998_version01__plasma_membrane(V, R, T, F, time_, i_K_dr, i_K_ATP, i_Ca_f, i_Ca_s, i_NS) // Rate Rules: V' = -(i_K_dr + i_K_ATP + i_Ca_f + i_Ca_s + i_NS) / C; // Variable initializations: V = ; R = 8314.0; T = 310.0; F = 96845.0; C = 6157.0; time_ = ; i_K_dr = ; i_K_ATP = ; i_Ca_f = ; i_Ca_s = ; i_NS = ; end model magnus_keizer_1998_version01__delayed_rectifier_K_channel_current_n_gate(n, V, time_) // Assignment Rules: n_infinity := 1.0 / (1.0 + exp((-20.0 - V) / 5.3)); tau_n := 50.0 / (exp((V + 75.0) / 65.0) + exp(-(V + 75.0) / 20.0)); // Rate Rules: n' = (n_infinity - n) / tau_n; // Variable initializations: n = ; V = ; time_ = ; end model magnus_keizer_1998_version01__delayed_rectifier_K_channel_current_I_gate(I, V, time_) // Assignment Rules: I_infinity := 1.0 / (1.0 + exp((36.0 + V) / 4.5)); // Rate Rules: I' = -((I - I_infinity) / tau_I); // Variable initializations: I = ; tau_I = 2600.0; V = ; time_ = ; end model magnus_keizer_1998_version01__delayed_rectifier_K_channel_current(i_K_dr, V_K, time_, V, n, I) // Sub-modules, and any changes to those submodules: delayed_rectifier_K_channel_current_n_gate: magnus_keizer_1998_version01__delayed_rectifier_K_channel_current_n_gate(n, V, time_); delayed_rectifier_K_channel_current_I_gate: magnus_keizer_1998_version01__delayed_rectifier_K_channel_current_I_gate(I, V, time_); // Assignment Rules: i_K_dr := g_K_dr * n * I * (V - V_K); // Variable initializations: V_K = -75.0; g_K_dr = 5000.0; end model magnus_keizer_1998_version01__K_ATP_channel_current(i_K_ATP, V_K, time_, V, ADP3_i, ATP4_i, ADP_i) // Assignment Rules: i_K_ATP := g_K_ATP * O_K_ATP * (V - V_K); O_K_ATP := (0.8 * (1.0 + (2.0 * MgADP_i) / K_dd) + 0.89 * power(MgADP_i / K_dd, 2.0)) / (power(1.0 + MgADP_i / K_dd, 2.0) * (1.0 + ADP3_i / K_td + ATP4_i / K_tt)); MgADP_i := 0.55 * 0.3 * ADP_i; // Variable initializations: g_K_ATP = 70000.0; K_dd = 17.0; K_td = 26.0; K_tt = 1.0; V_K = ; time_ = ; V = ; ADP3_i = ; ATP4_i = ; ADP_i = ; end model magnus_keizer_1998_version01__fast_Ca_channel_current_C_gate(C, O_infinity, Ca_d, k_plus_1, k_minus_1, k_plus_2, k_minus_2, Ca_o, O_f, V, time_) // Rate Rules: C' = k_minus_1 * (k_minus_2 / (k_plus_2 * Ca_d * V + k_minus_2)) * O_f - k_plus_1 * C; // Variable initializations: C = ; O_infinity = ; Ca_d = ; k_plus_1 = ; k_minus_1 = ; k_plus_2 = ; k_minus_2 = ; Ca_o = ; O_f = ; V = ; time_ = ; end model magnus_keizer_1998_version01__fast_Ca_channel_current_B_gate(B, Ca_d, O_f, k_plus_2, k_minus_2, k_plus_3, k_minus_3, V, time_) // Rate Rules: B' = k_plus_3 * ((k_plus_2 * Ca_d * V) / (k_plus_2 * Ca_d * V + k_minus_2)) * O_f - k_minus_3 * B; // Variable initializations: B = ; Ca_d = ; O_f = ; k_plus_2 = ; k_minus_2 = ; k_plus_3 = ; k_minus_3 = ; V = ; time_ = ; end model magnus_keizer_1998_version01__fast_Ca_channel_current(i_Ca_f, g_Ca, O_f, k_plus_1, k_minus_1, k_plus_2, k_minus_2, k_plus_3, k_minus_3, Ca_o, Ca_d, O_infinity, time_, V, R, T, F, C, B) // Sub-modules, and any changes to those submodules: fast_Ca_channel_current_C_gate: magnus_keizer_1998_version01__fast_Ca_channel_current_C_gate(C, O_infinity, Ca_d, k_plus_1, k_minus_1, k_plus_2, k_minus_2, Ca_o, O_f, V, time_); fast_Ca_channel_current_B_gate: magnus_keizer_1998_version01__fast_Ca_channel_current_B_gate(B, Ca_d, O_f, k_plus_2, k_minus_2, k_plus_3, k_minus_3, V, time_); // Assignment Rules: i_Ca_f := 0.27 * g_Ca * O_f * ((Ca_o * V) / (1.0 - exp((2.0 * F * V) / (R * T)))); O_f := 1.0 - (C + B); k_plus_1 := O_infinity / tau_Ca_f; k_minus_1 := (1.0 - O_infinity) / tau_Ca_f; Ca_d := (-3.02 / k_plus_2) * ((Ca_o * V) / (1.0 - exp((2.0 * F * V) / (R * T)))); O_infinity := 1.0 / (1.0 + exp(-(15.0 + V) / 6.2)); // Variable initializations: g_Ca = 4116.0; k_minus_2 = 65.0; k_plus_3 = 0.02; k_minus_3 = 0.005; Ca_o = 2.5; tau_Ca_f = 1.3; R = ; T = ; F = ; end model magnus_keizer_1998_version01__slow_Ca_channel_current_J_gate(J, V, time_) // Assignment Rules: J_infinity := 1.0 / (1.0 + exp((V + 50.0) / 6.3)); tau_J := TJ / (exp((V + 50.0) / 6.3) + exp(-(V + 50.0) / 6.3)) + Tmin; // Rate Rules: J' = -((J - J_infinity) / tau_J); // Variable initializations: J = ; TJ = 50000.0; Tmin = 1500.0; V = ; time_ = ; end model magnus_keizer_1998_version01__slow_Ca_channel_current(i_Ca_s, g_Ca, time_, V, R, T, F, Ca_o, J) // Sub-modules, and any changes to those submodules: slow_Ca_channel_current_J_gate: magnus_keizer_1998_version01__slow_Ca_channel_current_J_gate(J, V, time_); // Assignment Rules: i_Ca_s := 0.73 * g_Ca * O_s * ((Ca_o * V) / (1.0 - exp((2.0 * F * V) / (R * T)))); O_s := J / (1.0 + exp(-(11.0 + V) / 3.6)); // Variable initializations: g_Ca = ; R = ; T = ; F = ; Ca_o = ; end model magnus_keizer_1998_version01__non_selective_cation_channel_current(i_NS, time_, V, R, T, F, Ca_o, ATP_i) // Assignment Rules: i_NS := (g_NS / (1.0 + K_NS / ATP_i)) * ((Ca_o * V) / (1.0 - exp((2.0 * F * V) / (R * T)))); // Variable initializations: K_NS = 0.5; g_NS = 24.0; time_ = ; V = ; R = ; T = ; F = ; Ca_o = ; ATP_i = ; end model magnus_keizer_1998_version01__cytosolic_ADP(ATP_i, ADP_i, glu, J_ANT, time_) // Assignment Rules: ATP_i := 2.0 - ADP_i; J_hyd := k_hyd * ATP_i + delta_J_hyd; delta_J_hyd_ss := delta_J_hyd_max / (1.0 + power(K_glu / glu, n_hyd)); Jp_gly := 2.0 * delta_J_gly_total; // Rate Rules: ADP_i' = gamma1 * (J_hyd - (J_ANT + Jp_gly)); delta_J_hyd' = (1.0 / tau_hyd) * (delta_J_hyd_ss - delta_J_hyd); // Variable initializations: ADP_i = ; glu = ; gamma1 = 0.00000153; tau_hyd = 50.0; n_hyd = 2.7; k_hyd = 41.0; delta_J_hyd = ; delta_J_hyd_max = 30.1; delta_J_gly_total = ; K_glu = 8.7; J_ANT = ; time_ = ; end model magnus_keizer_1998_version01__cytosolic_Ca(Ca_i, i_NS, i_Ca_f, i_Ca_s, J_uni, J_NaCa, time_) // Rate Rules: Ca_i' = f_i * (- alpha * (i_NS + i_Ca_f + i_Ca_s) - (gamma2 * (J_uni - J_NaCa) + k_Ca * Ca_i)); // Variable initializations: Ca_i = ; gamma2 = 0.00153; alpha = 0.00000678; k_Ca = 0.19; f_i = 0.01; i_NS = ; i_Ca_f = ; i_Ca_s = ; J_uni = ; J_NaCa = ; time_ = ; end model magnus_keizer_1998_version01__mitochondrial_membrane(delta_psi, proton_motive_force, g_H, delta_pH, JH_leak, JH_res, JH_F1, J_ANT, J_uni, J_NaCa, R, F, T, V, time_) // Assignment Rules: proton_motive_force := V - ((2.303 * R * T) / F) * delta_pH; delta_pH := pH_i - pH_m; // Rate Rules: delta_psi' = (-1.0 / (60000.0 * Cmito)) * (- JH_res + JH_F1 + J_ANT + JH_leak + J_uni * 2.0 + J_NaCa); // Variable initializations: delta_psi = 50.0; g_H = 0.2; Cmito = 0.00145; pH_i = ; pH_m = ; JH_leak = ; JH_res = ; JH_F1 = ; J_ANT = ; J_uni = ; J_NaCa = ; R = ; F = ; T = ; V = ; time_ = ; end model magnus_keizer_1998_version01__proton_pump(JH_res, J_o, NAD_m, NADH_m, delta_pH, R, F, T, V, delta_psi, time_) // Assignment Rules: JH_res := 360.0 * rho_res * ((ra * power(10.0, 6.0 * delta_pH) * exp((F * A_res) / (R * T)) + ra * power(10.0, 6.0 * delta_pH) + -((ra + rb) * exp((g * 6.0 * F * V) / (R * T)))) / ((1.0 + r1 * exp((F * A_res) / (R * T))) * exp((6.0 * F * delta_psi) / (R * T)) + (r2 + r3 * exp((F * A_res) / (R * T))) * exp((g * 6.0 * F * V) / (R * T)))); J_o := 30.0 * rho_res * ((((ra * power(10.0, 6.0 * delta_pH) + rc1 * exp((6.0 * F * delta_psi) / (R * T))) * exp((F * A_res) / (R * T)) - ra * exp((g * 6.0 * F * V) / (R * T))) + rc2 * exp((F * A_res) / (R * T)) * exp((g * 6.0 * F * V) / (R * T))) / ((1.0 + r1 * exp((F * A_res) / (R * T))) * exp((6.0 * F * delta_psi) / (R * T)) + (r2 + r3 * exp((F * A_res) / (R * T))) * exp((g * 6.0 * F * V) / (R * T)))); A_res := ((R * T) / F) * ln((K_res * root(NADH_m)) / root(NAD_m)); // Variable initializations: K_res = 135000000000000000.0; rho_res = 0.4; r1 = 0.000000000000000002077; r2 = 0.000000001728; r3 = 0.00000000000000000000000001059; ra = 0.0000000006394; rb = 0.0000000000001762; rc1 = 0.0000000000000000002656; rc2 = 0.000000000000000000000000008632; g = 0.85; NAD_m = ; NADH_m = ; delta_pH = ; R = ; F = ; T = ; V = ; delta_psi = ; time_ = ; end model magnus_keizer_1998_version01__proton_leak(JH_leak, g_H, proton_motive_force, time_) // Assignment Rules: JH_leak := g_H * proton_motive_force; // Variable initializations: g_H = ; proton_motive_force = ; time_ = ; end model magnus_keizer_1998_version01__F0_F1_ATPase(JH_F1, Jp_F1, ATP_m, ADP_m, delta_pH, R, F, T, V, delta_psi, time_) // Assignment Rules: JH_F1 := -180.0 * rho_F1 * ((pa * power(10.0, 3.0 * delta_pH) * exp((F * A_F1) / (R * T)) + pb * power(10.0, 3.0 * delta_pH) + -((pa + pb) * exp((3.0 * F * V) / (R * T)))) / ((1.0 + p1 * exp((F * A_F1) / (R * T))) * exp((3.0 * F * delta_psi) / (R * T)) + (p2 + p3 * exp((F * A_F1) / (R * T))) * exp((3.0 * F * V) / (R * T)))); Jp_F1 := -60.0 * rho_F1 * ((((pa * power(10.0, 3.0 * delta_pH) + pc1 * exp((3.0 * F * delta_psi) / (R * T))) * exp((F * A_F1) / (R * T)) - pa * exp((3.0 * F * V) / (R * T))) + pc2 * exp((F * A_F1) / (R * T)) * exp((3.0 * F * V) / (R * T))) / ((1.0 + p1 * exp((F * A_F1) / (R * T))) * exp((3.0 * F * delta_psi) / (R * T)) + (p2 + p3 * exp((F * A_F1) / (R * T))) * exp((3.0 * F * V) / (R * T)))); A_F1 := ((R * T) / F) * ln((K_F1 * ATP_m) / (ADP_m_free * Pi_m)); ADP_m_free := 0.8 * ADP_m; // Variable initializations: rho_F1 = 0.7; K_F1 = 1710000.0; ATP_m_free = ; Pi_m = 20.0; p1 = 0.00000001346; p2 = 0.0000007739; p3 = 0.00000000000000665; pa = 0.00001656; pb = 0.0000003373; pc1 = 0.00000000000009651; pc2 = 0.0000000000000000004845; ATP_m = ; ADP_m = ; delta_pH = ; R = ; F = ; T = ; V = ; delta_psi = ; time_ = ; end model magnus_keizer_1998_version01__mitochondrial_NADH(NADH_m, NAD_m, J_o, glu, R, F, T, V, delta_pH, delta_psi, Ca_m, i_NS, ATP_i, i_Ca_f, i_Ca_s, time_) // Assignment Rules: NAD_m := 8.0 - NADH_m; J_red := J_red_basal + delta_J_red_I + 0.66 * delta_J_red_II; delta_J_red_I := 4.52 * f_glu * delta_J_gly_total; delta_J_red_II := 2.84 * f_glu * delta_J_gly_total; delta_J_gly_total := (beta_max * beta2 * (1.0 + beta1 * glu) * glu * ATP_i) / (1.0 + beta3 * ATP_i + (1.0 + beta4 * ATP_i) * (beta5 * glu) + (1.0 + beta6 * ATP_i) * (beta7 * power(glu, 2.0))); f_glu := f_PDHa; f_PDHa := 1.0 / (1.0 + u2 * (1.0 + u1 * power(1.0 + Ca_m / K_Ca2, -2.0))); // Rate Rules: NADH_m' = (1.0 / 60000.0) * (J_red - J_o); // Variable initializations: NADH_m = ; beta_max = 126.0; beta1 = 1.66; beta2 = 0.0249; beta3 = 4.0; beta4 = 2.83; beta5 = 1.3; beta6 = 2.66; beta7 = 0.16; u2 = 1.1; u1 = 15.0; J_red_basal = 20.0; K_Ca2 = 0.05; J_o = ; glu = ; R = ; F = ; T = ; V = ; delta_pH = ; delta_psi = ; Ca_m = ; i_NS = ; ATP_i = ; i_Ca_f = ; i_Ca_s = ; time_ = ; end model magnus_keizer_1998_version01__ATP_ADP_exchange(J_ANT, ADP3_i, ATP4_i, ADP_i, ATP_i, ADP_m, Jp_F1, R, F, T, V, time_) // Assignment Rules: J_ANT := Jmax_ANT * ((1.0 - ((ATP4_i * ADP3_m) / (ADP3_i * ATP4_m)) * exp((- F * V) / (R * T))) / ((1.0 + (ATP4_i / ADP3_i) * exp((- f * F * V) / (R * T))) * (1.0 + ADP3_m / ATP4_m))); ADP3_i := 0.45 * 0.3 * ADP_i; ATP4_i := 0.05 * ATP_i; ATP4_m := 0.05 * ATP_m; ADP3_m := 0.45 * 0.8 * ADP_m; // Variable initializations: Jmax_ANT = 1000.0; ATP_m = ; f = 0.5; ADP_i = ; ATP_i = ; ADP_m = ; Jp_F1 = ; R = ; F = ; T = ; V = ; time_ = ; end model magnus_keizer_1998_version01__mitochondrial_ADP(ATP_m, ADP_m, Jp_F1, J_ANT, time_) // Assignment Rules: ATP_m := 12.0 - ADP_m; // Rate Rules: ADP_m' = (1.0 / 60000.0) * (J_ANT - (Jp_TCA + Jp_F1)); // Variable initializations: ADP_m = ; Jp_TCA = ; Jp_F1 = ; J_ANT = ; time_ = ; end model magnus_keizer_1998_version01__Ca_uniporter(J_uni, delta_psi_offset, Ca_i, R, F, T, V, time_) // Assignment Rules: J_uni := Jmax_uni * (((Ca_i / K_trans) * power(1.0 + Ca_i / K_trans, 3.0)) / (power(1.0 + Ca_i / K_trans, 4.0) - L / power(1.0 + Ca_i / K_act, na))) * (((2.0 * F * (V - delta_psi_offset)) / (R * T)) / (1.0 - exp((-2.0 * F * (V - delta_psi_offset)) / (R * T)))); // Variable initializations: delta_psi_offset = 91.0; Jmax_uni = 400.0; K_trans = 6.0; K_act = 0.38; L = 50.0; na = 2.8; Ca_i = ; R = ; F = ; T = ; V = ; time_ = ; end model magnus_keizer_1998_version01__NaCa_exchanger(J_NaCa, fm, Ca_m, J_uni, delta_psi_offset, R, F, T, V, time_) // Assignment Rules: J_NaCa := Jmax_NaCa * (exp((b * F * (V - delta_psi_offset)) / (R * T)) / (power(1.0 + K_Na / Na_i, n) * (1.0 + K_Ca / Ca_m))); // Variable initializations: fm = 0.0003; Jmax_NaCa = 5.5; Na_i = 30.0; K_Na = 9.4; K_Ca = 0.003; b = 0.5; n = 3.0; Ca_m = ; J_uni = ; delta_psi_offset = ; R = ; F = ; T = ; V = ; time_ = ; end model magnus_keizer_1998_version01__mitochondrial_Ca(Ca_m, fm, J_uni, J_NaCa, time_) // Rate Rules: Ca_m' = (fm / 60000.0) * (J_uni - J_NaCa); // Variable initializations: Ca_m = ; fm = ; J_uni = ; J_NaCa = ; time_ = ; end model *magnus_keizer_1998_version01____main() // Sub-modules, and any changes to those submodules: environment: magnus_keizer_1998_version01__environment(time_); plasma_membrane: magnus_keizer_1998_version01__plasma_membrane(V, R, T, F, time_, i_K_dr, i_K_ATP, i_Ca_f, i_Ca_s, i_NS); delayed_rectifier_K_channel_current: magnus_keizer_1998_version01__delayed_rectifier_K_channel_current(i_K_dr, V_K, time_, V, n, I); K_ATP_channel_current: magnus_keizer_1998_version01__K_ATP_channel_current(i_K_ATP, V_K, time_, V, ADP3_i, ATP4_i, ADP_i); fast_Ca_channel_current: magnus_keizer_1998_version01__fast_Ca_channel_current(i_Ca_f, g_Ca, O_f, k_plus_1, k_minus_1, k_plus_2, k_minus_2, k_plus_3, k_minus_3, Ca_o, Ca_d, O_infinity, time_, V, R, T, F, C, B); slow_Ca_channel_current: magnus_keizer_1998_version01__slow_Ca_channel_current(i_Ca_s, g_Ca, time_, V, R, T, F, Ca_o, J); non_selective_cation_channel_current: magnus_keizer_1998_version01__non_selective_cation_channel_current(i_NS, time_, V, R, T, F, Ca_o, ATP_i); cytosolic_ADP: magnus_keizer_1998_version01__cytosolic_ADP(ATP_i, ADP_i, glu, J_ANT, time_); cytosolic_Ca: magnus_keizer_1998_version01__cytosolic_Ca(Ca_i, i_NS, i_Ca_f, i_Ca_s, J_uni, J_NaCa, time_); mitochondrial_membrane: magnus_keizer_1998_version01__mitochondrial_membrane(delta_psi, proton_motive_force, g_H, delta_pH, JH_leak, JH_res, JH_F1, J_ANT, J_uni, J_NaCa, R, F, T, V, time_); proton_pump: magnus_keizer_1998_version01__proton_pump(JH_res, J_o, NAD_m, NADH_m, delta_pH, R, F, T, V, delta_psi, time_); proton_leak: magnus_keizer_1998_version01__proton_leak(JH_leak, g_H, proton_motive_force, time_); F0_F1_ATPase: magnus_keizer_1998_version01__F0_F1_ATPase(JH_F1, Jp_F1, ATP_m, ADP_m, delta_pH, R, F, T, V, delta_psi, time_); mitochondrial_NADH: magnus_keizer_1998_version01__mitochondrial_NADH(NADH_m, NAD_m, J_o, glu, R, F, T, V, delta_pH, delta_psi, Ca_m, i_NS, ATP_i, i_Ca_f, i_Ca_s, time_); ATP_ADP_exchange: magnus_keizer_1998_version01__ATP_ADP_exchange(J_ANT, ADP3_i, ATP4_i, ADP_i, ATP_i, ADP_m, Jp_F1, R, F, T, V, time_); mitochondrial_ADP: magnus_keizer_1998_version01__mitochondrial_ADP(ATP_m, ADP_m, Jp_F1, J_ANT, time_); Ca_uniporter: magnus_keizer_1998_version01__Ca_uniporter(J_uni, delta_psi_offset, Ca_i, R, F, T, V, time_); NaCa_exchanger: magnus_keizer_1998_version01__NaCa_exchanger(J_NaCa, fm, Ca_m, J_uni, delta_psi_offset, R, F, T, V, time_); mitochondrial_Ca: magnus_keizer_1998_version01__mitochondrial_Ca(Ca_m, fm, J_uni, J_NaCa, time_); end