TITLE HH sodium channel
: Hodgkin - Huxley squid sodium channel
NEURON {
SUFFIX HHna
USEION na READ ena WRITE ina
RANGE gnabar, ina
GLOBAL minf, hinf, mtau, htau
}
UNITS {
(mA) = (milliamp)
(mV) = (millivolt)
}
PARAMETER {
gnabar=0.0026 (mho/cm2) <0,1e9>
}
STATE {
m h
}
ASSIGNED {
v (mV)
celsius (degC) : 6.3
ina (mA/cm2)
ena (mV)
minf hinf
mtau (ms)
htau (ms)
}
INITIAL {
rates(v)
m = minf
h = hinf
}
BREAKPOINT {
SOLVE states METHOD cnexp
ina = gnabar*m*m*m*h*(v - ena)
}
DERIVATIVE states {
rates(v)
m' = (minf - m)/mtau
h' = (hinf - h)/htau
}
FUNCTION alp(v(mV),i) (/ms) { LOCAL a,b,c,q10 :rest = -70 order m,h
v = -v - 65(mV) :convert to hh convention
q10 = 3 :3^((celsius - 6.3(degC))/10(degC))
if (i==0) {
alp = q10*.1(/ms)*expM1(v *1(/mV) + 25, 10)
}else if (i==1){
alp = q10*.07(/ms)*exp(v/20(mV))
}
}
FUNCTION bet(v(mV),i)(/ms) { LOCAL a,b,c,q10 :rest = -70 order m,h
v = -v - 65
q10 = 3^((celsius - 6.3(degC))/10(degC))
if (i==0) {
bet = q10* 4(/ms)*exp(v/18(mV))
}else if (i==1){
bet = q10*1(/ms)/(exp(.1(/mV)*v + 3) + 1)
}
}
FUNCTION expM1(x,y) {
if (fabs(x/y) < 1e-6) {
expM1 = y*(1 - x/y/2)
}else{
expM1 = x/(exp(x/y) - 1)
}
}
PROCEDURE rates(v(mV)) {LOCAL a, b
TABLE minf, hinf, mtau, htau DEPEND celsius FROM -100 TO 100 WITH 200
a = alp(v,0) b=bet(v,0)
mtau = 1/(a + b)
minf = a/(a + b)
a = alp(v,1)/3.5 b=bet(v,1)/3.5
htau = 1/(a + b)
hinf = a/(a + b)
}