TITLE Endoplasmic Reticulum UNITS { (molar) = (1/liter) (mM) = (millimolar) (nA) = (nanoamp) (mA) = (milliampere) (um) = (micron) FARADAY = (faraday) (coulomb) PI = (pi) (1) } NEURON { RANGE tau, beta, gamma, scale, t1, ical, ip3min, spkcnt, ip3ip USEION cal READ cali WRITE ical POINTER ip3im, ip3id } STATE { cali (mM) caer (mM) Jip3h (1) Jip3m (1) Jip3z (mM/ms) ERrelz (mM/ms) ERfilz (mM/ms) ERlekz (mM/ms) ier (mA/cm2) } PARAMETER { fer = 0.0025 : ca buffering coefficient in ER from John Rinzel 1997 kerm = 0.2e-3 (mM) : from Huang 2004 kerrel = 3e-12 (/s): from Huang, to be adjusted kerfila = 0.75e-12 (mM/s) : from John Rinzel 1997 kerfilb = 0.2e-3 (mM) : from John Rinzel 1997 kerlek = 6.15e-14 (/s): from Huang, to be adjusted rhover = 0.15 : ratio of volume to cytoplasmic volume : total cell vol = vol_cytoplasm + vol_er : where vol_er = rhover * vol_cytoplasm : thus vol_er = v_cell * rhover / (1 + rhover) caer0 = 0.20 (mM) Jip3h0 =0.2 Jip3m0 =0.2 Vip3 = 1e-9:1e-5 (1/cm2/s):1e-8(1/cm2/ms): dact = 8.2e-5 (mM):8.2e-2(uM) dinh = 1.05e-3 (mM):1.05(uM) dip3 = 0.13e-3 (mM):0.13(uM) ddis = 0.94e-3 (mM):0.94(uM) aip3 = 0.42e6 (1/mM/s):0.42(1/uM/ms) bip3 = 4.1 (1/s):4.1e-3(1/ms) ainh = 2e-4 (mM/s):2e-4(uM/ms) } ASSIGNED { diam (um) ical (mA/cm2) ip3ip (mM) ip3id (mM) ip3im (mM) } INITIAL { : custom initialization may be needed caer = caer0 : initial calcium concentration in ER Jip3h = Jip3h0 Jip3m = Jip3m0 } BREAKPOINT { SOLVE states METHOD derivimplicit :cnexp euler derivimplicit ip3ip=ip3im+ip3id ical = -2*FARADAY*(2e8*Jip3(cali,caer, ip3ip, Vip3, dact, dinh, dip3, ddis) +errel(cali,caer,kerrel,kerm)-erfil(cali,caer,kerfila,kerfilb)+erlek(cali,caer,kerlek)) * diam * (1e-7) / 4 :ix = -ical ier=ical Jip3z=Jip3(cali,caer, ip3ip, Vip3, dact, dinh, dip3, ddis) ERrelz=errel(cali,caer,kerrel,kerm) ERfilz=erfil(cali,caer,kerfila,kerfilb) ERlekz=erlek(cali,caer,kerlek) } DERIVATIVE states { caer' = -(0.001)*( Jip3(cali,caer, ip3ip, Vip3, dact, dinh, dip3, ddis) +errel(cali,caer,kerrel,kerm)-erfil(cali,caer,kerfila,kerfilb)+erlek(cali,caer,kerlek))/(rhover/fer) Jip3h'=(Jip3hinf(ip3ip, cali, dinh, dip3, ddis)-Jip3h)/Jip3th (ip3ip , ainh , cali , dinh , dip3 , ddis ) Jip3m'=(Jip3minf(ip3ip, cali, dip3, dact)-Jip3m)/Jip3tm (cali , bip3, aip3 ) } FUNCTION errel(cali (mM),caer (mM),kerrel (/s),kerm (mM)) (mM/s) { : from Huang errel = kerrel*pow((cali/(cali+kerm)),1)*(caer-cali) } FUNCTION erfil(cali (mM),caer (mM),kerfila (mM/s),kerfilb (mM)) (mM/s) { : from John Rinzel 1997 erfil = kerfila * pow(cali/(1 (mM)),2) / ( pow(cali/(1 (mM)),2) + pow(kerfilb/(1 (mM)),2) ) } FUNCTION erlek(cali (mM),caer(mM),kerlek (/s)) (mM/s) { : from Huang erlek = kerlek*(caer-cali) } FUNCTION Jip3(cali (mM),caer (mM), ip3ip (mM), Vip3 (1/cm2/ms), dact (mM), dinh (mM), dip3 (mM), ddis (mM)) (mM/s) { :Jip3 = Vip3*pow(Jip3m(ip3ip, cali, dip3, dact),3)*pow(Jip3hinf(ip3ip, cali, dinh, dip3, ddis),3)*(caer-cali) Jip3 = Vip3*pow(Jip3m,3)*pow(Jip3h,3)*(caer-cali) } FUNCTION Jip3minf (ip3ip (mM), cali (mM), dip3 (mM), dact (mM)){ Jip3minf = (ip3ip/(ip3ip+dip3)) * (cali/(cali+dact)) } FUNCTION Jip3tm (cali (mM), bip3 (1/ms), aip3 (1/mM/ms)){ Jip3tm = 1/(bip3+aip3*cali) } FUNCTION Jip3hinf (ip3ip (mM), cali (mM), dinh (mM), dip3 (mM), ddis (mM)){ Jip3hinf = Jip3Q(ip3ip, dinh, dip3, ddis) / (Jip3Q(ip3ip, dinh, dip3, ddis) + cali) } FUNCTION Jip3th (ip3ip (mM), ainh (mM/ms), cali (mM), dinh (mM), dip3 (mM), ddis (mM)){ Jip3th = 1/(ainh*Jip3Q(ip3ip, dinh, dip3, ddis)+cali) } FUNCTION Jip3Q (ip3ip (mM), dinh (mM), dip3 (mM), ddis (mM)){ Jip3Q = dinh*((ip3ip+dip3)/(ip3ip+ddis)) }