You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
109 lines
2.2 KiB
109 lines
2.2 KiB
TITLE CaPCalyx.mod The presynaptic calcium current at the MNTB calyx of Held |
|
|
|
COMMENT |
|
|
|
NEURON implementation of Calcium current from Borst and Sakmann, 1998. |
|
Equations are basic HH; parameters are taken from Figure 8 legend in that paper. |
|
|
|
Original implementation by Paul B. Manis, October 2007 |
|
|
|
Contact: pmanis@med.unc.edu |
|
|
|
Modified 2/2014: Use Derivative block format. |
|
|
|
ENDCOMMENT |
|
|
|
UNITS { |
|
(mA) = (milliamp) |
|
(mV) = (millivolt) |
|
(nA) = (nanoamp) |
|
} |
|
|
|
NEURON { |
|
THREADSAFE |
|
SUFFIX CaPCalyx |
|
USEION ca READ eca WRITE ica |
|
RANGE gbar, gcap, ica |
|
GLOBAL minf, taum, alpha, beta |
|
} |
|
|
|
INDEPENDENT {t FROM 0 TO 1 WITH 1 (ms)} |
|
|
|
PARAMETER { |
|
v (mV) |
|
: celsius = 22 (degC) : model is defined on measurements made at 23-24 deg in Germany |
|
celsius (degC) |
|
dt (ms) |
|
: eca = 43.9 (mV) |
|
eca (mV) |
|
gbar = 0.01 (mho/cm2) <0,1e9> : target is 48.9 nS total |
|
alpha (1/ms) |
|
beta (1/ms) |
|
} |
|
|
|
STATE { |
|
m |
|
} |
|
|
|
ASSIGNED { |
|
ica (mA/cm2) |
|
gcap (mho/cm2) |
|
minf (1) |
|
taum (ms) |
|
|
|
} |
|
|
|
LOCAL mexp |
|
|
|
BREAKPOINT { |
|
SOLVE states METHOD cnexp |
|
|
|
gcap = gbar*m*m |
|
ica = gcap*(v - eca) |
|
} |
|
|
|
UNITSOFF |
|
|
|
INITIAL { |
|
trates(v) |
|
m = minf |
|
} |
|
|
|
DERIVATIVE states { : Computes state variables m |
|
rates(v) : at the current v and dt. |
|
m' = (minf - m)/taum |
|
:m = m + mexp*(minf-m) |
|
:VERBATIM |
|
: return 0; |
|
:ENDVERBATIM |
|
} |
|
|
|
LOCAL q10 |
|
|
|
PROCEDURE rates(v) { :Computes rate and other constants at current v. |
|
:Call once from HOC to initialize inf at resting v. |
|
|
|
q10 = 3^((celsius - 24)/10) : if you don't like room temp, it can be changed! |
|
|
|
minf = (1 / (1 + exp(-(v + 23.2) / 9.1))) |
|
|
|
alpha = 1.78*exp(v/23.3) |
|
beta = 0.140*exp(-v/15.0) |
|
taum = 1/(alpha + beta) |
|
} |
|
|
|
PROCEDURE trates(v) { :Computes rate and other constants at current v. |
|
:Call once from HOC to initialize inf at resting v. |
|
LOCAL minc |
|
TABLE minf, mexp |
|
DEPEND dt, celsius FROM -150 TO 150 WITH 300 |
|
|
|
rates(v) : not consistently executed from here if usetable_hh == 1 |
|
: so don't expect the tau values to be tracking along with |
|
: the inf values in hoc |
|
|
|
minc = -dt * q10 |
|
mexp = 1 - exp(minc/taum) |
|
} |
|
|
|
UNITSON
|
|
|