First off, thank you in advance for reading my question.
I have a .mod file from modelDB specifying a high threshold potassium channel. I am not sure the language, but I think it is NMODL because it is a .mod file. See code below.
Code: Select all
: High threshold potassium chanel from
: Contribution of the Kv3.1 potassium channel to high-frequency firing in mouse auditory neurones
: Lu-Yang Wang, Li Gan, Ian D. Forsythe and Leonard K. Kaczmarek
: J. Physiol (1998), 501.9, pp. 183-194
NEURON {
SUFFIX HT
USEION k READ ek WRITE ik
RANGE gbar, g, ik
GLOBAL ninf, ntau, pinf, ptau, an, bn, ap, bp
}
: area in paper is 1000 (um2) so divide our density parameters by 10
UNITS {
(mV) = (millivolt)
(S) = (mho)
(mA) = (milliamp)
}
PARAMETER {
gbar = .015 (S/cm2) : .15 (uS)
gamma = .1
kan = .2719 (/ms)
ean = .04 (/mV)
kbn = .1974 (/ms)
ebn = 0 (/mV)
kap = .00713 (/ms)
eap = -.1942 (/mV)
kbp = .0935 (/ms)
ebp = .0058 (/mV)
}
ASSIGNED {
v (mV)
ek (mV)
ik (mA/cm2)
ninf
ntau (ms)
pinf
ptau (ms)
an (/ms)
bn (/ms)
ap (/ms)
bp (/ms)
}
STATE {
n p
}
INITIAL {
rates(v)
n = ninf
p = pinf
}
BREAKPOINT {
SOLVE state METHOD cnexp
ik = gbar*n^3*(1 - gamma + gamma*p)*(v - ek)
}
DERIVATIVE state {
rates(v)
n' = (ninf - n)/ntau
p' = (pinf - p)/ptau
}
PROCEDURE rates(v(mV)) {
an = kan*exp(ean*v)
bn = kbn*exp(ebn*v)
ap = kap*exp(eap*v)
bp = kbp*exp(ebp*v)
ninf = an/(an + bn)
ntau = 1/(an + bn)
pinf = ap/(ap + bp)
ptau = 1/(ap + bp)
}
Currently, the text to std out from the channel builder is as follows:
Code: Select all
kht_CB_1 Density Mechanism
NonSpecific ohmic ion current
i_kht_CB_1 (mA/cm2) = g_kht_CB_1 * (v - e_kht_CB_1)
g = gmax * n^3 * 0
Default gmax = 1 (S/cm2) e = -77 (mV)
n' = an*(1 - n) - bn*n (KSTrans[0])
an = 0.2719*exp(0.04*(v - 0))) (Vector[7])
bn = 0.1974 (Vector[8])
p' = ap*(1 - p) - bp*p (KSTrans[1])
ap = 0.00713*exp(-0.1943*(v - 0))) (Vector[11])
bp = 0.0935*exp(0.0058*(v - 0))) (Vector[12])
Code: Select all
nrniv(16193,0x106879dc0) malloc: *** error for object 0x7fc0eca58080: pointer being realloc'd was not allocated
nrniv(16193,0x106879dc0) malloc: *** set a breakpoint in malloc_error_break to debug
/Users/pedersonam/ModelMOC/Alia/Today/AMP_model/x86_64/special: line 13: 16193 Abort trap: 6 "${NRNIV}" -dll "/Users/pedersonam/ModelMOC/Alia/Today/AMP_model/x86_64/.libs/libnrnmech.so" "$@"
The other issues I see are:
1) The equation for g has a zero term in it
2) That zero term really should be replaced with a (1 - gamma + gamma*p). I am not sure how to modify the equation for g in the GUI, and I don't see any place to add the gamma.
3)The .mod file provides a g_bar value, which I understand to be different from g_max. Thus, the setting for g_max is currently arbitrary. I anticipate this is also a problem. I have set the channel density value in the CellBuilder for my neuron to the g_bar specified in the .mod file.
Any help with solving any of the above problems would be greatly appreciated!
Thank you,
Alia