//Created by libAntimony v2.4 model matsuoka_sarai_kuratomi_ono_noma_2003__environment(time_) // Variable initializations: time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__membrane(Vm, R, T, F, Cm, i_ext, time_, i_Na, i_Ca_L, i_Ca_T, i_K1, i_Kr, i_Ks, i_to, i_NaK, i_NaCa, i_bNSC, i_Cab, i_Kpl, i_lCa, i_KATP) // Assignment Rules: i_ext := piecewise( stim_amplitude , (( geq(time_, stim_start)) && (time_ <= stim_end) && ((time_ - stim_start) - floor((time_ - stim_start) / stim_period) * stim_period <= stim_duration )), 0 ); i_tot := i_Na + i_Ca_L + i_Ca_T + i_K1 + i_Kr + i_Ks + i_to + i_I + i_NaK + i_NaCa; i_I := i_bNSC + i_Cab + i_Kpl + i_lCa + i_KATP; // Rate Rules: Vm' = -(i_tot + i_ext) / Cm; // Variable initializations: Vm = -85.95752434460744; R = 8.3143; T = 310; F = 96.4867; Cm = 132; time_ = ; i_Na = ; i_Ca_L = ; i_Ca_T = ; i_K1 = ; i_Kr = ; i_Ks = ; i_to = ; i_NaK = ; i_NaCa = ; i_bNSC = ; i_Cab = ; i_Kpl = ; i_lCa = ; i_KATP = ; stim_start = 50; stim_end = 1000000; stim_period = 400; stim_duration = 2; stim_amplitude = -4000; end model matsuoka_sarai_kuratomi_ono_noma_2003__external_ion_concentrations(Nao, Cao, Ko) // Variable initializations: Nao = 140; Cao = 1.8; Ko = 5.4; end model matsuoka_sarai_kuratomi_ono_noma_2003__internal_ion_concentrations(Nai, Cai, Ki, Vi, time_, F, i_Na_Na, i_CaL_Na, i_bNSC_Na, i_lCa_Na, i_NaK, i_K1, i_Kr, i_to_K, i_to_Na, i_Ks_K, i_Ks_Na, i_KATP, i_Na_K, i_CaL_K, i_bNSC_K, i_lCa_K, i_Kpl, i_CaL_Ca, i_Ca_T, i_NaCa, i_bNSC, i_Cab, i_ext, i_RyR, i_SR_U, i_SR_L, dCaidt_NL) // Assignment Rules: Cai := (root(power(b1, 2) + 4 * c1) - b1) / 2; i_net_Na := i_Na_Na + i_Ks_Na + i_to_Na + i_CaL_Na + i_bNSC_Na + i_lCa_Na + 3 * i_NaK + 3 * i_NaCa; i_net_K := (i_K1 + i_Kr + i_to_K + i_KATP + i_Ks_K + i_Na_K + i_CaL_K + i_bNSC_K + i_lCa_K + i_Kpl) - 2 * i_NaK; i_net_Ca := (i_CaL_Ca + i_Ca_T + i_Cab) - 2 * i_NaCa; b1 := (CMDN_max - Ca_Total) + K_mCMDN; c1 := K_mCMDN * Ca_Total; // Rate Rules: Nai' = - i_net_Na / (F * Vi); Ki' = -(i_net_K + i_ext) / (F * Vi); Ca_Total' = -(((i_net_Ca - i_SR_U) - i_RyR) - i_SR_L) / (2 * F * Vi) + dCaidt_NL; // Variable initializations: Nai = 4.925761439682025; Ki = 143.1837333000449; Vi = 8000; time_ = ; F = ; i_Na_Na = ; i_CaL_Na = ; i_bNSC_Na = ; i_lCa_Na = ; i_NaK = ; i_K1 = ; i_Kr = ; i_to_K = ; i_to_Na = ; i_Ks_K = ; i_Ks_Na = ; i_KATP = ; i_Na_K = ; i_CaL_K = ; i_bNSC_K = ; i_lCa_K = ; i_Kpl = ; i_CaL_Ca = ; i_Ca_T = ; i_NaCa = ; i_bNSC = ; i_Cab = ; i_ext = ; i_RyR = ; i_SR_U = ; i_SR_L = ; dCaidt_NL = ; CMDN_max = 0.05; K_mCMDN = 0.00238; Ca_Total = 4.0180173572968586e-4; end model matsuoka_sarai_kuratomi_ono_noma_2003__constant_field_equations(CF_Na, CF_Ca, CF_K, Nai, Nao, Cai, Cao, Ki, Ko, R, T, F, Vm) // Assignment Rules: CF_Na := piecewise( - Nao , Vm == 0 , (((F * Vm) / (R * T)) * (Nai - Nao * exp((- F * Vm) / (R * T)))) / (1 - exp((- F * Vm) / (R * T))) ); CF_Ca := piecewise( - Cao , Vm == 0 , (((2 * F * Vm) / (R * T)) * (Cai - Cao * exp((-(2) * F * Vm) / (R * T)))) / (1 - exp((-(2) * F * Vm) / (R * T))) ); CF_K := piecewise( Ki , Vm == 0 , (((F * Vm) / (R * T)) * (Ki - Ko * exp((- F * Vm) / (R * T)))) / (1 - exp((- F * Vm) / (R * T))) ); // Variable initializations: Nai = ; Nao = ; Cai = ; Cao = ; Ki = ; Ko = ; R = ; T = ; F = ; Vm = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__ATP_production(ATPi, time_, Vm, dATPdt_NL, F, Vi, i_NaK, i_SR_U) // Rate Rules: ATPi' = ((ProducingRate_Max * (Adenosine_Total - ATPi) + dATPdt_NL) - i_NaK / (F * Vi)) + i_SR_U / (4 * F * Vi); // Variable initializations: ATPi = 4.657102729020499; time_ = ; Vm = ; dATPdt_NL = ; F = ; Vi = ; i_NaK = ; i_SR_U = ; ProducingRate_Max = 0.003; Adenosine_Total = 5; end model matsuoka_sarai_kuratomi_ono_noma_2003__sodium_current_voltage_dependent_gate(p_AP_Na, time_, Vm) // Assignment Rules: p_RI_Na := ((1 - p_RP_Na) - p_AP_Na) - p_AI_Na; k_RP_AP := 1 / (0.1027 * exp(- Vm / 8) + 0.25 * exp(- Vm / 50)); k_AP_RP := 1 / (26 * exp(Vm / 17) + 0.02 * exp(Vm / 800)); k_RI_AI := 1 / (0.0001027 * exp(- Vm / 8) + 5 * exp(- Vm / 400)); k_AI_RI := 1 / (1300 * exp(Vm / 20) + 0.04 * exp(Vm / 800)); k_AP_AI := 1 / (0.8 * exp(- Vm / 400)); k_RP_RI := 0.01 / (1 + (k_AI_AP * k_AP_RP * k_RI_AI) / (k_AP_AI * k_RP_AP * k_AI_RI)); k_RI_RP := 0.01 - k_RP_RI; // Rate Rules: p_AP_Na' = (p_RP_Na * k_RP_AP + p_AI_Na * k_AI_AP) - p_AP_Na * (k_AP_RP + k_AP_AI); p_RP_Na' = (p_AP_Na * k_AP_RP + p_RI_Na * k_RI_RP) - p_RP_Na * (k_RP_RI + k_RP_AP); p_AI_Na' = (p_RI_Na * k_RI_AI + p_AP_Na * k_AP_AI) - p_AI_Na * (k_AI_RI + k_AI_AP); // Variable initializations: p_AP_Na = 1.779648367445368e-5; p_RP_Na = 0.3556412697995689; p_AI_Na = 0.40285968661346977; k_AI_AP = 0.0000875; time_ = ; Vm = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__sodium_current_ultra_slow_gate(y, Vm, time_) // Assignment Rules: alpha_y := 1 / (9000000000 * exp(Vm / 5) + 8000 * exp(Vm / 100)); beta_y := 1 / (0.014 * exp(- Vm / 5) + 4000 * exp(- Vm / 100)); // Rate Rules: y' = alpha_y * (1 - y) - beta_y * y; // Variable initializations: y = 0.5861887862983165; Vm = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__sodium_current(i_Na, i_Na_Na, i_Na_K, time_, Vm, CF_Na, CF_K, p_AP_Na, y) // Sub-modules, and any changes to those submodules: sodium_current_voltage_dependent_gate: matsuoka_sarai_kuratomi_ono_noma_2003__sodium_current_voltage_dependent_gate(p_AP_Na, time_, Vm); sodium_current_ultra_slow_gate: matsuoka_sarai_kuratomi_ono_noma_2003__sodium_current_ultra_slow_gate(y, Vm, time_); // Assignment Rules: i_Na := i_Na_Na + i_Na_K; i_Na_Na := P_Na * CF_Na * p_AP_Na * y; i_Na_K := 0.1 * P_Na * CF_K * p_AP_Na * y; // Variable initializations: P_Na = 2860; CF_Na = ; CF_K = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__L_type_Ca_channel_voltage_dependent_gate(p_AP_CaL, time_, Vm) // Assignment Rules: p_RI_CaL := ((1 - p_AP_CaL) - p_RP_CaL) - p_AI_CaL; k_RP_AP := 1 / (0.27 * exp(- Vm / 5.9) + 1.5 * exp(- Vm / 65)); k_AP_RP := 1 / (480 * exp(Vm / 7) + 2.2 * exp(Vm / 65)); k_RI_AI := 1 / (0.0018 * exp(- Vm / 7.4) + 2 * exp(- Vm / 100)); k_AI_RI := 1 / (2200000 * exp(Vm / 7.4) + 11 * exp(Vm / 100)); k_RP_RI := 0.04 / (1 + (k_AI_AP * k_AP_RP * k_RI_AI) / (k_AP_AI * k_RP_AP * k_AI_RI)); k_RI_RP := 0.04 - k_RP_RI; // Rate Rules: p_AP_CaL' = (p_RP_CaL * k_RP_AP + p_AI_CaL * k_AI_AP) - p_AP_CaL * (k_AP_RP + k_AP_AI); p_RP_CaL' = (p_AP_CaL * k_AP_RP + p_RI_CaL * k_RI_RP) - p_RP_CaL * (k_RP_RI + k_RP_AP); p_AI_CaL' = (p_RI_CaL * k_RI_AI + p_AP_CaL * k_AP_AI) - p_AI_CaL * (k_AI_RI + k_AI_AP); // Variable initializations: p_AP_CaL = 1.5445004166497696e-6; p_RP_CaL = 0.9968480629364956; p_AI_CaL = 8.77325391245903e-4; k_AP_AI = 0.004; k_AI_AP = 0.001; time_ = ; Vm = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__L_type_Ca_channel_Ca_dependent_gate(p_U, p_UCa, time_, Vm, Cai, CF_Ca, p_AP_CaL, CaDiadic, p_open_CaL) // Assignment Rules: iCaL := 0.0676 * CF_Ca; Cacm := Cai - 0.3 * iCaL; p_CCa := ((1 - p_C) - p_U) - p_UCa; k_UCa_U := (k_CCa_C * k_C_U * k_U_UCa * k_UCa_CCa) / (k_U_C * k_C_CCa * k_CCa_UCa); CaEffC := Cacm * p_AP_CaL; CaEffU := CaEffC + Cai * (1 - p_AP_CaL); k_UUCa_Ca := k_U_UCa * CaEffU; k_CCCa_Ca := k_C_CCa * CaEffC; CaDiadic := iCaL * p_open_CaL; // Rate Rules: p_U' = (p_C * k_C_U + p_UCa * k_UCa_U) - p_U * (k_UUCa_Ca + k_U_C); p_UCa' = (p_U * k_UUCa_Ca + p_CCa * k_CCa_UCa) - p_UCa * (k_UCa_CCa + k_UCa_U); p_C' = (p_CCa * k_CCa_C + p_U * k_U_C) - p_C * (k_C_U + k_C_CCa * Cacm * p_AP_CaL); // Variable initializations: p_U = 0.17246483915629204; p_UCa = 6.098246017787626e-5; p_C = 0.4250747299372254; k_CCa_UCa = 0.0003; k_UCa_CCa = 0.35; k_C_U = 0.143; k_U_C = 0.35; k_U_UCa = 6.954; k_CCa_C = 0.0042; k_C_CCa = 6.954; time_ = ; Vm = ; Cai = ; CF_Ca = ; p_AP_CaL = ; p_open_CaL = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__L_type_Ca_channel_ultra_slow_gate(y, Vm, time_) // Assignment Rules: alpha_y := 1 / (250000 * exp(Vm / 9) + 58 * exp(Vm / 65)); beta_y := 1 / (1800 * exp(- Vm / 14) + 66 * exp(- Vm / 65)); // Rate Rules: y' = alpha_y * (1 - y) - beta_y * y; // Variable initializations: y = 0.9985266538252986; Vm = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__L_type_Ca_channel(i_Ca_L, i_CaL_Na, i_CaL_Ca, i_CaL_K, p_open_CaL, CaDiadic, time_, Vm, CF_Na, CF_Ca, Cai, CF_K, ATPi, p_AP_CaL, p_U, p_UCa, y) // Sub-modules, and any changes to those submodules: L_type_Ca_channel_voltage_dependent_gate: matsuoka_sarai_kuratomi_ono_noma_2003__L_type_Ca_channel_voltage_dependent_gate(p_AP_CaL, time_, Vm); L_type_Ca_channel_Ca_dependent_gate: matsuoka_sarai_kuratomi_ono_noma_2003__L_type_Ca_channel_Ca_dependent_gate(p_U, p_UCa, time_, Vm, Cai, CF_Ca, p_AP_CaL, CaDiadic, p_open_CaL); L_type_Ca_channel_ultra_slow_gate: matsuoka_sarai_kuratomi_ono_noma_2003__L_type_Ca_channel_ultra_slow_gate(y, Vm, time_); // Assignment Rules: i_Ca_L := i_CaL_Na + i_CaL_Ca + i_CaL_K; i_CaL_Na := 0.0000185 * P_CaL * CF_Na * p_open_CaL; i_CaL_Ca := P_CaL * CF_Ca * p_open_CaL; i_CaL_K := 0.000365 * P_CaL * CF_K * p_open_CaL; p_open_CaL := (p_AP_CaL * (p_U + p_UCa) * y) / (1 + power(1.4 / ATPi, 3)); // Variable initializations: P_CaL = 8712; CF_Na = ; CF_K = ; ATPi = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__T_type_Ca_channel_y1_gate(y1, Vm, time_) // Assignment Rules: alpha_y1 := 1 / (0.019 * exp(- Vm / 5.6) + 0.82 * exp(- Vm / 250)); beta_y1 := 1 / (40 * exp(Vm / 6.3) + 1.5 * exp(Vm / 10000)); // Rate Rules: y1' = alpha_y1 * (1 - y1) - beta_y1 * y1; // Variable initializations: y1 = 1.6882718240109127e-5; Vm = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__T_type_Ca_channel_y2_gate(y2, Vm, time_) // Assignment Rules: alpha_y2 := 1 / (62000 * exp(Vm / 10.1) + 30 * exp(Vm / 3000)); beta_y2 := 1 / (0.0006 * exp(- Vm / 6.7) + 1.2 * exp(- Vm / 25)); // Rate Rules: y2' = alpha_y2 * (1 - y2) - beta_y2 * y2; // Variable initializations: y2 = 0.8585352091865849; Vm = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__T_type_Ca_channel(i_Ca_T, time_, Vm, CF_Ca, y1, y2) // Sub-modules, and any changes to those submodules: T_type_Ca_channel_y1_gate: matsuoka_sarai_kuratomi_ono_noma_2003__T_type_Ca_channel_y1_gate(y1, Vm, time_); T_type_Ca_channel_y2_gate: matsuoka_sarai_kuratomi_ono_noma_2003__T_type_Ca_channel_y2_gate(y2, Vm, time_); // Assignment Rules: i_Ca_T := P_CaT * CF_Ca * y1 * y2; // Variable initializations: P_CaT = 612; CF_Ca = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__time_independent_potassium_current_y_gate(y, fO, Vm, E_K, time_) // Assignment Rules: alpha_y := 1 / (8000 * exp(((Vm - E_K) - 97) / 8.5) + 7 * exp(((Vm - E_K) - 97) / 300)); beta_y := (power(fO, 4) * 1) / (0.00014 * exp(-((Vm - E_K) - 97) / 9.1) + 0.2 * exp(-((Vm - E_K) - 97) / 500)); // Rate Rules: y' = alpha_y * (1 - y) - beta_y * y; // Variable initializations: y = 0.6080573900752752; fO = ; Vm = ; E_K = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__time_independent_potassium_current(i_K1, E_K, fO, time_, Vm, Cm, Ko, Ki, R, T, F, y) // Sub-modules, and any changes to those submodules: time_independent_potassium_current_y_gate: matsuoka_sarai_kuratomi_ono_noma_2003__time_independent_potassium_current_y_gate(y, fO, Vm, E_K, time_); // Assignment Rules: i_K1 := g_K1 * (Vm - E_K) * (fO4 + fO3 + fO2) * y; E_K := ((R * T) / F) * ln(Ko / Ki); g_K1 := P_K1_0 * Cm * power(Ko / 5.4, 0.4); fO := lambda / (mu + lambda); fO2 := 2 * power(fO, 2) * power(fB, 2); fO3 := (8 / 3) * power(fO, 3) * fB; fO4 := power(fO, 4); fB := mu / (mu + lambda); mu := (0.75 * exp(0.035 * ((Vm - E_K) - 10))) / (1 + exp(0.015 * ((Vm - E_K) - 140))); lambda := (3 * exp(-(0.048) * ((Vm - E_K) - 10)) * (1 + exp(0.064 * ((Vm - E_K) - 38)))) / (1 + exp(0.03 * ((Vm - E_K) - 70))); // Variable initializations: P_K1_0 = 1.146; Cm = ; Ko = ; Ki = ; R = ; T = ; F = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__rapid_time_dependent_potassium_current_y1_gate(y1, Vm, E_K, time_) // Assignment Rules: alpha_y1 := 1 / (20 * exp(- Vm / 11.5) + 5 * exp(- Vm / 300)); beta_y1 := 1 / (160 * exp(Vm / 28) + 200 * exp(Vm / 1000)) + 1 / (2500 * exp(Vm / 20)); // Rate Rules: y1' = alpha_y1 * (1 - y1) - beta_y1 * y1; // Variable initializations: y1 = 0.0018339931180983765; Vm = ; E_K = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__rapid_time_dependent_potassium_current_y2_gate(y2, Vm, E_K, time_) // Assignment Rules: alpha_y2 := 1 / (200 * exp(- Vm / 13) + 20 * exp(- Vm / 300)); beta_y2 := 1 / (1600 * exp(Vm / 28) + 2000 * exp(Vm / 1000)) + 1 / (10000 * exp(Vm / 20)); // Rate Rules: y2' = alpha_y2 * (1 - y2) - beta_y2 * y2; // Variable initializations: y2 = 0.20443083454225305; Vm = ; E_K = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__rapid_time_dependent_potassium_current_y3_gate(y3, Vm, E_K, time_) // Assignment Rules: alpha_y3 := 1 / (10 * exp(Vm / 17) + 2.5 * exp(Vm / 300)); beta_y3 := 1 / (0.35 * exp(- Vm / 17) + 2 * exp(- Vm / 150)); // Rate Rules: y3' = alpha_y3 * (1 - y3) - beta_y3 * y3; // Variable initializations: y3 = 0.967887666264921; Vm = ; E_K = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__rapid_time_dependent_potassium_current(i_Kr, time_, Vm, Cm, E_K, Ko, y1, y2, y3) // Sub-modules, and any changes to those submodules: rapid_time_dependent_potassium_current_y1_gate: matsuoka_sarai_kuratomi_ono_noma_2003__rapid_time_dependent_potassium_current_y1_gate(y1, Vm, E_K, time_); rapid_time_dependent_potassium_current_y2_gate: matsuoka_sarai_kuratomi_ono_noma_2003__rapid_time_dependent_potassium_current_y2_gate(y2, Vm, E_K, time_); rapid_time_dependent_potassium_current_y3_gate: matsuoka_sarai_kuratomi_ono_noma_2003__rapid_time_dependent_potassium_current_y3_gate(y3, Vm, E_K, time_); // Assignment Rules: i_Kr := g_Kr * (Vm - E_K) * (0.6 * y1 + 0.4 * y2) * y3; g_Kr := P_Kr * Cm * power(Ko / 5.4, 0.2); // Variable initializations: P_Kr = 0.00864; Cm = ; Ko = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__slow_time_dependent_potassium_current_y1_gate(y1, Vm, time_) // Assignment Rules: alpha_y1 := 1 / (85 * exp(- Vm / 10.5) + 370 * exp(- Vm / 62)); beta_y1 := 1 / (1450 * exp(Vm / 20) + 260 * exp(Vm / 100)); // Rate Rules: y1' = alpha_y1 * (1 - y1) - beta_y1 * y1; // Variable initializations: y1 = 0.09738789658609195; Vm = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__slow_time_dependent_potassium_current_y2_gate(y2, Cai, Vm, time_) // Assignment Rules: alpha_y2 := 3.7 * Cai; // Rate Rules: y2' = alpha_y2 * (1 - y2) - beta_y2 * y2; // Variable initializations: y2 = 0.09745345578743213; beta_y2 = 0.004444; Cai = ; Vm = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__slow_time_dependent_potassium_current(i_Ks, i_Ks_Na, i_Ks_K, time_, Vm, Cai, CF_K, CF_Na, y1, y2) // Sub-modules, and any changes to those submodules: slow_time_dependent_potassium_current_y1_gate: matsuoka_sarai_kuratomi_ono_noma_2003__slow_time_dependent_potassium_current_y1_gate(y1, Vm, time_); slow_time_dependent_potassium_current_y2_gate: matsuoka_sarai_kuratomi_ono_noma_2003__slow_time_dependent_potassium_current_y2_gate(y2, Cai, Vm, time_); // Assignment Rules: i_Ks := i_Ks_Na + i_Ks_K; i_Ks_Na := P_Ks_Na * CF_Na * power(y1, 2) * (0.9 * y2 + 0.1); i_Ks_K := P_Ks_K * CF_K * power(y1, 2) * (0.9 * y2 + 0.1); // Variable initializations: CF_K = ; CF_Na = ; P_Ks_K = 5.04; P_Ks_Na = 0.2016; end model matsuoka_sarai_kuratomi_ono_noma_2003__transient_outward_current_y1_gate(y1, Vm, time_) // Assignment Rules: alpha_y1 := 1 / (11 * exp(- Vm / 28) + 0.2 * exp(- Vm / 400)); beta_y1 := 1 / (4.4 * exp(Vm / 16) + 0.2 * exp(Vm / 500)); // Rate Rules: y1' = alpha_y1 * (1 - y1) - beta_y1 * y1; // Variable initializations: y1 = 7.956883250874798e-4; Vm = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__transient_outward_current_y2_gate(y2, Vm, time_) // Assignment Rules: alpha_y2 := (0.0038 * exp(-(Vm + 13.5) / 11.3)) / (1 + 0.051335 * exp(-(Vm + 13.5) / 11.3)); beta_y2 := (0.0038 * exp((Vm + 13.5) / 11.3)) / (1 + 0.067083 * exp((Vm + 13.5) / 11.3)); // Rate Rules: y2' = alpha_y2 * (1 - y2) - beta_y2 * y2; // Variable initializations: y2 = 0.9999125083105881; Vm = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__transient_outward_current(i_to, i_to_Na, i_to_K, time_, Vm, CF_K, CF_Na, y1, y2) // Sub-modules, and any changes to those submodules: transient_outward_current_y1_gate: matsuoka_sarai_kuratomi_ono_noma_2003__transient_outward_current_y1_gate(y1, Vm, time_); transient_outward_current_y2_gate: matsuoka_sarai_kuratomi_ono_noma_2003__transient_outward_current_y2_gate(y2, Vm, time_); // Assignment Rules: i_to := i_to_Na + i_to_K; i_to_Na := P_to_Na * CF_Na * power(y1, 3) * y2; i_to_K := P_to_K * CF_K * power(y1, 3) * y2; // Variable initializations: CF_K = ; CF_Na = ; P_to_K = 0.033; P_to_Na = 0.00297; end model matsuoka_sarai_kuratomi_ono_noma_2003__background_NSC_current(i_bNSC, i_bNSC_Na, i_bNSC_K, time_, CF_K, CF_Na) // Assignment Rules: i_bNSC := i_bNSC_K + i_bNSC_Na; i_bNSC_Na := P_bNSC * CF_Na; i_bNSC_K := 0.4 * P_bNSC * CF_K; // Variable initializations: P_bNSC = 0.385; time_ = ; CF_K = ; CF_Na = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__background_Kpl_current(i_Kpl, time_, Vm, CF_K, Ko) // Assignment Rules: i_Kpl := piecewise( P_Kpl * CF_K * 13.0077 , Vm == -(3) , (P_Kpl * CF_K * (Vm + 3)) / (1 - exp(-(Vm + 3) / 13)) ); P_Kpl := 0.00011 * power(Ko / 5.4, 0.16); // Variable initializations: time_ = ; Vm = ; CF_K = ; Ko = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__background_lCa_current(i_lCa, i_lCa_Na, i_lCa_K, time_, CF_K, CF_Na, Cai) // Assignment Rules: i_lCa := i_lCa_K + i_lCa_Na; i_lCa_Na := P_lCa * CF_Na * p_open; i_lCa_K := P_lCa * CF_K * p_open; p_open := 1 / (1 + power(0.0012 / Cai, 3)); // Variable initializations: P_lCa = 0.11; time_ = ; CF_K = ; CF_Na = ; Cai = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__background_KATP_current(i_KATP, time_, Vm, E_K, Ko, ATPi) // Assignment Rules: i_KATP := gamma * (Vm - E_K) * p_open; p_open := 0.8 / (1 + power(ATPi / 0.1, 2)); gamma := P_KATP * N * power(Ko / 1, 0.24); // Variable initializations: time_ = ; Vm = ; E_K = ; Ko = ; ATPi = ; P_KATP = 0.0236; N = 2333; end model matsuoka_sarai_kuratomi_ono_noma_2003__background_Cab_current(i_Cab, time_, CF_Ca) // Assignment Rules: i_Cab := P_Cab * CF_Ca; // Variable initializations: P_Cab = 0.04; time_ = ; CF_Ca = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__sodium_calcium_exchanger_y_gate(y, time_, p_E1Na, p_E2Na, p_E1Ca, p_E2Ca, k1, k2, k3, k4) // Assignment Rules: alpha_y := k2 * p_E2Na + k4 * p_E2Ca; beta_y := k1 * p_E1Na + k3 * p_E1Ca; // Rate Rules: y' = alpha_y * (1 - y) - beta_y * y; // Variable initializations: y = 0.9891789193465331; time_ = ; p_E1Na = ; p_E2Na = ; p_E1Ca = ; p_E2Ca = ; k1 = ; k2 = ; k3 = ; k4 = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__sodium_calcium_exchanger(i_NaCa, p_E2Na, p_E1Na, p_E1Ca, p_E2Ca, k1, k2, k3, k4, Nai, Nao, Cai, Cao, R, F, T, Vm, Cm, time_, y) // Sub-modules, and any changes to those submodules: sodium_calcium_exchanger_y_gate: matsuoka_sarai_kuratomi_ono_noma_2003__sodium_calcium_exchanger_y_gate(y, time_, p_E1Na, p_E2Na, p_E1Ca, p_E2Ca, k1, k2, k3, k4); // Assignment Rules: i_NaCa := P_NaCa * Cm * 1 * (k1 * p_E1Na * y - k2 * p_E2Na * (1 - y)); p_E2Na := 1 / (1 + power(Km_Nao / Nao, 3) * (1 + Cao / Km_Cao)); p_E1Na := 1 / (1 + power(Km_Nai / Nai, 3) * (1 + Cai / Km_Cai)); p_E1Ca := 1 / (1 + (Km_Cai / Cai) * (1 + power(Nai / Km_Nai, 3))); p_E2Ca := 1 / (1 + (Km_Cao / Cao) * (1 + power(Nao / Km_Nao, 3))); k1 := 1 * exp((Partition * F * Vm) / (R * T)); k2 := 1 * exp(((Partition - 1) * F * Vm) / (R * T)); // Variable initializations: k3 = 1; k4 = 1; Km_Nai = 8.75; Km_Nao = 87.5; Km_Cai = 0.00138; Km_Cao = 1.38; Nai = ; Nao = ; Cai = ; Cao = ; R = ; F = ; T = ; Vm = ; Cm = ; P_NaCa = 6.81; Partition = 0.32; end model matsuoka_sarai_kuratomi_ono_noma_2003__sodium_potassium_pump_y_gate(y, time_, p_E1Na, p_E2Na, p_E1K, p_E2K, k1, k2, k3, k4) // Assignment Rules: alpha_y := k2 * p_E2Na + k4 * p_E2K; beta_y := k1 * p_E1Na + k3 * p_E1K; // Rate Rules: y' = alpha_y * (1 - y) - beta_y * y; // Variable initializations: y = 0.5910747147428818; time_ = ; p_E1Na = ; p_E2Na = ; p_E1K = ; p_E2K = ; k1 = ; k2 = ; k3 = ; k4 = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__sodium_potassium_pump(i_NaK, p_E2Na, p_E1Na, p_E1K, p_E2K, k1, k2, k3, k4, ATPi, Nai, Nao, Ki, Ko, R, F, T, Vm, Cm, time_, y) // Sub-modules, and any changes to those submodules: sodium_potassium_pump_y_gate: matsuoka_sarai_kuratomi_ono_noma_2003__sodium_potassium_pump_y_gate(y, time_, p_E1Na, p_E2Na, p_E1K, p_E2K, k1, k2, k3, k4); // Assignment Rules: i_NaK := P_NaK * Cm * 1 * (k1 * p_E1Na * y - k2 * p_E2Na * (1 - y)); p_E2Na := 1 / (1 + power(Km_Nao / Nao_Eff, 1.06) * (1 + power(Ko / Km_Ko, 1.12))); p_E1Na := 1 / (1 + power(Km_Nai / Nai, 1.06) * (1 + power(Ki / Km_Ki, 1.12))); p_E1K := 1 / (1 + power(Km_Ki / Ki, 1.12) * (1 + power(Nai / Km_Nai, 1.06))); p_E2K := 1 / (1 + power(Km_Ko / Ko, 1.12) * (1 + power(Nao_Eff / Km_Nao, 1.06))); k1 := 0.37 / (1 + Km_ATP / ATPi); Nao_Eff := Nao * exp((-(0.82) * F * Vm) / (R * T)); // Variable initializations: k2 = 0.04; k3 = 0.01; k4 = 0.165; Km_Nai = 4.05; Km_Nao = 69.8; Km_Ki = 32.88; Km_Ko = 0.258; Km_ATP = 0.094; ATPi = ; Nai = ; Nao = ; Ki = ; Ko = ; R = ; F = ; T = ; Vm = ; Cm = ; P_NaK = 21; end model matsuoka_sarai_kuratomi_ono_noma_2003__SR_calcium_pump_y_gate(y, time_, p_E1Ca, p_E2Ca, p_E1, p_E2, k1, k2, k3, k4) // Assignment Rules: alpha_y := k2 * p_E2Ca + k4 * p_E2; beta_y := k1 * p_E1Ca + k3 * p_E1; // Rate Rules: y' = alpha_y * (1 - y) - beta_y * y; // Variable initializations: y = 0.46108441538480216; time_ = ; p_E1Ca = ; p_E2Ca = ; p_E1 = ; p_E2 = ; k1 = ; k2 = ; k3 = ; k4 = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__SR_calcium_pump(i_SR_U, p_E2Ca, p_E1Ca, p_E1, p_E2, k1, k2, k3, k4, ATPi, Cai, Caup, time_, y) // Sub-modules, and any changes to those submodules: SR_calcium_pump_y_gate: matsuoka_sarai_kuratomi_ono_noma_2003__SR_calcium_pump_y_gate(y, time_, p_E1Ca, p_E2Ca, p_E1, p_E2, k1, k2, k3, k4); // Assignment Rules: i_SR_U := i_max * 1 * (k1 * p_E1Ca * y - k2 * p_E2Ca * (1 - y)); p_E2Ca := 1 / (1 + Km_CaCyto / Cai); p_E1Ca := 1 / (1 + Km_CaSR / Caup); p_E1 := 1 - p_E1Ca; p_E2 := 1 - p_E2Ca; k2 := 1 / (1 + Km_ATP / ATPi); // Variable initializations: k1 = 0.01; k3 = 1; k4 = 0.01; Km_CaSR = 0.08; Km_CaCyto = 0.0008; Km_ATP = 0.1; i_max = 162500; ATPi = ; Cai = ; Caup = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__RyR_channel(i_RyR, p_open_CaL, Cai, Carel, time_, CaDiadic) // Assignment Rules: i_RyR := P_RyR * (Carel - Cai) * p_open_RyR; k1 := 280000 * power(Cai / 1, 2) + Diadid_Factor * CaDiadic; k2 := 0.08 / (1 + 0.36 / Carel); k3 := 0.000377 * power(Carel / 1, 2); // Rate Rules: p_open_RyR' = p_close_RyR * k1 - p_open_RyR * k2; p_close_RyR' = k3 * (1 - (p_open_RyR + p_close_RyR)) - (k1 + k4) * p_close_RyR; // Variable initializations: P_RyR = 62000; k4 = 0.000849; p_open_RyR = 3.4314360001543243e-4; p_close_RyR = 0.19135178123107768; p_open_CaL = ; Cai = ; Carel = ; time_ = ; Diadid_Factor = -150; CaDiadic = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__SR_T_current(i_SR_T, Carel, Caup, time_) // Assignment Rules: i_SR_T := P_SR_T * (Caup - Carel); // Variable initializations: P_SR_T = 386; Carel = ; Caup = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__SR_L_current(i_SR_L, Cai, Caup, time_) // Assignment Rules: i_SR_L := P_SR_L * (Caup - Cai); // Variable initializations: P_SR_L = 459; Cai = ; Caup = ; time_ = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__Ca_concentrations_in_SR(Carel, Caup, time_, F, i_SR_L, i_SR_T, i_RyR, i_SR_U) // Assignment Rules: Carel := (root(power(b1, 2) + 4 * c1) - b1) / 2; b1 := (CSQN_max - Ca_Total) + K_mCSQN; c1 := K_mCSQN * Ca_Total; // Rate Rules: Ca_Total' = (i_SR_T - i_RyR) / (2 * F * V_rel); Caup' = ((- i_SR_U - i_SR_T) - i_SR_L) / (2 * F * V_up); // Variable initializations: Ca_Total = 9.455741736977666; Caup = 2.611712901567567; V_rel = 160; V_up = 400; time_ = ; F = ; i_SR_L = ; i_SR_T = ; i_RyR = ; i_SR_U = ; CSQN_max = 10; K_mCSQN = 0.8; end model matsuoka_sarai_kuratomi_ono_noma_2003__NL_model(dCaidt, dATPdt, time_, Cai) // Assignment Rules: dCaidt := T_t * ((Q_d2 + Q_r) - Q_b); dATPdt := -(0.4) * pCaCB * T_t; EffFraction := exp(-(20) * power(L - L_a, 2)); p := ((1 - pCa) - pCaCB) - pCB; Q_a := Y_2 * pCa * EffFraction - Z_2 * pCaCB; Q_b := Y_1 * Cai * p - Z_1 * pCa; Q_r := Y_3 * pCaCB - Z_3 * pCB * Cai; Q_d := Y_4 * pCB; Q_d1 := Y_d * power(d(X)/ d(unknown- element), 2) * pCB; Q_d2 := Y_d * power(d(X)/ d(unknown- element), 2) * pCaCB; h := L - X; ForceCB := NewCBF * h; NewCBF := ForceFactor * CBBound; CBBound := T_t * (pCaCB + pCB); ForceEcomp := KForceEC * power(ZeroForceEL - L, 5) + KForceLinearEc * (ZeroForceEL - L); ForceExt := - ForceEcomp + ForceCB; // Rate Rules: pCa' = Q_b - Q_a; pCaCB' = (Q_a - Q_r) - Q_d2; pCB' = (Q_r - Q_d) - Q_d1; X' = B * (h - h_c); // Variable initializations: pCa = 0.02490898775497523; pCaCB = 0.001990153835322864; pCB = 4.2941813853474524e-4; T_t = 0.07; Y_1 = 39; Y_2 = 0.0039; Y_3 = 0.03; Y_4 = 0.12; Y_d = 0.027; Z_1 = 0.03; Z_2 = 0.0039; Z_3 = 1560; L_a = 1.17; L = 0.9623799975411884; X = 0.9573749975411884; time_ = ; Cai = ; KForceEC = 140000; ZeroForceEL = 0.97; KForceLinearEc = 200; ForceFactor = 1800000; B = 1.2; h_c = 0.005; d = ; unknown = ; element = ; end model matsuoka_sarai_kuratomi_ono_noma_2003__internal_concentrations() end model matsuoka_sarai_kuratomi_ono_noma_2003__intracellular_currents() end model matsuoka_sarai_kuratomi_ono_noma_2003__transmembrane_currents() end model *matsuoka_sarai_kuratomi_ono_noma_2003____main() // Sub-modules, and any changes to those submodules: environment: matsuoka_sarai_kuratomi_ono_noma_2003__environment(time_); membrane: matsuoka_sarai_kuratomi_ono_noma_2003__membrane(Vm, R, T, F, Cm, i_ext, time_, i_Na, i_Ca_L, i_Ca_T, i_K1, i_Kr, i_Ks, i_to, i_NaK, i_NaCa, i_bNSC, i_Cab, i_Kpl, i_lCa, i_KATP); external_ion_concentrations: matsuoka_sarai_kuratomi_ono_noma_2003__external_ion_concentrations(Nao, Cao, Ko); internal_ion_concentrations: matsuoka_sarai_kuratomi_ono_noma_2003__internal_ion_concentrations(Nai, Cai, Ki, Vi, time_, F, i_Na_Na, i_CaL_Na, i_bNSC_Na, i_lCa_Na, i_NaK, i_K1, i_Kr, i_to_K, i_to_Na, i_Ks_K, i_Ks_Na, i_KATP, i_Na_K, i_CaL_K, i_bNSC_K, i_lCa_K, i_Kpl, i_CaL_Ca, i_Ca_T, i_NaCa, i_bNSC, i_Cab, i_ext, i_RyR, i_SR_U, i_SR_L, dCaidt); constant_field_equations: matsuoka_sarai_kuratomi_ono_noma_2003__constant_field_equations(CF_Na, CF_Ca, CF_K, Nai, Nao, Cai, Cao, Ki, Ko, R, T, F, Vm); ATP_production: matsuoka_sarai_kuratomi_ono_noma_2003__ATP_production(ATPi, time_, Vm, dATPdt, F, Vi, i_NaK, i_SR_U); sodium_current: matsuoka_sarai_kuratomi_ono_noma_2003__sodium_current(i_Na, i_Na_Na, i_Na_K, time_, Vm, CF_Na, CF_K, p_AP_Na, y); L_type_Ca_channel: matsuoka_sarai_kuratomi_ono_noma_2003__L_type_Ca_channel(i_Ca_L, i_CaL_Na, i_CaL_Ca, i_CaL_K, p_open_CaL, CaDiadic, time_, Vm, CF_Na, CF_Ca, Cai, CF_K, ATPi, p_AP_CaL, p_U, p_UCa, y0); T_type_Ca_channel: matsuoka_sarai_kuratomi_ono_noma_2003__T_type_Ca_channel(i_Ca_T, time_, Vm, CF_Ca, y1, y2); time_independent_potassium_current: matsuoka_sarai_kuratomi_ono_noma_2003__time_independent_potassium_current(i_K1, E_K, fO, time_, Vm, Cm, Ko, Ki, R, T, F, y3); rapid_time_dependent_potassium_current: matsuoka_sarai_kuratomi_ono_noma_2003__rapid_time_dependent_potassium_current(i_Kr, time_, Vm, Cm, E_K, Ko, y10, y20, y30); slow_time_dependent_potassium_current: matsuoka_sarai_kuratomi_ono_noma_2003__slow_time_dependent_potassium_current(i_Ks, i_Ks_Na, i_Ks_K, time_, Vm, Cai, CF_K, CF_Na, y11, y21); transient_outward_current: matsuoka_sarai_kuratomi_ono_noma_2003__transient_outward_current(i_to, i_to_Na, i_to_K, time_, Vm, CF_K, CF_Na, y12, y22); background_NSC_current: matsuoka_sarai_kuratomi_ono_noma_2003__background_NSC_current(i_bNSC, i_bNSC_Na, i_bNSC_K, time_, CF_K, CF_Na); background_Kpl_current: matsuoka_sarai_kuratomi_ono_noma_2003__background_Kpl_current(i_Kpl, time_, Vm, CF_K, Ko); background_lCa_current: matsuoka_sarai_kuratomi_ono_noma_2003__background_lCa_current(i_lCa, i_lCa_Na, i_lCa_K, time_, CF_K, CF_Na, Cai); background_KATP_current: matsuoka_sarai_kuratomi_ono_noma_2003__background_KATP_current(i_KATP, time_, Vm, E_K, Ko, ATPi); background_Cab_current: matsuoka_sarai_kuratomi_ono_noma_2003__background_Cab_current(i_Cab, time_, CF_Ca); sodium_calcium_exchanger: matsuoka_sarai_kuratomi_ono_noma_2003__sodium_calcium_exchanger(i_NaCa, p_E2Na, p_E1Na, p_E1Ca, p_E2Ca, k1, k2, k3, k4, Nai, Nao, Cai, Cao, R, F, T, Vm, Cm, time_, y4); sodium_potassium_pump: matsuoka_sarai_kuratomi_ono_noma_2003__sodium_potassium_pump(i_NaK, p_E2Na0, p_E1Na0, p_E1K, p_E2K, k10, k20, k30, k40, ATPi, Nai, Nao, Ki, Ko, R, F, T, Vm, Cm, time_, y5); SR_calcium_pump: matsuoka_sarai_kuratomi_ono_noma_2003__SR_calcium_pump(i_SR_U, p_E2Ca0, p_E1Ca0, p_E1, p_E2, k11, k21, k31, k41, ATPi, Cai, Caup, time_, y6); RyR_channel: matsuoka_sarai_kuratomi_ono_noma_2003__RyR_channel(i_RyR, p_open_CaL, Cai, Carel, time_, CaDiadic); SR_T_current: matsuoka_sarai_kuratomi_ono_noma_2003__SR_T_current(i_SR_T, Carel, Caup, time_); SR_L_current: matsuoka_sarai_kuratomi_ono_noma_2003__SR_L_current(i_SR_L, Cai, Caup, time_); Ca_concentrations_in_SR: matsuoka_sarai_kuratomi_ono_noma_2003__Ca_concentrations_in_SR(Carel, Caup, time_, F, i_SR_L, i_SR_T, i_RyR, i_SR_U); NL_model: matsuoka_sarai_kuratomi_ono_noma_2003__NL_model(dCaidt, dATPdt, time_, Cai); internal_concentrations: matsuoka_sarai_kuratomi_ono_noma_2003__internal_concentrations(); intracellular_currents: matsuoka_sarai_kuratomi_ono_noma_2003__intracellular_currents(); transmembrane_currents: matsuoka_sarai_kuratomi_ono_noma_2003__transmembrane_currents(); end