: \$Id: CA1ika.mod,v 1.2 2010/12/01 05:06:07 samn Exp \$ TITLE Ika CA1 UNITS { (mA) = (milliamp) (mV) = (millivolt) } NEURON { SUFFIX kacurrent NONSPECIFIC_CURRENT ika, ikad RANGE g, gd, e, ninf, ntau, ndinf, ndtau, linf, ltau } PARAMETER { celsius (degC) g= 0.048 (mho/cm2) gd= 0 (mho/cm2) e= -90 (mV) } STATE { n nd : distal l } ASSIGNED { v (mV) ika (mA/cm2) ikad (mA/cm2) ninf ntau (ms) ndinf ndtau (ms) linf ltau (ms) } PROCEDURE iassign () { ika=g*n*l*(v-e) ikad=gd*nd*l*(v-e) } BREAKPOINT { SOLVE states METHOD cnexp iassign() } DERIVATIVE states { rates(v) n'= (ninf- n)/ ntau l'= (linf- l)/ ltau nd'= (ndinf-nd)/ndtau } INITIAL { rates(v) n = ninf l = linf iassign() } PROCEDURE rates(v (mV)) { LOCAL a, b UNITSOFF a = exp(-0.038*(1.5+1/(1+exp(v+40)/5))*(v-11)) b = exp(-0.038*(0.825+1/(1+exp(v+40)/5))*(v-11)) ntau=4*b/(1+a) if (ntau<0.1) {ntau=0.1} ninf=1/(1+a) a=exp(-0.038*(1.8+1/(1+exp(v+40)/5))*(v+1)) b=exp(-0.038*(0.7+1/(1+exp(v+40)/5))*(v+1)) ndtau=2*b/(1+a) if (ndtau<0.1) {ndtau=0.1} ndinf=1/(1+a) a = exp(0.11*(v+56)) ltau=0.26*(v+50) if (ltau<2) {ltau=2} linf=1/(1+a) UNITSON }