TITLE I-h channel from Magee 1998 for distal dendrites UNITS { (mA) = (milliamp) (mV) = (millivolt) (molar) = (1/liter) (mM) = (millimolar) FARADAY = (faraday) (coulomb) R = (k-mole) (joule/degC) } PARAMETER { celsius (degC) vhalfl=-81 (mV) kl=-8 vhalft=-75 (mV) a0t=0.011 (/ms) zetat=2.2 (1) gmt=.4 (1) q10=4.5 qtl=1 PnaPk = 0.36 (1) : relative permeability Pna/Pk P = 1e-7 Kapp = 25.7 (mM) } NEURON { SUFFIX hd USEION k READ ki, ko WRITE ik USEION na READ nai, nao WRITE ina RANGE P, vhalfl, ik, ina, l, acck, accna } STATE { l } ASSIGNED { ik (mA/cm2) ina (mA/cm2) acck (mA/cm2) accna (mA/cm2) v (mV) nai (mM) nao (mM) ki (mM) ko (mM) linf (1) taul (1) ghd (1) } INITIAL { rate(v) l=linf acck = 0 accna = 0 } BREAKPOINT { SOLVE states METHOD cnexp ina = P*PnaPk*l*ghk(v, nai, nao) ik = P*l*ghk(v, ki, ko) accna = accna + ina acck = acck + ik } FUNCTION alpt(v(mV)) { alpt = exp(0.0378*zetat*(v-vhalft)) } FUNCTION bett(v(mV)) { bett = exp(0.0378*zetat*gmt*(v-vhalft)) } DERIVATIVE states { : exact when v held constant; integrates over dt step rate(v) l' = (linf - l)/taul } PROCEDURE rate(v (mV)) { :callable from hoc LOCAL a,qt qt=q10^((celsius-33)/10) a = alpt(v) linf = 1/(1 + exp(-(v-vhalfl)/kl)) : linf = 1/(1+ alpl(v)) taul = bett(v)/(qtl*qt*a0t*(1+a)) } FUNCTION efun(z) { if (fabs(z) < 1e-4) { efun = 1 - z/2 }else{ efun = z/(exp(z) - 1) } } FUNCTION ghk(v(mV), si(mM), so(mM)) (.001 coul/cm3) { LOCAL z, esi, eso z = (1e-3)*FARADAY*v/(R*(celsius+273.15)) eso = so*efun(z) esi = si*efun(-z) ghk = (.001)*FARADAY*(esi - eso) }