Code: Select all
: Dynamics that track inside calcium concentration
: modified from Destexhe et al. 1994
NEURON {
SUFFIX CaDynamics_E2
USEION ca READ ica WRITE cai
RANGE decay, gamma, minCai, depth
}
UNITS {
(mV) = (millivolt)
(mA) = (milliamp)
FARADAY = (faraday) (coulombs)
(molar) = (1/liter)
(mM) = (millimolar)
(um) = (micron)
}
PARAMETER {
gamma = 0.05 : percent of free calcium (not buffered)
decay = 80 (ms) : rate of removal of calcium
depth = 0.1 (um) : depth of shell
minCai = 1e-4 (mM)
}
ASSIGNED {ica (mA/cm2)}
STATE {
cai (mM)
}
BREAKPOINT { SOLVE states METHOD cnexp }
DERIVATIVE states {
cai' = -(10000)*(ica*gamma/(2*FARADAY*depth)) - (cai - minCai)/decay
}
I write this:
objref caivec
caivec = new Vector()
caivec.record(cell.soma.cai(0.5))
This doesn't seem to work - NEURON throws an error saying that cai is not a range variable. Oddly if I track ica instead, cai does exist when I check in the command line.
I presume I'm addressing this wrong? I've tried addressing it as cai_CaDynamics_E2 but that doesn't work either.