//genesis
/*************************** MS Model, Version 9.1 *********************
**************************** BK.g *********************
Rebekah Evans updated 3/22/12
******************************************************************************
*****************************************************************************/
function make_BK_channel
float EK=-0.09
float K1=0.003
float K4=0.009
//tuned to fit Berkefeld et al., 2006 fig 3C for 10uM Ca, with positive shift for 1uM Ca and negative shift for 100uM Ca.
int xdivs = 299
int ydivs = 2000 //increments of 5 nM from 0 to 100 uM calcium
float xmin, xmax, ymin, ymax
xmin = -0.1; xmax = 0.05; ymin = 0.0; ymax = 0.1 // x = Vm, y = [Ca],mM
int i, j
float x, dx, y, dy, a, b
float Temp = 35
float ZFbyRT = 23210/(273.15 + Temp)
if (!({exists BK_channel}))
create tab2Dchannel BK_channel
setfield BK_channel Ek {EK} Gbar 0.0 \
Xindex {VOLT_C1_INDEX} Xpower 1 Ypower 0 Zpower 0
call BK_channel TABCREATE X {xdivs} {xmin} {xmax} \
{ydivs} {ymin} {ymax}
end
dx = (xmax - xmin)/xdivs
dy = (ymax - ymin)/ydivs
x = xmin
for (i = 0; i <= xdivs; i = i + 1)
y = ymin
for (j = 0; j <= ydivs; j = j + 1)
a = 480*y/(y + {K1}*{exp {-0.84*ZFbyRT*x}})
b = 280/(1 + y/({K4}*{exp {-1.00*ZFbyRT*x}}))
setfield BK_channel X_A->table[{i}][{j}] {a}
setfield BK_channel X_B->table[{i}][{j}] {a + b}
y = y + dy
end
x = x + dx
end
setfield BK_channel X_A->calc_mode {LIN_INTERP}
setfield BK_channel X_B->calc_mode {LIN_INTERP}
//the tau curve that comes out of this is comparable (but not an exact fit) to Berkefeld 2006 figure 4A 10uM, if a qfact of 3 is applied to their figure.
//recordings in Berkefeld were at 22-24 degrees (supporting online material)
end
|