// genesis //float EK=-0.085 float Gbar = 1.0 float offset = 0.01 int tab_ydivs = {tab_xdivs} float tab_ymin = {CCaI} float tab_ymax = {Ca_tab_max} float Temp = 22 float temperature = 5 /* non-inactivating BK-type Ca-dependent K current ** Moczydlowski and Latorre 1983, J Gen Physiol 82, 511-542. ** Uses original parameters. ** Includes Paul Smolen's bug fix. */ /* scaled for units: V, sec, mM */ function make_Moczyd_KC int i, j float ginf, itau, c, dc, cmin, cmax float x, dx, y, dy float a, b float ZFbyRT = 23210/(273.15 + (Temp)) if (!({exists Moczyd_KC})) create tab2Dchannel Moczyd_KC setfield Moczyd_KC Ek {EK} Gbar {Gbar} \ Xindex {VOLT_C1_INDEX} Xpower 1 Ypower 0 Zpower 0 call Moczyd_KC TABCREATE X {tab_xdivs} {tab_xmin} \ {tab_xmax} {tab_ydivs} {tab_ymin} {tab_ymax} end echo diag Moczyd_KC 1 dx = ({tab_xmax} - {tab_xmin})/{tab_xdivs} dy = (tab_ymax - tab_ymin)/tab_ydivs x = {tab_xmin} - {offset} for (i = 0; i <= ({tab_xdivs}); i = i + 1) y = tab_ymin for (j = 0; j <= (tab_ydivs); j = j + 1) /* \ Must check that the following are scaled correctly!! \ */ a = 2.5e3/(1 + ((1.5e-3*{exp {-0.085e3*x}})/y)) b = 1.5e3/(1 + (y/(150e-6*{exp {-0.077e3*x}}))) itau = a + b ginf = a/itau setfield Moczyd_KC X_A->table[{i}][{j}] {temperature * a} setfield Moczyd_KC X_B->table[{i}][{j}] {temperature * itau} y = y + dy end x = x + dx end setfield Moczyd_KC X_A->calc_mode {LIN_INTERP} setfield Moczyd_KC X_B->calc_mode {LIN_INTERP} echo diag Moczyd_KC 3 create neutral comp setfield comp x -0.10 setfield comp y 0.10 addmsg comp Moczyd_KC VOLTAGE x addmsg comp Moczyd_KC CONCEN y echo diag Moczyd_KC 4 end