You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
128 lines
2.9 KiB
128 lines
2.9 KiB
TITLE kif.mod DCN pyramidal cell model fast transient current |
|
|
|
COMMENT |
|
|
|
This model implements a fast transient potassium current from |
|
Dorsal Cochlear Nucleus Pyramidal cells |
|
based on kinetic data from Kanold and Manis (1999) and Kanold's dissertation (1999) |
|
-- 15 Jan 1999 P. Manis |
|
2/10/02. P. Manis. |
|
Pulled from pyr.mod 7/24/2014 |
|
ENDCOMMENT |
|
|
|
|
|
UNITS { |
|
(mA) = (milliamp) |
|
(mV) = (millivolt) |
|
} |
|
|
|
NEURON { |
|
SUFFIX kif |
|
USEION k READ ek WRITE ik |
|
|
|
RANGE gkif, kif_a_inf, kif_i_inf : fast inactivating potassium current |
|
RANGE akif, gbar |
|
RANGE kif_a_tau, kif_i_tau |
|
RANGE kif_a_start, kif_i_start |
|
RANGE kif_ivh, kif_avh, kif_hivh |
|
} |
|
|
|
INDEPENDENT {t FROM 0 TO 1 WITH 1 (ms)} |
|
|
|
PARAMETER { |
|
v (mV) |
|
celsius (degC) |
|
dt (ms) |
|
ek (mV) : = -81.5 (mV) |
|
ena (mV) : = 50.0 (mV) |
|
gbar = 0.0125 (mho/cm2) <0,1e9> |
|
|
|
kif_ivh = -89.6 (mV) |
|
kif_avh = -57.0 (mV) |
|
kif_hivh = -87.0 (mV) |
|
kif_a_start = -1 (1) |
|
kif_i_start = -1 (1) |
|
} |
|
|
|
STATE { |
|
kifa kifi |
|
} |
|
|
|
ASSIGNED { |
|
gkif (mho/cm2) |
|
ik (mA/cm2) |
|
kif_a_inf (1) |
|
kif_i_inf (1) |
|
kif_a_tau (ms) |
|
kif_i_tau (ms) |
|
akif () |
|
q10 () |
|
} |
|
|
|
|
|
BREAKPOINT { |
|
SOLVE states METHOD cnexp |
|
akif = kifa*kifa*kifa*kifa*kifi |
|
gkif = gbar*akif |
|
ik = gkif*(v - ek) |
|
} |
|
|
|
INITIAL { |
|
q10 = 3^((celsius - 22)/10 (degC)) |
|
rates(v) |
|
if(kif_a_start < 0) { : if xx_(i/a)_start is > 0, then perturbation is done at onset of computations. |
|
kifa = kif_a_inf |
|
} else { |
|
kifa = kif_a_start |
|
} |
|
if(kif_i_start < 0) { |
|
kifi = kif_i_inf |
|
} else { |
|
kifi = kif_i_start |
|
} |
|
} |
|
|
|
DERIVATIVE states { |
|
rates(v) |
|
kifa' = (kif_a_inf - kifa) / kif_a_tau |
|
kifi' = (kif_i_inf - kifi) / kif_i_tau |
|
} |
|
|
|
|
|
PROCEDURE rates(v(mV)) { :Computes rate and other constants at current v. |
|
:Call once from HOC to initialize inf at resting v. |
|
: LOCAL alpha, beta, sum |
|
: TABLE kif_a_inf, kif_a_tau, kif_i_inf, kif_i_tau DEPEND celsius, kif_avh, kif_ivh FROM -200 TO 100 WITH 400 |
|
: "kif" fast inactivation potassium channel - activation and inactivation |
|
kif_a_inf = kif_m(v) |
|
kif_i_inf = kif_h(v) |
|
kif_a_tau = kif_mt(v) |
|
kif_i_tau = kif_ht(v) |
|
} |
|
|
|
: Make these as functions so we can view them from hoc, although this |
|
: may slow things down a bit |
|
|
|
FUNCTION kif_m(v ) { : ikif activation |
|
kif_m = 1.0/(1+exp(-(v-kif_avh)/25.8 (mV))) |
|
} |
|
|
|
FUNCTION kif_h(v (mV)) { : ikif inactivation |
|
kif_h = 1.0/(1+exp((v-kif_ivh)/6.7 (mV))) |
|
} |
|
|
|
FUNCTION kif_mt(v (mV)) (ms) { : ikif activation tau |
|
LOCAL x |
|
x = 0.15 * exp((v-kif_avh)/10 (mV)) + 0.3 *exp(-(v-kif_avh)/10 (mV)) |
|
x = 0.5 + (1.0 /x) |
|
kif_mt = (x * 1.0 (ms))/q10 |
|
} |
|
|
|
FUNCTION kif_ht(v (mV)) (ms) { : ikif inactivation tau |
|
LOCAL x |
|
x = 0.015 * exp((v-kif_hivh)/20 (mV))+0.03*exp(-(v-kif_hivh)/20 (mV)) |
|
x = 10 + (1./x) |
|
kif_ht = (x * 1.0 (ms)) /q10 |
|
} |
|
|
|
|
|
|