NEURON { SUFFIX nakpump USEION na READ nai WRITE ina USEION k READ ko WRITE ik USEION ATP READ ATPi WRITE iATP CHARGE 1 NONSPECIFIC_CURRENT i RANGE imax, ik, ina, Kk, accna, acck } UNITS { (mV) = (millivolt) (mA) = (milliamp) (molar) = (1/liter) (mM) = (millimolar) } ASSIGNED { ina (mA/cm2) ik (mA/cm2) accna (mA/cm2) acck (mA/cm2) iATP (mA/cm2) i (mA/cm2) ATPi (mM) nai (mM) ko (mM) v (mV) ipump (mA/cm2) } INITIAL { accna = 0 acck = 0 } PARAMETER { : pump imax = 0.1 (mA/cm2) Kna = 22.0 (mM) Kk = 3.5 (mM) NaDiv = 3.0 (mM) KDiv = 1.0 (mM) ATPss = 2.59 (mM) kATP = 0.58 (mM) } BREAKPOINT { :ipump = imax / (pow(1 + 2. / ko, 2) * pow(1 + 7.7 / nai, 3)) ipump = imax * ((kATP + ATPss)/ATPss)*(ATPi/(kATP + ATPi)) / ( (1.0 + exp((Kna - nai)/NaDiv)) * (1.0 + exp( (Kk - ko)/KDiv) ) ) iATP = fabs(ipump) i = -iATP ina = (3 * ipump) ik = (-2 * ipump) accna = accna + ina acck = acck + ik }