//Created by libAntimony v2.4 model li_1996__environment(time_) // Variable initializations: time_ = ; end model li_1996__soma_compartment(V_s, V_Na, V_Ca, V_K, n, h, m_infinity, g_c, p, V_D, time_, C_m, m_T, h_T, a, b, m_h) // Assignment Rules: I_Na_s := g_Na_s * h * (V_s - V_Na) * power(m_infinity, 3); I_K_DR_s := g_K_DR_s * (V_s - V_K) * power(n, 2); I_Ca_T := g_Ca_T * h_T * (V_s - V_Ca) * power(m_T, 2); I_K_Ca := ((g_K_Ca * power(Ca, 4)) / (power(Ca, 4) + power(K_Ca, 4))) * (V_s - V_K); I_A := g_A * b * (V_s - V_K) * power(a, 4); I_h := g_h * m_h * (V_s - V_h); // Rate Rules: V_s' = (1000.0 * (I_APP - (I_Na_s + I_Ca_T + I_K_DR_s + I_K_Ca + I_A + I_h + (g_c / p) * (V_s - V_D)))) / C_m; Ca' = -(beta * I_Ca_T + k_Ca * Ca); // Variable initializations: V_s = -64.0; V_Na = 55; g_Na_s = 3.2; g_K_DR_s = 6.4; g_Ca_T = 1.5; g_K_Ca = 1.2; g_A = 2; g_h = 0.1; Ca = 0; k_Ca = 1; K_Ca = 0.0004; V_h = -30; beta = 0.104; I_APP = -6.7; V_Ca = ; V_K = ; n = ; h = ; m_infinity = ; g_c = ; p = ; V_D = ; time_ = ; C_m = ; m_T = ; h_T = ; a = ; b = ; m_h = ; end model li_1996__dendritic_compartment(V_D, V_Na, g_c, p, time_, C_m, V_s, V_Ca, m_L, V_K, n) // Assignment Rules: I_L := g_L * (V_D - V_L); I_pump := R_pump * (phi_Na - phi_Na_eq); phi_Na := power(Na, 3) / (power(Na, 3) + power(K_p, 3)); phi_Na_eq := power(Na_eq, 3) / (power(Na_eq, 3) + power(K_p, 3)); I_NMDA := (g_NMDA / (1 + (Mg_o / K_Mg) * exp(- V_D / q))) * (V_D - V_NMDA); I_Na_NMDA := (g_Na_NMDA / (1 + (Mg_o / K_Mg) * exp(- V_D / q))) * (V_D - V_Na); I_D := I_NMDA + I_pump + I_L; I_Ca_L := g_Ca_L * (V_D - V_Ca) * power(m_L, 2); I_K_DR_D := g_K_DR_D * (V_D - V_K) * power(n, 2); // Rate Rules: V_D' = -(1000.0 * (I_Ca_L + I_K_DR_D + I_NMDA + I_pump + I_L + (g_c / (1 - p)) * (V_D - V_s))) / C_m; Na' = alpha * (- I_Na_NMDA - I_pump * 3); // Variable initializations: V_D = -77.0; Na = 5.09; K_p = 15; R_pump = 18; Na_eq = 8; alpha = 0.173; g_NMDA = 25; g_Na_NMDA = 5; g_L = 0.18; Mg_o = 1.4; K_Mg = 10; q = 12.5; V_NMDA = 0; V_Na = ; V_L = -50; g_Ca_L = 0.19; g_K_DR_D = 0.14; g_c = ; p = ; time_ = ; C_m = ; V_s = ; V_Ca = ; m_L = ; V_K = ; n = ; end model li_1996__general_variables(C_m, g_c, p, V_Ca, V_K) // Variable initializations: C_m = 1; g_c = 0.1; p = 0.5; V_Ca = 120; V_K = -85; end model li_1996__gating_variables(m_infinity, m_T_infinity, h_T_infinity, a_infinity, b_infinity, m_h_infinity, n, h, m_T, m_L, m_h, a, b, h_T, time_, V_s, V_D) // Assignment Rules: m_infinity := 1 / (1 + exp(-(V_s + 35) / 6.2)); m_T_infinity := 1 / (1 + exp(-(V_s + 55) / 7)); h_T_infinity := 1 / (1 + exp((V_s + 81) / 11)); a_infinity := 1 / (1 + exp(-(V_s + 60) / 10)); b_infinity := 1 / (1 + exp((V_s + 70) / 5.7)); m_h_infinity := 1 / (1 + exp((V_s + 80) / 8)); m_L_infinity := 1 / (1 + exp(-(V_D + 20) / 5.3)); n_infinity := 1 / (1 + exp(-(V_s + 31) / 5.3)); h_infinity := 1 / (1 + exp((V_s + 30) / 8.3)); tau_h := 0.4 * (1 + 2 / (1 + exp((V_s + 25) / 5))); tau_n := (0.8 * (1 + 2 / (1 + exp((V_s + 25) / 10)))) / (1 + exp(-(V_s + 70) / 10)); tau_m_T := 1; tau_h_T := 10; tau_m_L := 0.4 / (5 * exp(-(V_D + 11) / 8.3) + (-(V_D + 11) / 8.3) / (exp(-(V_D + 11) / 8.3) - 1)); tau_a := 0.5; tau_b := 10; tau_m_h := 190; // Rate Rules: n' = (n_infinity - n) / tau_n; h' = (h_infinity - h) / tau_h; m_T' = (m_T_infinity - m_T) / tau_m_T; m_L' = (m_L_infinity - m_L) / tau_m_L; m_h' = (m_h_infinity - m_h) / tau_m_h; a' = (a_infinity - a) / tau_a; b' = (b_infinity - b) / tau_b; h_T' = (h_T_infinity - h_T) / tau_h_T; // Variable initializations: n = 0.002; h = 1.0; m_T = 0.1; m_L = 0.1; m_h = 0.1; a = 0.1; b = 0.1; h_T = 0.1; time_ = ; V_s = ; V_D = ; end model *li_1996____main() // Sub-modules, and any changes to those submodules: environment: li_1996__environment(time_); soma_compartment: li_1996__soma_compartment(V_s, V_Na, V_Ca, V_K, n, h, m_infinity, g_c, p, V_D, time_, C_m, m_T, h_T, a, b, m_h); dendritic_compartment: li_1996__dendritic_compartment(V_D, V_Na, g_c, p, time_, C_m, V_s, V_Ca, m_L, V_K, n); general_variables: li_1996__general_variables(C_m, g_c, p, V_Ca, V_K); gating_variables: li_1996__gating_variables(m_infinity, m_T_infinity, h_T_infinity, a_infinity, b_infinity, m_h_infinity, n, h, m_T, m_L, m_h, a, b, h_T, time_, V_s, V_D); end